Wiki source code of Statusverarbeitung
Hide last authors
author | version | line-number | content |
---|---|---|---|
1.1 | 1 | {{content/}} | |
2 | |||
9.1 | 3 | == Interface: IPluginProcessing == | |
5.1 | 4 | ||
9.1 | 5 | === Uses === | |
1.1 | 6 | ||
9.1 | 7 | {{figure image="plugin_processing_en.png" width="400" clear="h3"}} | |
8 | Placement of the status processing plugin within the process chain of {{formcycle case="dat"/}} | ||
1.1 | 9 | {{/figure}} | |
10 | |||
9.1 | 11 | * Connection of own web service interfaces that are to further process transmitted form values. | |
12 | * Connection of external systems which are to further process form values | ||
1.1 | 13 | ||
9.1 | 14 | === Method signatures === | |
1.1 | 15 | ||
9.1 | 16 | The plugin interface //IPluginProcessing// references all methods provided by the [[Basic Interface IFCPlugin>>doc:Formcycle.PluginDevelopment.Types.IFCPlugin]]. | |
17 | and additionally the following plugin-specific method signatures: | ||
1.1 | 18 | ||
19 | {{panel title="{{code language='java'~}~}IPluginProcessingRetVal execute(IPluginProcessingParams params) throws FCPluginException{{/code~}~}" triggerable="true" fullwidth="true"}} | ||
20 | |||
9.1 | 21 | **Transfer values. | |
1.1 | 22 | ||
23 | {{warning}} | ||
9.1 | 24 | Placeholder substitution is applied to all parameters before they are passed to the plugin. For example, //[%tf1%]// within the value of a parameter is replaced by the content of the form field with the name //tf1//. At present, it is not possible to set whether the placeholder replacement should be carried out or not. | |
1.1 | 25 | {{/warning}} | |
26 | |||
9.1 | 27 | The //IPluginProcessingParams// type provides the following properties: | |
28 | * Access to the workflow processing context (//IWorkflowProcessingContext//) and thus to central object such as: | ||
29 | ** current process | ||
30 | ** form data | ||
31 | ** session parameters | ||
32 | ** parameters from upstream action processing of the same status | ||
33 | ** current user context in order to be able to perform database operations, for example | ||
34 | * Access to the action object in which the processing is carried out and thus information about the classification of the current action within the status processing. | ||
35 | * Access to the parameters configured on the status processing plug-in. | ||
1.1 | 36 | ||
9.1 | 37 | **Return values | |
38 | The return value must be of type //IPluginProcessingRetVal//. | ||
39 | This makes it possible to return simple status values (//true// or //false//), but also several values in the form of strings or binary data of a file. | ||
1.1 | 40 | ||
9.1 | 41 | The following table names the possible return interfaces and their reference implementation: | |
1.1 | 42 | ||
43 | {{table dataTypeAlpha="0-1"}} | ||
9.1 | 44 | |= Interface|= Reference implementation|= Description | |
45 | |IProcessingResultSuccess|ProcessingResultSuccess|Return a status (//true// or //false//) | ||
46 | |IProcessingResultIntValue|ProcessingResultIntValue|Returns a status and an integer value. | ||
47 | |IProcessingResultStringValue|ProcessingResultStringValue|Returns a status and a string value. | ||
48 | |IProcessingResultMultiValue|ProcessingResultMultiValue|Returns a status and a map with string values. | ||
49 | |IProcessingResultFilePath|ProcessingResultFilePath|Returns a status and a file path. | ||
50 | |IProcessingResultFileData|ProcessingResultFileData|returns a status and the binary data of a file. | ||
1.1 | 51 | {{/table}} | |
52 | {{html}}<br>{{/html}} | ||
9.1 | 53 | If the plugin is processed incorrectly, an //FCPluginException// is thrown. This can be reacted to in the status processing of {{formcycle case="dat"/}}, by configuring an action to be executed in the event of an error. | |
1.1 | 54 | {{/panel}} |