Class OfficeFloorNodeImpl
- java.lang.Object
-
- net.officefloor.compile.impl.structure.OfficeFloorNodeImpl
-
- All Implemented Interfaces:
ManagedObjectRegistry,ManagedObjectSourceVisitor,Node,OfficeFloorNode,OverrideProperties,TeamVisitor,SourceIssues,PropertyConfigurable,OfficeFloorDeployer
public class OfficeFloorNodeImpl extends java.lang.Object implements OfficeFloorNode, ManagedObjectSourceVisitor, TeamVisitor
OfficeFloorNodeimplementation.- Author:
- Daniel Sagenschneider
-
-
Field Summary
-
Fields inherited from interface net.officefloor.compile.internal.structure.OfficeFloorNode
OFFICE_FLOOR_NAME, TYPE
-
-
Constructor Summary
Constructors Constructor Description OfficeFloorNodeImpl(java.lang.String officeFloorSourceClassName, OfficeFloorSource officeFloorSource, java.lang.String officeFloorLocation, NodeContext context, java.util.Map<java.lang.String,Profiler> profilers)Initiate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DeployedOfficeaddDeployedOffice(java.lang.String officeName, java.lang.String officeSourceClassName, java.lang.String officeLocation)Adds aDeployedOfficeto theOfficeFloor.DeployedOfficeaddDeployedOffice(java.lang.String officeName, OfficeSource officeSource, java.lang.String officeLocation)Adds aDeployedOfficeto theOfficeFloor.OfficeFloorInputManagedObjectaddInputManagedObject(java.lang.String inputManagedObjectName, java.lang.String inputObjectType)Adds anOfficeFloorInputManagedObject.CompileErroraddIssue(java.lang.String issueDescription)Allows the source to add an issue.CompileErroraddIssue(java.lang.String issueDescription, java.lang.Throwable cause)Allows the source to add an issue along with its cause.ManagedObjectNodeaddManagedObjectNode(java.lang.String managedObjectName, ManagedObjectScope managedObjectScope, ManagedObjectSourceNode managedObjectSourceNode)Adds an initialisedManagedObjectNodeto the registry.OfficeFloorManagedObjectPooladdManagedObjectPool(java.lang.String managedObjectPoolName, java.lang.String managedObjectPoolSourceClassName)Adds anOfficeFloorManagedObjectPool.OfficeFloorManagedObjectPooladdManagedObjectPool(java.lang.String managedObjectPoolName, ManagedObjectPoolSource managedObjectPoolSource)Adds anOfficeFloorManagedObjectPool.OfficeFloorManagedObjectSourceaddManagedObjectSource(java.lang.String managedObjectSourceName, java.lang.String managedObjectSourceClassName)Adds anOfficeFloorManagedObjectSource.OfficeFloorManagedObjectSourceaddManagedObjectSource(java.lang.String managedObjectSourceName, SuppliedManagedObjectSourceNode suppliedManagedObject)Adds aOfficeFloorManagedObjectSourcesupplied from anOfficeFloorSupplier.OfficeFloorManagedObjectSourceaddManagedObjectSource(java.lang.String managedObjectSourceName, ManagedObjectSource<?,?> managedObjectSource)Adds anOfficeFloorManagedObjectSource.voidaddManagedObjectSourceAugmentor(ManagedObjectSourceAugmentor managedObjectSourceAugmentor)Adds aManagedObjectSourceAugmentor.voidaddOfficeFloorListener(OfficeFloorListener listener)Adds anOfficeFloorListener.voidaddProperty(java.lang.String name, java.lang.String value)Adds aPropertyto configure the item.OfficeFloorSupplieraddSupplier(java.lang.String supplierName, java.lang.String supplierSourceClassName)Adds anOfficeFloorSupplier.OfficeFloorSupplieraddSupplier(java.lang.String supplierName, SupplierSource supplierSource)Adds anOfficeFloorSupplier.OfficeFloorTeamaddTeam(java.lang.String teamName, java.lang.String teamSourceClassName)Adds aOfficeFloorTeam.OfficeFloorTeamaddTeam(java.lang.String teamName, TeamSource teamSource)Adds aOfficeFloorTeam.voidaddTeamAugmentor(TeamAugmentor teamAugmentor)Adds aTeamAugmentor.OfficeFloordeployOfficeFloor(java.lang.String officeFloorName, OfficeFloorBuilder builder, CompileContext compileContext)Deploys theOfficeFloor.voidenableAutoWireObjects()Flags to attempt to auto wire any non-configured object links.voidenableAutoWireTeams()Flags to attempt to auto wire any non-configuredTeamlinks.AvailableType[]getAvailableTypes(CompileContext compileContext)Obtains theAvailableTypeinstances.Node[]getChildNodes()Obtains the childNodeinstances.DeployedOfficegetDeployedOffice(java.lang.String officeName)Obtains theDeployedOffice.DeployedOffice[]getDeployedOffices()Obtains the currently addedDeployedOfficeinstances.InternalSupplier[]getInternalSuppliers()Obtains theInternalSupplierinstances.java.lang.StringgetLocation()Obtains the location of theNode.ManagedObjectNodegetManagedObjectNode(java.lang.String managedObjectName)Obtains theManagedObjectNodefrom the registry.java.lang.StringgetNodeName()Obtains the name of theNode.java.lang.StringgetNodeType()Obtains theNodetype.OfficeFloorListener[]getOfficeFloorListeners()Obtains theOfficeFloorDeployerconfiguredOfficeFloorListenerinstances.PropertyListgetOverridePropertyList()Obtains the overridePropertyList.NodegetParentNode()java.lang.StringgetQualifiedName(java.lang.String name)Obtains the qualified name for childNode.voidinitialise()Initialises theOfficeFloorNode.booleanisDefaultExecutionStrategy()Indicates if defaultExecutionStrategyis being used.booleanisInitialised()Indicates if theNodehas been initialised.voidlink(ManagingOffice managingOffice, DeployedOffice office)Links theManagingOfficeto be managed by theDeployedOffice.voidlink(OfficeFloorDependencyRequireNode dependencyRequireNode, OfficeFloorDependencyObjectNode dependencyObjectNode)Links theOfficeFloorDependencyObjectNodeto be fulfilled by theOfficeFloorDependencyObjectNode.voidlink(OfficeFloorFlowSourceNode flowSourceNode, OfficeFloorFlowSinkNode flowSinkNode)Links theOfficeFloorFlowSourceNodeto be undertake by theOfficeFloorFlowSinkNode.voidlink(OfficeFloorManagedObjectExecutionStrategy managedObjectExecutionStrategy, OfficeFloorExecutionStrategy executionStrategy)Links theOfficeFloorManagedObjectExecutionStrategyto theOfficeFloorExecutionStrategy.voidlink(OfficeFloorManagedObjectSource managedObjectSource, OfficeFloorInputManagedObject inputManagedObject)Links theOfficeFloorInputManagedObjectto be input by theOfficeFloorManagedObjectSource.voidlink(OfficeFloorManagedObjectSource managedObjectSource, OfficeFloorManagedObjectPool managedObjectPool)Links theOfficeFloorManagedObjectSourceto be pooled by theOfficeFloorManagedObjectPool.voidlink(OfficeFloorResponsibility responsibility, OfficeFloorTeam officeFloorTeam)Links theOfficeFloorResponsibilityto theOfficeFloorTeam.voidlink(OfficeFloorTeam team, OfficeFloorTeamOversight oversight)Links theOfficeFloorTeamto itsOfficeFloorTeamOversight.AutoWirer<ManagedObjectExtensionNode>loadAutoWireExtensionTargets(AutoWirer<ManagedObjectExtensionNode> autoWirer, CompileContext compileContext)Loads theAutoWireextension targets for theOfficeFloorManagedObject.AutoWirer<LinkObjectNode>loadAutoWireObjectTargets(AutoWirer<LinkObjectNode> autoWirer, CompileContext compileContext)Loads theAutoWiretargets for theOfficeFloorManagedObjectinstances.voidloadAutoWireTeamTargets(AutoWirer<LinkTeamNode> autoWirer, OfficeTeamRegistry officeTeamRegistry, CompileContext compileContext)Loads theAutoWiretargets for theOfficeFloorTeaminstances.voidloadExternalServicing(OfficeFloor officeFloor)Loads theFunctionManagerinstances to externally trigger thisOfficeFloorNode.OfficeFloorTypeloadOfficeFloorType(CompileContext compileContext)Loads theOfficeFloorType.OfficeFloorExecutivesetExecutive(java.lang.String executiveSourceClassName)Sets theOfficeFloorExecutive.OfficeFloorExecutivesetExecutive(ExecutiveSource executiveSource)Sets theOfficeFloorExecutive.booleansourceOfficeFloor(CompileContext compileContext)Sources theOfficeFloorinto thisOfficeFloorNode.booleansourceOfficeFloorTree(AutoWirerVisitor autoWirerVisitor, CompileContext compileContext)Sources thisOfficeFloorNodeand all its descendantNodeinstances recursively.voidvisit(ManagedObjectType<?> managedObjectType, ManagedObjectSourceNode managedObjectSourceNode, CompileContext compileContext)Visits theManagedObjectSourceNode.voidvisit(TeamType teamType, TeamNode teamNode, CompileContext compileContext)Visits theTeamNode.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.officefloor.compile.internal.structure.Node
getQualifiedName
-
-
-
-
Constructor Detail
-
OfficeFloorNodeImpl
public OfficeFloorNodeImpl(java.lang.String officeFloorSourceClassName, OfficeFloorSource officeFloorSource, java.lang.String officeFloorLocation, NodeContext context, java.util.Map<java.lang.String,Profiler> profilers)Initiate.- Parameters:
officeFloorSourceClassName-OfficeFloorSourceclass name.officeFloorSource- Optional instantiatedOfficeFloorSource. May benull.officeFloorLocation- Location of theOfficeFloor.context-NodeContext.profilers- Mapping ofProfilerby theirOfficename.
-
-
Method Detail
-
getNodeName
public java.lang.String getNodeName()
Description copied from interface:NodeObtains the name of theNode.- Specified by:
getNodeNamein interfaceNode- Returns:
- Name of the
Node.
-
getNodeType
public java.lang.String getNodeType()
Description copied from interface:NodeObtains theNodetype.- Specified by:
getNodeTypein interfaceNode- Returns:
Nodetype.
-
getLocation
public java.lang.String getLocation()
Description copied from interface:NodeObtains the location of theNode.- Specified by:
getLocationin interfaceNode- Returns:
- Location of the
Node. May benullifNodedoes not support a location.
-
getParentNode
public Node getParentNode()
Description copied from interface:Node- Specified by:
getParentNodein interfaceNode- Returns:
Nodecontaining thisNode.
-
getQualifiedName
public java.lang.String getQualifiedName(java.lang.String name)
Description copied from interface:NodeObtains the qualified name for childNode.- Specified by:
getQualifiedNamein interfaceNode- Parameters:
name- Name of childNode.- Returns:
- Name qualified by this
Node.
-
getChildNodes
public Node[] getChildNodes()
Description copied from interface:NodeObtains the childNodeinstances.- Specified by:
getChildNodesin interfaceNode- Returns:
- Child
Nodeinstances.
-
isInitialised
public boolean isInitialised()
Description copied from interface:NodeIndicates if theNodehas been initialised.Nodeinstances should only be initialised once. Initialising theNodetwice is an issue.- Specified by:
isInitialisedin interfaceNode- Returns:
trueif initialised.
-
initialise
public void initialise()
Description copied from interface:OfficeFloorNodeInitialises theOfficeFloorNode.- Specified by:
initialisein interfaceOfficeFloorNode
-
getOverridePropertyList
public PropertyList getOverridePropertyList()
Description copied from interface:OverridePropertiesObtains the overridePropertyList.- Specified by:
getOverridePropertyListin interfaceOverrideProperties- Returns:
- Override
PropertyList.
-
visit
public void visit(ManagedObjectType<?> managedObjectType, ManagedObjectSourceNode managedObjectSourceNode, CompileContext compileContext)
Description copied from interface:ManagedObjectSourceVisitorVisits theManagedObjectSourceNode.- Specified by:
visitin interfaceManagedObjectSourceVisitor- Parameters:
managedObjectType-ManagedObjectType.managedObjectSourceNode-ManagedObjectSourceNode.compileContext-CompileContext.
-
visit
public void visit(TeamType teamType, TeamNode teamNode, CompileContext compileContext)
Description copied from interface:TeamVisitorVisits theTeamNode.- Specified by:
visitin interfaceTeamVisitor- Parameters:
teamType-TeamType.teamNode-TeamNode.compileContext-CompileContext.
-
getManagedObjectNode
public ManagedObjectNode getManagedObjectNode(java.lang.String managedObjectName)
Description copied from interface:ManagedObjectRegistryObtains the
ManagedObjectNodefrom the registry.The returned
ManagedObjectNodemay or may not be initialised.- Specified by:
getManagedObjectNodein interfaceManagedObjectRegistry- Parameters:
managedObjectName- Name of theManagedObjectNode.- Returns:
ManagedObjectNodefrom the registry.
-
addManagedObjectNode
public ManagedObjectNode addManagedObjectNode(java.lang.String managedObjectName, ManagedObjectScope managedObjectScope, ManagedObjectSourceNode managedObjectSourceNode)
Description copied from interface:ManagedObjectRegistryAdds an initialised
ManagedObjectNodeto the registry.Should an
ManagedObjectNodealready be added by the name, then an issue is reported to theCompilerIssue.- Specified by:
addManagedObjectNodein interfaceManagedObjectRegistry- Parameters:
managedObjectName- Name of theManagedObjectNode.managedObjectScope-ManagedObjectScope.managedObjectSourceNode-ManagedObjectSourceNodefor theManagedObjectNode.- Returns:
- Initialised
ManagedObjectNodeby the name.
-
enableAutoWireObjects
public void enableAutoWireObjects()
Description copied from interface:OfficeFloorDeployerFlags to attempt to auto wire any non-configured object links.- Specified by:
enableAutoWireObjectsin interfaceOfficeFloorDeployer
-
enableAutoWireTeams
public void enableAutoWireTeams()
Description copied from interface:OfficeFloorDeployerFlags to attempt to auto wire any non-configuredTeamlinks.- Specified by:
enableAutoWireTeamsin interfaceOfficeFloorDeployer
-
addOfficeFloorListener
public void addOfficeFloorListener(OfficeFloorListener listener)
Description copied from interface:OfficeFloorDeployerAdds an
OfficeFloorListener.This enables external services to operate in the open/close life-cycle of
OfficeFloor.- Specified by:
addOfficeFloorListenerin interfaceOfficeFloorDeployer- Parameters:
listener-OfficeFloorListener.
-
addManagedObjectSourceAugmentor
public void addManagedObjectSourceAugmentor(ManagedObjectSourceAugmentor managedObjectSourceAugmentor)
Description copied from interface:OfficeFloorDeployerAdds aManagedObjectSourceAugmentor.- Specified by:
addManagedObjectSourceAugmentorin interfaceOfficeFloorDeployer- Parameters:
managedObjectSourceAugmentor-ManagedObjectSourceAugmentor.
-
addTeamAugmentor
public void addTeamAugmentor(TeamAugmentor teamAugmentor)
Description copied from interface:OfficeFloorDeployerAdds aTeamAugmentor.- Specified by:
addTeamAugmentorin interfaceOfficeFloorDeployer- Parameters:
teamAugmentor-TeamAugmentor.
-
addManagedObjectSource
public OfficeFloorManagedObjectSource addManagedObjectSource(java.lang.String managedObjectSourceName, java.lang.String managedObjectSourceClassName)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorManagedObjectSource.- Specified by:
addManagedObjectSourcein interfaceOfficeFloorDeployer- Parameters:
managedObjectSourceName- Name of theOfficeFloorManagedObjectSource.managedObjectSourceClassName- Fully qualified class name of theManagedObjectSource.- Returns:
- Added
OfficeFloorManagedObjectSource.
-
addManagedObjectSource
public OfficeFloorManagedObjectSource addManagedObjectSource(java.lang.String managedObjectSourceName, ManagedObjectSource<?,?> managedObjectSource)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorManagedObjectSource.- Specified by:
addManagedObjectSourcein interfaceOfficeFloorDeployer- Parameters:
managedObjectSourceName- Name of theOfficeFloorManagedObjectSource.managedObjectSource-ManagedObjectSourceinstance to use.- Returns:
- Added
OfficeFloorManagedObjectSource.
-
addInputManagedObject
public OfficeFloorInputManagedObject addInputManagedObject(java.lang.String inputManagedObjectName, java.lang.String inputObjectType)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorInputManagedObject.- Specified by:
addInputManagedObjectin interfaceOfficeFloorDeployer- Parameters:
inputManagedObjectName- Name of theOfficeFloorInputManagedObject.inputObjectType- InputObjecttype.- Returns:
- Added
OfficeFloorInputManagedObject.
-
addManagedObjectPool
public OfficeFloorManagedObjectPool addManagedObjectPool(java.lang.String managedObjectPoolName, java.lang.String managedObjectPoolSourceClassName)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorManagedObjectPool.- Specified by:
addManagedObjectPoolin interfaceOfficeFloorDeployer- Parameters:
managedObjectPoolName- Name of theOfficeFloorManagedObjectPool.managedObjectPoolSourceClassName- Fully qualified class name of theManagedObjectPoolSource.- Returns:
- Added
OfficeFloorManagedObjectPool.
-
addManagedObjectPool
public OfficeFloorManagedObjectPool addManagedObjectPool(java.lang.String managedObjectPoolName, ManagedObjectPoolSource managedObjectPoolSource)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorManagedObjectPool.- Specified by:
addManagedObjectPoolin interfaceOfficeFloorDeployer- Parameters:
managedObjectPoolName- Name of theOfficeFloorManagedObjectPool.managedObjectPoolSource-ManagedObjectPoolSourceinstance to use.- Returns:
OfficeFloorManagedObjectPool.
-
addSupplier
public OfficeFloorSupplier addSupplier(java.lang.String supplierName, java.lang.String supplierSourceClassName)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorSupplier.- Specified by:
addSupplierin interfaceOfficeFloorDeployer- Parameters:
supplierName- Name of theOfficeFloorSupplier.supplierSourceClassName- Fully qualified class name of theSupplierSource.- Returns:
OfficeFloorSupplier.
-
addSupplier
public OfficeFloorSupplier addSupplier(java.lang.String supplierName, SupplierSource supplierSource)
Description copied from interface:OfficeFloorDeployerAdds anOfficeFloorSupplier.- Specified by:
addSupplierin interfaceOfficeFloorDeployer- Parameters:
supplierName- Name of theOfficeFloorSupplier.supplierSource-SupplierSourceinstance to use.- Returns:
OfficeFloorSupplier.
-
addTeam
public OfficeFloorTeam addTeam(java.lang.String teamName, java.lang.String teamSourceClassName)
Description copied from interface:OfficeFloorDeployerAdds aOfficeFloorTeam.- Specified by:
addTeamin interfaceOfficeFloorDeployer- Parameters:
teamName- Name of theOfficeFloorTeam.teamSourceClassName- Fully qualified class name of theTeamSource.- Returns:
- Added
OfficeFloorTeam.
-
addTeam
public OfficeFloorTeam addTeam(java.lang.String teamName, TeamSource teamSource)
Description copied from interface:OfficeFloorDeployerAdds aOfficeFloorTeam.- Specified by:
addTeamin interfaceOfficeFloorDeployer- Parameters:
teamName- Name of theOfficeFloorTeam.teamSource-TeamSource.- Returns:
- Added
OfficeFloorTeam.
-
setExecutive
public OfficeFloorExecutive setExecutive(java.lang.String executiveSourceClassName)
Description copied from interface:OfficeFloorDeployerSets theOfficeFloorExecutive.- Specified by:
setExecutivein interfaceOfficeFloorDeployer- Parameters:
executiveSourceClassName- Fully qualified class name of theExecutiveSource.- Returns:
- Set
OfficeFloorExecutive.
-
setExecutive
public OfficeFloorExecutive setExecutive(ExecutiveSource executiveSource)
Description copied from interface:OfficeFloorDeployerSets theOfficeFloorExecutive.- Specified by:
setExecutivein interfaceOfficeFloorDeployer- Parameters:
executiveSource-ExecutiveSource.- Returns:
- Set
OfficeFloorExecutive.
-
addDeployedOffice
public DeployedOffice addDeployedOffice(java.lang.String officeName, OfficeSource officeSource, java.lang.String officeLocation)
Description copied from interface:OfficeFloorDeployerAdds aDeployedOfficeto theOfficeFloor.- Specified by:
addDeployedOfficein interfaceOfficeFloorDeployer- Parameters:
officeName- Name of theOffice.officeSource-OfficeSourceinstance.officeLocation- Location of theOffice.- Returns:
DeployedOffice.
-
addDeployedOffice
public DeployedOffice addDeployedOffice(java.lang.String officeName, java.lang.String officeSourceClassName, java.lang.String officeLocation)
Description copied from interface:OfficeFloorDeployerAdds aDeployedOfficeto theOfficeFloor.- Specified by:
addDeployedOfficein interfaceOfficeFloorDeployer- Parameters:
officeName- Name of theOffice.officeSourceClassName- Fully qualified class name of theOfficeSource.officeLocation- Location of theOffice.- Returns:
DeployedOffice.
-
getDeployedOffice
public DeployedOffice getDeployedOffice(java.lang.String officeName)
Description copied from interface:OfficeFloorDeployerObtains theDeployedOffice.- Specified by:
getDeployedOfficein interfaceOfficeFloorDeployer- Parameters:
officeName- Name of theDeployedOffice.- Returns:
DeployedOffice.
-
getDeployedOffices
public DeployedOffice[] getDeployedOffices()
Description copied from interface:OfficeFloorDeployerObtains the currently addedDeployedOfficeinstances.- Specified by:
getDeployedOfficesin interfaceOfficeFloorDeployer- Returns:
- Currently added
DeployedOfficeinstances.
-
link
public void link(OfficeFloorManagedObjectSource managedObjectSource, OfficeFloorInputManagedObject inputManagedObject)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorInputManagedObjectto be input by theOfficeFloorManagedObjectSource.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
managedObjectSource-OfficeFloorManagedObjectSource.inputManagedObject-OfficeFloorInputManagedObject.
-
link
public void link(OfficeFloorManagedObjectSource managedObjectSource, OfficeFloorManagedObjectPool managedObjectPool)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorManagedObjectSourceto be pooled by theOfficeFloorManagedObjectPool.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
managedObjectSource-OfficeFloorManagedObject.managedObjectPool-OfficeFloorManagedObjectPool.
-
link
public void link(OfficeFloorFlowSourceNode flowSourceNode, OfficeFloorFlowSinkNode flowSinkNode)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorFlowSourceNodeto be undertake by theOfficeFloorFlowSinkNode.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
flowSourceNode-OfficeFloorFlowSourceNode.flowSinkNode-OfficeFloorFlowSinkNode.
-
link
public void link(OfficeFloorDependencyRequireNode dependencyRequireNode, OfficeFloorDependencyObjectNode dependencyObjectNode)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorDependencyObjectNodeto be fulfilled by theOfficeFloorDependencyObjectNode.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
dependencyRequireNode-OfficeFloorDependencyRequireNode.dependencyObjectNode-OfficeFloorDependencyObjectNode.
-
link
public void link(OfficeFloorResponsibility responsibility, OfficeFloorTeam officeFloorTeam)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorResponsibilityto theOfficeFloorTeam.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
responsibility-OfficeFloorResponsibility.officeFloorTeam-OfficeFloorTeam.
-
link
public void link(OfficeFloorManagedObjectExecutionStrategy managedObjectExecutionStrategy, OfficeFloorExecutionStrategy executionStrategy)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorManagedObjectExecutionStrategyto theOfficeFloorExecutionStrategy.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
managedObjectExecutionStrategy-OfficeFloorManagedObjectExecutionStrategy.executionStrategy-OfficeFloorExecutionStrategy.
-
link
public void link(OfficeFloorTeam team, OfficeFloorTeamOversight oversight)
Description copied from interface:OfficeFloorDeployerLinks theOfficeFloorTeamto itsOfficeFloorTeamOversight.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
team-OfficeFloorTeam.oversight-OfficeFloorTeamOversight.
-
link
public void link(ManagingOffice managingOffice, DeployedOffice office)
Description copied from interface:OfficeFloorDeployerLinks theManagingOfficeto be managed by theDeployedOffice.- Specified by:
linkin interfaceOfficeFloorDeployer- Parameters:
managingOffice-ManagingOffice.office-DeployedOffice.
-
addIssue
public CompileError addIssue(java.lang.String issueDescription)
Description copied from interface:SourceIssuesAllows the source to add an issue.
This is available to report invalid configuration.
- Specified by:
addIssuein interfaceSourceIssues- Parameters:
issueDescription- Description of the issue.- Returns:
CompileErrorto be used inthrowstatement when addingCompilerIssueto avoid further compiling.
-
addIssue
public CompileError addIssue(java.lang.String issueDescription, java.lang.Throwable cause)
Description copied from interface:SourceIssuesAllows the source to add an issue along with its cause.
This is available to report invalid configuration.
- Specified by:
addIssuein interfaceSourceIssues- Parameters:
issueDescription- Description of the issue.cause- Cause of the issue.- Returns:
CompileErrorto be used inthrowstatement when addingCompilerIssueto avoid further compiling.
-
addProperty
public void addProperty(java.lang.String name, java.lang.String value)Description copied from interface:PropertyConfigurableAdds aPropertyto configure the item.- Specified by:
addPropertyin interfacePropertyConfigurable- Parameters:
name- Name ofProperty.value- Value ofProperty.
-
addManagedObjectSource
public OfficeFloorManagedObjectSource addManagedObjectSource(java.lang.String managedObjectSourceName, SuppliedManagedObjectSourceNode suppliedManagedObject)
Description copied from interface:OfficeFloorNodeAdds aOfficeFloorManagedObjectSourcesupplied from anOfficeFloorSupplier.- Specified by:
addManagedObjectSourcein interfaceOfficeFloorNode- Parameters:
managedObjectSourceName- Name of theOfficeFloorManagedObjectSource.suppliedManagedObject-SuppliedManagedObjectSourceNodeto supply theOfficeFloorManagedObjectSource.- Returns:
OfficeFloorManagedObjectSource.
-
sourceOfficeFloor
public boolean sourceOfficeFloor(CompileContext compileContext)
Description copied from interface:OfficeFloorNodeSources the
OfficeFloorinto thisOfficeFloorNode.This will only source the top level
OfficeSection.- Specified by:
sourceOfficeFloorin interfaceOfficeFloorNode- Parameters:
compileContext-CompileContext.- Returns:
trueif successfully sourced. Otherwisefalsewith issue reported to theCompilerIssues.
-
sourceOfficeFloorTree
public boolean sourceOfficeFloorTree(AutoWirerVisitor autoWirerVisitor, CompileContext compileContext)
Description copied from interface:OfficeFloorNodeSources thisOfficeFloorNodeand all its descendantNodeinstances recursively.- Specified by:
sourceOfficeFloorTreein interfaceOfficeFloorNode- Parameters:
autoWirerVisitor-AutoWirerVisitor.compileContext-CompileContext.- Returns:
trueif successfully sourced. Otherwisefalsewith issue reported to theCompilerIssues.
-
getAvailableTypes
public AvailableType[] getAvailableTypes(CompileContext compileContext)
Description copied from interface:OfficeFloorNodeObtains theAvailableTypeinstances.- Specified by:
getAvailableTypesin interfaceOfficeFloorNode- Parameters:
compileContext-CompileContext.- Returns:
AvailableTypeinstances.
-
loadAutoWireObjectTargets
public AutoWirer<LinkObjectNode> loadAutoWireObjectTargets(AutoWirer<LinkObjectNode> autoWirer, CompileContext compileContext)
Description copied from interface:OfficeFloorNodeLoads theAutoWiretargets for theOfficeFloorManagedObjectinstances.- Specified by:
loadAutoWireObjectTargetsin interfaceOfficeFloorNode- Parameters:
autoWirer-AutoWirerto be loaded with theOfficeFloorManagedObjecttargets.compileContext-CompileContext.- Returns:
AutoWirerwith context for theOfficeFloor.
-
loadAutoWireExtensionTargets
public AutoWirer<ManagedObjectExtensionNode> loadAutoWireExtensionTargets(AutoWirer<ManagedObjectExtensionNode> autoWirer, CompileContext compileContext)
Description copied from interface:OfficeFloorNodeLoads theAutoWireextension targets for theOfficeFloorManagedObject.- Specified by:
loadAutoWireExtensionTargetsin interfaceOfficeFloorNode- Parameters:
autoWirer-AutoWirerto be loaded with theOfficeFloorManagedObjectextension targets.compileContext-CompileContext.- Returns:
AutoWirerwith context for theOfficeFloor.
-
loadAutoWireTeamTargets
public void loadAutoWireTeamTargets(AutoWirer<LinkTeamNode> autoWirer, OfficeTeamRegistry officeTeamRegistry, CompileContext compileContext)
Description copied from interface:OfficeFloorNodeLoads theAutoWiretargets for theOfficeFloorTeaminstances.- Specified by:
loadAutoWireTeamTargetsin interfaceOfficeFloorNode- Parameters:
autoWirer-AutoWireto be loaded with theOfficeFloorTeamtargets.officeTeamRegistry-OfficeTeamRegistry.compileContext-CompileContext.
-
loadOfficeFloorType
public OfficeFloorType loadOfficeFloorType(CompileContext compileContext)
Description copied from interface:OfficeFloorNodeLoads theOfficeFloorType.- Specified by:
loadOfficeFloorTypein interfaceOfficeFloorNode- Parameters:
compileContext-CompileContext.- Returns:
trueif theOfficeFloorTypewas loaded.
-
getOfficeFloorListeners
public OfficeFloorListener[] getOfficeFloorListeners()
Description copied from interface:OfficeFloorNodeObtains theOfficeFloorDeployerconfiguredOfficeFloorListenerinstances.- Specified by:
getOfficeFloorListenersin interfaceOfficeFloorNode- Returns:
OfficeFloorDeployerconfiguredOfficeFloorListenerinstances.
-
isDefaultExecutionStrategy
public boolean isDefaultExecutionStrategy()
Description copied from interface:OfficeFloorNodeIndicates if defaultExecutionStrategyis being used.- Specified by:
isDefaultExecutionStrategyin interfaceOfficeFloorNode- Returns:
trueif defaultExecutionStrategyis being used.
-
deployOfficeFloor
public OfficeFloor deployOfficeFloor(java.lang.String officeFloorName, OfficeFloorBuilder builder, CompileContext compileContext)
Description copied from interface:OfficeFloorNodeDeploys theOfficeFloor.- Specified by:
deployOfficeFloorin interfaceOfficeFloorNode- Parameters:
officeFloorName- Name of theOfficeFloor.builder-OfficeFloorBuilderto build the deployedOfficeFloor.compileContext-CompileContext.- Returns:
OfficeFloor.
-
loadExternalServicing
public void loadExternalServicing(OfficeFloor officeFloor) throws UnknownOfficeException, UnknownFunctionException
Description copied from interface:OfficeFloorNodeLoads theFunctionManagerinstances to externally trigger thisOfficeFloorNode.- Specified by:
loadExternalServicingin interfaceOfficeFloorNode- Parameters:
officeFloor-OfficeFloorfor thisOfficeFloorNode.- Throws:
UnknownOfficeException-UnknownOfficeException.UnknownFunctionException-UnknownFunctionException.
-
getInternalSuppliers
public InternalSupplier[] getInternalSuppliers()
Description copied from interface:OfficeFloorNodeObtains theInternalSupplierinstances.- Specified by:
getInternalSuppliersin interfaceOfficeFloorNode- Returns:
InternalSupplierinstances.
-
-