public final class CustomFeatureRegistry
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
OPEN_AUTOMATION_COMMUNITY_EXPERIMENTAL_ID |
static java.lang.String |
OPEN_AUTOMATION_COMMUNITY_EXPERIMENTAL_LABEL |
static java.lang.String |
OPEN_AUTOMATION_COMMUNITY_VALIDATED_ID |
static java.lang.String |
OPEN_AUTOMATION_COMMUNITY_VALIDATED_LABEL |
Modifier and Type | Method and Description |
---|---|
static CustomFeatureRegistry |
getInstance() |
void |
registerFieldValidator(java.lang.String name,
FieldValidatorIf validator)
Add a new validator into the system.
|
void |
registerForms(java.lang.String formId,
FormBackendResolverIf form)
This is where the framework registers the forms
|
void |
registerLovProviders(java.lang.String name,
LOVProviderIf lovProvider)
Add a new LOV provider into the system.
|
PodDefinition |
registerPodDefinition(java.lang.String featureId)
Method to register POD definition to pod definitions map
|
void |
registerReports(ReportRegistryEntry entry)
This is where the reports are registered by the frame work.
|
void |
registerTabularField(java.lang.String name,
java.lang.Class reportImplementation,
java.lang.String selectionColumnId,
java.lang.String displayColumnId)
Add a new tabular data source into the system.
|
void |
registerTaskCategory(java.lang.String id,
java.lang.String parentId,
java.lang.String label,
java.util.Properties properties)
Use this method to add new task categories into CUIC.
|
void |
registerWorkflowInputFieldType(java.lang.String inputType,
java.lang.String label,
int fieldType,
java.lang.String lovProvider)
Add a new workflow input field type into the system.
|
void |
registerWorkflowInputFieldType(java.lang.String inputType,
java.lang.String label,
int fieldType,
java.lang.String lovProvider,
boolean isMultiSelect,
UserInputValidatorIf val)
Add a new workflow input field type into the system.
|
void |
registerWorkflowTask(WFTaskDefinition def,
java.util.Properties properties)
Use this method to add a new workflow task into CUIC.
|
public static final java.lang.String OPEN_AUTOMATION_COMMUNITY_EXPERIMENTAL_ID
public static final java.lang.String OPEN_AUTOMATION_COMMUNITY_EXPERIMENTAL_LABEL
public static final java.lang.String OPEN_AUTOMATION_COMMUNITY_VALIDATED_ID
public static final java.lang.String OPEN_AUTOMATION_COMMUNITY_VALIDATED_LABEL
public static CustomFeatureRegistry getInstance()
public void registerReports(ReportRegistryEntry entry) throws java.lang.Exception
entry
- - the report registry entryjava.lang.Exception
public void registerForms(java.lang.String formId, FormBackendResolverIf form) throws java.lang.Exception
formId
- - the formId of the formform
- - the formjava.lang.Exception
public void registerWorkflowTask(WFTaskDefinition def, java.util.Properties properties) throws java.lang.Exception
def
- The task definition containing all the necessary parameters for a workflow task.properties
- The properties should be packaged in your module, you can access it from module.getProperties().java.lang.Exception
- Thrown when the config class of the definition's table name does not start with the feature ID.
E.g. Your featureID is "abc" but you used @PersistenceCapable(table = "some_table"), an exception is thrown. However
if you did table = "abc_some_table", then it's acceptable.
Thrown if handler type is not unique. If you try to register two different definitions but they share the same handler
then it will throw an exception.public void registerTaskCategory(java.lang.String id, java.lang.String parentId, java.lang.String label, java.util.Properties properties) throws java.lang.Exception
id
- A unique String for the new category you are creating.parentId
- If null, this new category will be placed under Open Automation Community Tasks -> Experimental
or Validated, depending on the state of your module. If parentId is not null, it should provide the same string
id used to register a previous category.label
- The string value shown in UI for this category.properties
- The properties should be packaged in your module, you can access it from module.getProperties().java.lang.Exception
- Thrown when attempting to use an ID already in use. Or when properties is missing or invalid.public void registerTabularField(java.lang.String name, java.lang.Class reportImplementation, java.lang.String selectionColumnId, java.lang.String displayColumnId) throws java.lang.Exception
name
- A unique identifier for the LOV provider.reportImplementation
- The class implementing TabularReportGeneratorIf.selectionColumnId
- The column index designated for selection purposes, usually "0" is sufficient.displayColumnId
- The column index used to display values for TabularSelectAreas, usually "0" is sufficient.java.lang.Exception
- An exception is thrown if a tabular field already exists with the same name.public void registerWorkflowInputFieldType(java.lang.String inputType, java.lang.String label, int fieldType, java.lang.String lovProvider) throws java.lang.Exception
inputType
- - the input typelabel
- - the label of the new filed typefieldType
- - the type of the fieldlovProvider
- - the lov providers namejava.lang.Exception
public void registerWorkflowInputFieldType(java.lang.String inputType, java.lang.String label, int fieldType, java.lang.String lovProvider, boolean isMultiSelect, UserInputValidatorIf val) throws java.lang.Exception
inputType
- - the input typelabel
- - the label of the new filed typefieldType
- - the type of the fieldlovProvider
- - the lov providers nameisMultiSelect
- - is multi selectjava.lang.Exception
public void registerLovProviders(java.lang.String name, LOVProviderIf lovProvider) throws java.lang.Exception
name
- A unique identifier for the LOV provider.lovProvider
- An instance of the LOV provider.java.lang.Exception
- An exception is thrown if there is an existing LOV provider with the same name.public void registerFieldValidator(java.lang.String name, FieldValidatorIf validator) throws java.lang.Exception
name
- A unique identifier for the validator.validator
- An instance of the implementation of FieldValidatorIf.java.lang.Exception
- An exception is thrown if there is an existing validator with the same name.public final PodDefinition registerPodDefinition(java.lang.String featureId) throws java.lang.Exception
featureId
- java.lang.Exception