Interface ProcessPluginDefinition
ServiceLoader
.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionReturnMap.of("testcom_process", List.of("foo.xml"));
for a foo.xml file located in the root folder of the process plugin jar needed for a process called testcom_process.getName()
ReturnList.of("foo.bpmn");
for a foo.bpmn file located in the root folder of the process plugin jar.default LocalDate
Placeholder#{date}
in FHIR and BPMN files will be replaced with the returned value.default String
Placeholder#{version}
in FHIR and BPMN files will be replaced with the returned value.List ofConfiguration
annotated spring configuration classes.
-
Field Details
-
RESOURCE_VERSION_PATTERN_STRING
- See Also:
-
PLUGIN_VERSION_PATTERN_STRING
- See Also:
-
PLUGIN_VERSION_PATTERN
-
-
Method Details
-
getName
String getName()- Returns:
- process plugin name, same as jar name excluding suffix
-<version>.jar
-
getVersion
String getVersion()- Returns:
- version of the process plugin, must match "(?<pluginVersion>(?<resourceVersion>\\d+\\.\\d+)\\.\\d+\\.\\d+)"
-
getResourceVersion
Placeholder#{version}
in FHIR and BPMN files will be replaced with the returned value.- Returns:
- version of FHIR and BPMN resources, must match "(?<resourceVersion>\\d+\\.\\d+)"
-
getReleaseDate
LocalDate getReleaseDate()- Returns:
- the release date of the process plugin
-
getResourceReleaseDate
Placeholder#{date}
in FHIR and BPMN files will be replaced with the returned value.- Returns:
- the release date of FHIR resources and BPMN files
-
getProcessModels
ReturnList.of("foo.bpmn");
for a foo.bpmn file located in the root folder of the process plugin jar. The returned files will be read viaClassLoader.getResourceAsStream(String)
.Occurrences of
#{version}
will be replaced with the value ofgetResourceVersion()
Occurrences of#{date}
will be replaced with the value ofgetResourceReleaseDate()
Occurrences of#{organization}
will be replaced with the local organization DSF identifier value, or"null"
if no local organization can be found in the allow list
Other placeholders of the form#{property.name}
will be replaced with values from equivalent environment variable, e.g.PROPERTY_NAME
- Returns:
- *.bpmn files inside the process plugin jar, paths relative to root folder of process plugin
- See Also:
-
getFhirResourcesByProcessId
ReturnMap.of("testcom_process", List.of("foo.xml"));
for a foo.xml file located in the root folder of the process plugin jar needed for a process called testcom_process. The returned files will be read viaClassLoader.getResourceAsStream(String)
.Supported metadata resource types are ActivityDefinition, CodeSystem, Library, Measure, NamingSystem, Questionnaire, StructureDefinition, Task and ValueSet.
Occurrences of
#{version}
will be replaced with the value ofgetResourceVersion()
Occurrences of#{date}
will be replaced with the value ofgetResourceReleaseDate()
Occurrences of#{organization}
will be replaced with the local organization DSF identifier value, or"null"
if no local organization can be found in the allow list
Other placeholders of the form#{property.name}
will be replaced with values from equivalent environment variable, e.g.PROPERTY_NAME
- Returns:
- *.xml or *.json files inside the process plugin jar per process, paths relative to root folder of process plugin
- See Also:
-
getSpringConfigurations
List ofConfiguration
annotated spring configuration classes.All services defined in
ProcessPluginApi
andProcessPluginApi
itself can beAutowired
inConfiguration
classes.All implementations used for BPMN service tasks, message send tasks and throw events as well as task- and user task listeners need to be declared as spring
Bean
s withScope
"prototype"
. Other classes not directly used within BPMN activities should be declared with the default singleton scope.Configuration classes that defined private fields annotated with
Value
defining property placeholders, can be configured via environment variables. A fieldprivate boolean specialFunction;
annotated with@Value("${org.test.process.special:false}")
can be configured with the environment variableORG_TEST_PROCESS_SPECIAL
. To take advantage of the "dsf-tools-documentation-generator" maven plugin to generate a markdown file with configuration options for the plugin also add theProcessDocumentation
annotation.- Returns:
Configuration
annotated classes, definingBean
annotated factory methods- See Also:
-