java.lang.Object
net.officefloor.frame.impl.execute.managedfunction.ManagedFunctionMetaDataImpl<O,F>
- All Implemented Interfaces:
ManagedFunctionLogicMetaData,ManagedFunctionMetaData<O,F>
public class ManagedFunctionMetaDataImpl<O extends Enum<O>,F extends Enum<F>>
extends Object
implements ManagedFunctionMetaData<O,F>
Meta-data of a
ManagedFunction.- Author:
- Daniel Sagenschneider
-
Constructor Summary
ConstructorsConstructorDescriptionManagedFunctionMetaDataImpl(String functionName, ManagedFunctionFactory<O, F> functionFactory, Object[] annotations, Class<?> parameterType, TeamManagement responsibleTeam, ManagedObjectIndex[] functionIndexedManagedObjects, ManagedObjectMetaData<?>[] functionBoundManagedObjects, boolean[] requiredGovernance, long asynchronousFlowTimeout, AssetManagerReference asynchronousFlowsAssetManagerReference, Logger logger) Initiate with details of the meta-data for theManagedFunction. -
Method Summary
Modifier and TypeMethodDescriptionObject[]Obtains the annotations for theManagedFunction.Obtains theAssetManagerReferencethat managesAsynchronousFlowinstances instigated by theManagedFunction.longObtains the time out forAsynchronousFlowinstigated by theManagedFunction.Obtains theEscalationProcedurefor theManagedFunctionLogic.getFlow(int flowIndex) Obtains theFlowMetaDataof the specifiedFlow.Obtains the name of theManagedFunctionLogic.Obtains theLoggerforManagedFunctionContext.getManagedObject(int managedObjectIndex) Obtains theManagedObjectIndexfor theManagedFunctionindex.Obtains the meta-data of theManagedObjectinstances bound to theManagedFunction.Obtains theManagedFunctionMetaDataof the nextManagedFunction.Obtains theOfficeMetaData.Class<?>Obtains the parameter type for theManagedFunction.Meta-data of theAdministrationto undertake after executing theManagedFunction.Meta-data of theAdministrationto undertake before executing theManagedFunction.boolean[]Obtains the activation flags for theGovernance.Obtains theManagedObjectIndexinstances identifying theManagedObjectinstances that must be loaded before theManagedFunctionmay be executed.Obtains theTeamManagementresponsible for completion of theFunctionState.voidloadOfficeMetaData(OfficeMetaData officeMetaData, FlowMetaData[] flowMetaData, ManagedFunctionMetaData<?, ?> nextFunctionMetaData, EscalationProcedure escalationProcedure, ManagedFunctionAdministrationMetaData<?, ?, ?>[] preAdministration, ManagedFunctionAdministrationMetaData<?, ?, ?>[] postAdministration, ManagedObjectIndex[] requiredManagedObjects) Loads the remaining state of thisManagedFunctionMetaData.
-
Constructor Details
-
ManagedFunctionMetaDataImpl
public ManagedFunctionMetaDataImpl(String functionName, ManagedFunctionFactory<O, F> functionFactory, Object[] annotations, Class<?> parameterType, TeamManagement responsibleTeam, ManagedObjectIndex[] functionIndexedManagedObjects, ManagedObjectMetaData<?>[] functionBoundManagedObjects, boolean[] requiredGovernance, long asynchronousFlowTimeout, AssetManagerReference asynchronousFlowsAssetManagerReference, Logger logger) Initiate with details of the meta-data for theManagedFunction.- Parameters:
functionName- Name of theManagedFunction.functionFactory-ManagedFunctionFactoryto create theManagedFunctionof theManagedFunctionMetaData.annotations- Differentiators.parameterType- Parameter type of thisManagedFunction.responsibleTeam-TeamManagementof theTeamresponsible for executing thisManagedFunction. May benull.functionIndexedManagedObjects- Translates theManagedFunctionindex to theManagedObjectIndexto obtain theManagedObjectfor theManagedFunction.functionBoundManagedObjects-ManagedObjectMetaDataof theManagedObjectinstances bound to theManagedFunction.requiredGovernance- RequiredGovernance.asynchronousFlowTimeout-AsynchronousFlowtimeout.asynchronousFlowsAssetManagerReference-AssetManagerReferencefor the invokedAsynchronousFlowinstances.logger-LoggerforManagedFunctionContext.
-
-
Method Details
-
loadOfficeMetaData
public void loadOfficeMetaData(OfficeMetaData officeMetaData, FlowMetaData[] flowMetaData, ManagedFunctionMetaData<?, ?> nextFunctionMetaData, EscalationProcedure escalationProcedure, ManagedFunctionAdministrationMetaData<?, ?, ?>[] preAdministration, ManagedFunctionAdministrationMetaData<?, ?, ?>[] postAdministration, ManagedObjectIndex[] requiredManagedObjects) Loads the remaining state of thisManagedFunctionMetaData.- Parameters:
officeMetaData-OfficeMetaData.flowMetaData- Meta-data of the availableFlowinstances from thisManagedFunction.nextFunctionMetaData-ManagedFunctionMetaDataof the nextManagedFunction.escalationProcedure-EscalationProcedurefor exceptions of theManagedFunctionof thisManagedFunctionMetaData.preAdministration-ManagedFunctionAdministrationMetaDataspecifying theAdministrationinstances to be completed before executing theManagedFunction.postAdministration-ManagedFunctionAdministrationMetaDataspecifying theAdministrationinstances to be completed after executing theManagedFunction.requiredManagedObjects-ManagedObjectIndexinstances identifying theManagedObjectinstances that must be loaded before theManagedFunctionmay be executed.
-
getFunctionName
Description copied from interface:ManagedFunctionLogicMetaDataObtains the name of theManagedFunctionLogic.- Specified by:
getFunctionNamein interfaceManagedFunctionLogicMetaData- Returns:
- Name of the
ManagedFunctionLogic.
-
getManagedFunctionFactory
Description copied from interface:ManagedFunctionMetaData- Specified by:
getManagedFunctionFactoryin interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
ManagedFunctionFactory
-
getAnnotations
Description copied from interface:ManagedFunctionMetaDataObtains the annotations for theManagedFunction.- Specified by:
getAnnotationsin interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Annotations.
-
getParameterType
Description copied from interface:ManagedFunctionMetaDataObtains the parameter type for theManagedFunction.- Specified by:
getParameterTypein interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Parameter type for the
ManagedFunction. May benullto indicate no parameter.
-
getLogger
Description copied from interface:ManagedFunctionMetaDataObtains theLoggerforManagedFunctionContext.- Specified by:
getLoggerin interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
LoggerforManagedFunctionContext.
-
getResponsibleTeam
Description copied from interface:ManagedFunctionLogicMetaDataObtains theTeamManagementresponsible for completion of theFunctionState.- Specified by:
getResponsibleTeamin interfaceManagedFunctionLogicMetaData- Returns:
TeamManagementresponsible for completion of theFunctionState. May benullto enable anyTeamto execute theFunctionState.
-
getRequiredManagedObjects
Description copied from interface:ManagedFunctionMetaDataObtains the
ManagedObjectIndexinstances identifying theManagedObjectinstances that must be loaded before theManagedFunctionmay be executed.The order of the
ManagedObjectIndexinstances must be respected as they are sorted to enable appropriateCoordinatingManagedObjectto co-ordinate with dependencies.- Specified by:
getRequiredManagedObjectsin interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Listing of
ManagedObjectIndexinstances.
-
getRequiredGovernance
public boolean[] getRequiredGovernance()Description copied from interface:ManagedFunctionMetaDataObtains the activation flags for theGovernance. The index into the array identifies theGovernancefor the respective activation flag.- Specified by:
getRequiredGovernancein interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Activation flags for the
Governance.
-
getManagedObject
Description copied from interface:ManagedFunctionMetaDataObtains theManagedObjectIndexfor theManagedFunctionindex.- Specified by:
getManagedObjectin interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Parameters:
managedObjectIndex-ManagedObjectIndexfor theManagedFunctionindex.- Returns:
ManagedObjectIndexto obtain theManagedObjectfor theManagedFunction.
-
getFlow
Description copied from interface:ManagedFunctionLogicMetaDataObtains theFlowMetaDataof the specifiedFlow.- Specified by:
getFlowin interfaceManagedFunctionLogicMetaData- Parameters:
flowIndex- Index of theFlow.- Returns:
FlowMetaDataof the specifiedFlow.
-
getAsynchronousFlowTimeout
public long getAsynchronousFlowTimeout()Description copied from interface:ManagedFunctionLogicMetaDataObtains the time out forAsynchronousFlowinstigated by theManagedFunction.- Specified by:
getAsynchronousFlowTimeoutin interfaceManagedFunctionLogicMetaData- Returns:
- Time out for
AsynchronousFlowinstigated by theManagedFunction.
-
getAsynchronousFlowManagerReference
Description copied from interface:ManagedFunctionLogicMetaDataObtains theAssetManagerReferencethat managesAsynchronousFlowinstances instigated by theManagedFunction.- Specified by:
getAsynchronousFlowManagerReferencein interfaceManagedFunctionLogicMetaData- Returns:
AssetManagerReferencethat managesAsynchronousFlowinstances instigated by theManagedFunction.
-
getEscalationProcedure
Description copied from interface:ManagedFunctionLogicMetaDataObtains theEscalationProcedurefor theManagedFunctionLogic.- Specified by:
getEscalationProcedurein interfaceManagedFunctionLogicMetaData- Returns:
EscalationProcedure.
-
getOfficeMetaData
Description copied from interface:ManagedFunctionLogicMetaDataObtains theOfficeMetaData.- Specified by:
getOfficeMetaDatain interfaceManagedFunctionLogicMetaData- Returns:
OfficeMetaData.
-
getNextManagedFunctionMetaData
Description copied from interface:ManagedFunctionLogicMetaDataObtains theManagedFunctionMetaDataof the nextManagedFunction.- Specified by:
getNextManagedFunctionMetaDatain interfaceManagedFunctionLogicMetaData- Returns:
ManagedFunctionMetaDataof nextManagedFunction.
-
getPreAdministrationMetaData
Description copied from interface:ManagedFunctionMetaDataMeta-data of theAdministrationto undertake before executing theManagedFunction.- Specified by:
getPreAdministrationMetaDatain interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Listing of the
Administrationinstances to undertake before executing theManagedFunction.
-
getPostAdministrationMetaData
Description copied from interface:ManagedFunctionMetaDataMeta-data of theAdministrationto undertake after executing theManagedFunction.- Specified by:
getPostAdministrationMetaDatain interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Listing the
Administrationinstances to undertake after executing theManagedFunction.
-
getManagedObjectMetaData
Description copied from interface:ManagedFunctionMetaDataObtains the meta-data of theManagedObjectinstances bound to theManagedFunction.- Specified by:
getManagedObjectMetaDatain interfaceManagedFunctionMetaData<O extends Enum<O>,F extends Enum<F>> - Returns:
- Meta-data of the
ManagedObjectinstances bound to theManagedFunction.
-