Class AbstractFlowClassDependencyManufacturer
java.lang.Object
net.officefloor.plugin.clazz.dependency.impl.AbstractFlowClassDependencyManufacturer
- All Implemented Interfaces:
ServiceFactory<ClassDependencyManufacturer>,ClassDependencyManufacturer,ClassDependencyManufacturerServiceFactory
- Direct Known Subclasses:
FlowClassDependencyManufacturer,FlowInterfaceClassDependencyManufacturer,SectionInterfaceClassDependencyManufacturer
public abstract class AbstractFlowClassDependencyManufacturer
extends Object
implements ClassDependencyManufacturer, ClassDependencyManufacturerServiceFactory
ClassDependencyManufacturer for providing Flow invocations.- Author:
- Daniel Sagenschneider
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddFlow(ClassDependencyManufacturerContext dependencyContext, ClassFlowContext flowContext) Adds aFlow.protected intbuildFlow(ClassDependencyManufacturerContext.ClassFlow classFlow, ClassFlowContext flowContext) Builds theFlowCreates theClassDependencyFactoryfor the particular dependency.createService(ServiceContext context) Creates the service.protected abstract Class<? extends Annotation>Obtains theAnnotationtype.
-
Constructor Details
-
AbstractFlowClassDependencyManufacturer
public AbstractFlowClassDependencyManufacturer()
-
-
Method Details
-
getAnnotationType
Obtains theAnnotationtype.- Returns:
Annotationtype.
-
addFlow
protected ClassDependencyManufacturerContext.ClassFlow addFlow(ClassDependencyManufacturerContext dependencyContext, ClassFlowContext flowContext) Adds aFlow.- Parameters:
dependencyContext-ClassDependencyManufacturerContext.flowContext-ClassFlowContext.- Returns:
ClassDependencyManufacturerContext.ClassFlow.
-
buildFlow
protected int buildFlow(ClassDependencyManufacturerContext.ClassFlow classFlow, ClassFlowContext flowContext) Builds theFlow- Parameters:
classFlow-ClassDependencyManufacturerContext.ClassFlow.flowContext-ClassFlowContext.- Returns:
- Index of the
Flow.
-
createService
Description copied from interface:ServiceFactoryCreates the service.- Specified by:
createServicein interfaceServiceFactory<ClassDependencyManufacturer>- Parameters:
context-ServiceContext.- Returns:
- Service.
- Throws:
Throwable- If fails to create the service.
-
createParameterFactory
public ClassDependencyFactory createParameterFactory(ClassDependencyManufacturerContext context) throws Exception Description copied from interface:ClassDependencyManufacturerCreates the
ClassDependencyFactoryfor the particular dependency.Should the
ClassDependencyManufacturernot handled the dependency, it should returnnull. This is because the firstClassDependencyManufacturerproviding aClassDependencyFactorywill be used.- Specified by:
createParameterFactoryin interfaceClassDependencyManufacturer- Parameters:
context-ClassDependencyManufacturerContext.- Returns:
ClassDependencyFactoryornullif not able to handle dependency.- Throws:
Exception- If fails to create theClassDependencyFactory.
-