Interface Allocation
-
- All Superinterfaces:
org.eclipse.emf.cdo.CDOObject
,org.eclipse.emf.cdo.common.id.CDOWithID
,Entity
,EObject
,de.uka.ipd.sdq.identifier.Identifier
,NamedElement
,Notifier
- All Known Implementing Classes:
AllocationImpl
public interface Allocation extends Entity
A representation of the model object 'Allocation'. The allocation repository holding all available allocation contexts of a model.The following features are supported:
- See Also:
AllocationPackage.getAllocation()
- Generated class or method.
- EMF model class or method.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
CommunicatingServersHaveToBeConnectedByLinkingResource(DiagnosticChain diagnostics, Map<Object,Object> context)
boolean
EachAssemblyContextWithinSystemHasToBeAllocatedExactlyOnce(DiagnosticChain diagnostics, Map<Object,Object> context)
Each Assembly of BasicComponents and CompositeComponents used in the referenced System must be allocated.EList<AllocationContext>
getAllocationContexts_Allocation()
Returns the value of the 'Allocation Contexts Allocation' containment reference list.System
getSystem_Allocation()
Returns the value of the 'System Allocation' reference.ResourceEnvironment
getTargetResourceEnvironment_Allocation()
Returns the value of the 'Target Resource Environment Allocation' reference.void
setSystem_Allocation(System value)
Sets the value of the 'System Allocation
' reference.void
setTargetResourceEnvironment_Allocation(ResourceEnvironment value)
Sets the value of the 'Target Resource Environment Allocation
' reference.-
Methods inherited from interface org.eclipse.emf.cdo.CDOObject
cdoConflict, cdoDirectResource, cdoHistory, cdoID, cdoInvalid, cdoLockState, cdoPermission, cdoPrefetch, cdoReadLock, cdoReload, cdoResource, cdoRevision, cdoRevision, cdoState, cdoView, cdoWriteLock, cdoWriteOption
-
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
-
Methods inherited from interface org.palladiosimulator.pcm.core.entity.NamedElement
getEntityName, setEntityName
-
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
-
-
-
-
Field Detail
-
copyright
static final String copyright
- See Also:
- Constant Field Values
- Generated class or method.
-
-
Method Detail
-
getTargetResourceEnvironment_Allocation
ResourceEnvironment getTargetResourceEnvironment_Allocation()
Returns the value of the 'Target Resource Environment Allocation' reference.If the meaning of the 'Target Resource Environment Allocation' reference isn't clear, there really should be more of a description here...
- Returns:
- the value of the 'Target Resource Environment Allocation' reference.
- See Also:
setTargetResourceEnvironment_Allocation(ResourceEnvironment)
,AllocationPackage.getAllocation_TargetResourceEnvironment_Allocation()
- Generated class or method.
- EMF model class or method.
- ordered="false"
-
setTargetResourceEnvironment_Allocation
void setTargetResourceEnvironment_Allocation(ResourceEnvironment value)
Sets the value of the 'Target Resource Environment Allocation
' reference.- Parameters:
value
- the new value of the 'Target Resource Environment Allocation' reference.- See Also:
getTargetResourceEnvironment_Allocation()
- Generated class or method.
-
getSystem_Allocation
System getSystem_Allocation()
Returns the value of the 'System Allocation' reference.If the meaning of the 'System Allocation' reference isn't clear, there really should be more of a description here...
- Returns:
- the value of the 'System Allocation' reference.
- See Also:
setSystem_Allocation(org.palladiosimulator.pcm.system.System)
,AllocationPackage.getAllocation_System_Allocation()
- Generated class or method.
- EMF model class or method.
- required="true" ordered="false"
-
setSystem_Allocation
void setSystem_Allocation(System value)
Sets the value of the 'System Allocation
' reference.- Parameters:
value
- the new value of the 'System Allocation' reference.- See Also:
getSystem_Allocation()
- Generated class or method.
-
getAllocationContexts_Allocation
EList<AllocationContext> getAllocationContexts_Allocation()
Returns the value of the 'Allocation Contexts Allocation' containment reference list. The list contents are of typeAllocationContext
. It is bidirectional and its opposite is 'Allocation Allocation Context
'.If the meaning of the 'Allocation Contexts Allocation' containment reference list isn't clear, there really should be more of a description here...
- Returns:
- the value of the 'Allocation Contexts Allocation' containment reference list.
- See Also:
AllocationPackage.getAllocation_AllocationContexts_Allocation()
,AllocationContext.getAllocation_AllocationContext()
- Generated class or method.
- EMF model class or method.
- opposite="allocation_AllocationContext" containment="true" ordered="false"
-
EachAssemblyContextWithinSystemHasToBeAllocatedExactlyOnce
boolean EachAssemblyContextWithinSystemHasToBeAllocatedExactlyOnce(DiagnosticChain diagnostics, Map<Object,Object> context)
Each Assembly of BasicComponents and CompositeComponents used in the referenced System must be allocated. Things are complicated by the introduction of SubSystems. Here, the Assembly of the SubSystem itself does not have to be allocated. If it is not allocated, all BasicComponents and CompositeComponents contained in this SubSystem (also transitively over several nested and not-allocated SubSystems) need to be allocated. The constraint is realised wth a closure over the AssemblyContext contained in a ComposedStructure.- Parameters:
diagnostics
- The chain of diagnostics to which problems are to be appended.context
- The cache of context-specific information.- Generated class or method.
- EMF model class or method.
- annotation= "http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='-- Get all AssemblyContexts used by this system, that is \n-- 1) the AssemblyContexts directly used in the system and \nself.system_Allocation.assemblyContexts__ComposedStructure\n-- 2) the AssemblyContexts used by SubSystems in the System. Note that if a SubSystem also contains other Subsystems,\n-- we need to get those AssemblyContexts too: Thus, we use a closure here\n->union(self.system_Allocation.assemblyContexts__ComposedStructure->closure(\nencapsulatedComponent__AssemblyContext->select(composites|composites.oclIsTypeOf(pcm::subsystem::SubSystem)).oclAsType(pcm::subsystem::SubSystem)\n.assemblyContexts__ComposedStructure))\n--Now, after we collected all AssemblyContexts somehow used, we check whether they need to be allocated \n--and if yes, if they are allocated.\n->forAll(assemblyCtx|\n--AssemblyContexts that contain SubSystems do not need to be allocated\nassemblyCtx.encapsulatedComponent__AssemblyContext.oclIsTypeOf(pcm::subsystem::SubSystem) or\n--All others need to be allocated. \nself.allocationContexts_Allocation->select(allocationCtx|\nallocationCtx.assemblyContext_AllocationContext = assemblyCtx)->size() = 1)'"
-
CommunicatingServersHaveToBeConnectedByLinkingResource
boolean CommunicatingServersHaveToBeConnectedByLinkingResource(DiagnosticChain diagnostics, Map<Object,Object> context)
- Parameters:
diagnostics
- The chain of diagnostics to which problems are to be appended.context
- The cache of context-specific information.- Generated class or method.
- EMF model class or method.
- annotation= "http://www.eclipse.org/uml2/1.1.0/GenModel body='self.allocationContexts_Allocation->forAll(a | self.allocationContexts_Allocation->forAll(b | \r\n --- if a and b are not on the same server\r\n (a.resourceContainer_AllocationContext <> b.resourceContainer_AllocationContext \r\n and\r\n -- and if the assembly contexts of a and b are connected\r\n self.system_Allocation.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::AssemblyConnector)).oclAsType(pcm::core::composition::AssemblyConnector)->exists(conn | \r\n (conn.providingAssemblyContext_AssemblyConnector = a.assemblyContext_AllocationContext \r\n and \r\n conn.requiringAssemblyContext_AssemblyConnector = b.assemblyContext_AllocationContext )\r\n or \r\n (conn.providingAssemblyContext_AssemblyConnector = b.assemblyContext_AllocationContext \r\n and \r\n conn.requiringAssemblyContext_AssemblyConnector = a.assemblyContext_AllocationContext )\r\n )\r\n )\r\n -- then the servers have to be connected by a linking resource\r\n implies \r\n self.targetResourceEnvironment_Allocation.linkingResources__ResourceEnvironment->exists(l | \r\n -- l connects the two\r\n l.connectedResourceContainers_LinkingResource->includes(a.resourceContainer_AllocationContext)\r\n and \r\n l.connectedResourceContainers_LinkingResource->includes(b.resourceContainer_AllocationContext)\r\n )\r\n ))'"
-
-