Interface ManagedObjectTypeBuilder
public interface ManagedObjectTypeBuilder
Builder for the
ManagedObjectType to validate the loaded
ManagedObjectType from the ManagedObjectSource.- Author:
- Daniel Sagenschneider
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddDependency(Enum<?> key, Class<?> type, String typeQualifier) Convenience method to add aManagedObjectDependencyTypebased on the key.voidaddDependency(String name, Class<?> type, String typeQualifier, int index, Enum<?> key, Class<?>... annotationTypes) Adds aManagedObjectDependencyType.voidaddExecutionStrategy(String executionStrategyName) Adds anExecutionStrategyType.voidaddExtensionInterface(Class<?> extensionInterface) Adds an extension interface.voidConvenience method to add aManagedObjectFlowTypebased on the key.voidAdds aManagedObjectFlowType.voidaddFunctionDependency(String name, Class<?> type, String typeQualifier) voidAdds aManagedObjectTeamType.<D extends Enum<D>>
ManagedObjectType<D>build()Builds theManagedObjectType.voidsetInput(boolean isInput) Flags theManagedObjectSourceas possibly being able to trigger aFlow.voidsetObjectClass(Class<?> objectClass) Specifies theObjectclass returned from theManagedObject.
-
Method Details
-
setObjectClass
Specifies theObjectclass returned from theManagedObject.- Parameters:
objectClass- Class of theObjectreturned from theManagedObject.
-
setInput
void setInput(boolean isInput) Flags theManagedObjectSourceas possibly being able to trigger aFlow.- Parameters:
isInput-trueif can trigger aFlow.
-
addDependency
void addDependency(String name, Class<?> type, String typeQualifier, int index, Enum<?> key, Class<?>... annotationTypes) Adds aManagedObjectDependencyType.- Parameters:
name- Name of theManagedObjectDependency.type- Type of theManagedObjectDependency.typeQualifier- Qualifier for the type ofManagedObjectDependency.index- Index of theManagedObjectDependency.key- Key identifying theManagedObjectDependency.annotationTypes- Types of the annotations for theManagedObjectDependency.
-
addFunctionDependency
- Parameters:
name- Name of theManagedObjectFunctionDependency.type- Type of theManagedObjectFunctionDependency.typeQualifier- Qualifier for the type ofManagedObjectFunctionDependency.
-
addDependency
Convenience method to add a
ManagedObjectDependencyTypebased on the key.Both the
nameandindexare extracted from the key.- Parameters:
key- Key identifying theManagedObjectDependency.type- Type of theManagedObjectDependency.typeQualifier- Qualifier for the type ofManagedObjectDependency.
-
addFlow
Adds aManagedObjectFlowType.- Parameters:
name- Name of theManagedObjectFlow.argumentType- Type of argument passed from theManagedObjectFlow.index- Index of theManagedObjectFlow.key- Key identifying theManagedObjectFlow.
-
addFlow
Convenience method to add a
ManagedObjectFlowTypebased on the key.Both the
nameandindexare extracted from the key.- Parameters:
key- Key identifying theManagedObjectFlow.argumentType- Type of argument passed from theManagedObjectFlow.
-
addTeam
Adds aManagedObjectTeamType.- Parameters:
teamName- Name of theManagedObjectTeam.
-
addExecutionStrategy
Adds anExecutionStrategyType.- Parameters:
executionStrategyName- Name of theExecutionStrategyType.
-
addExtensionInterface
Adds an extension interface.- Parameters:
extensionInterface- Extension interface.
-
build
Builds theManagedObjectType.- Type Parameters:
D- Dependency keys.- Returns:
ManagedObjectType.
-