Class PcmRepresentative<E extends org.palladiosimulator.pcm.core.entity.NamedElement>
- java.lang.Object
-
- org.palladiosimulator.protocom.traverse.framework.PcmRepresentative<E>
-
- Direct Known Subclasses:
XAllocation
,XBasicComponent
,XCollectionDataType
,XCompositeComponent
,XCompositeDataType
,XEventGroup
,XInfrastructureInterface
,XOperationInterface
,XRepository
,XResourceEnvironment
,XSystem
,XUsageScenario
public abstract class PcmRepresentative<E extends org.palladiosimulator.pcm.core.entity.NamedElement> extends Object
Abstract class representing a generic PCM model entity. Includes methods to further traverse the underlying PCM model. Note that the generic type E extends NamedElement and not Entity. Due to some (to me unknown) reasons an Allocation is a sub type of Entity, but a ResourceEnvironment is not.
-
-
Field Summary
Fields Modifier and Type Field Description protected List<CopiedFile>
copiedFiles
protected E
entity
The represented element of the loaded PCM model.protected List<GeneratedFile<? extends ICompilationUnit>>
generatedFiles
List of all files to be generated.protected com.google.inject.Injector
injector
-
Constructor Summary
Constructors Constructor Description PcmRepresentative()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
generate()
Generate the files needed for this entity.PcmRepresentative<E>
setEntity(E entity)
Set the entity which will be represented by this object.void
transform()
Transformation process: Traverse through all relevant entities connected to this entity.protected void
traverse()
Traverse through the PCM model, following all relevant connections starting from the represented element.
-
-
-
Field Detail
-
injector
@Inject protected com.google.inject.Injector injector
-
generatedFiles
protected List<GeneratedFile<? extends ICompilationUnit>> generatedFiles
List of all files to be generated.
-
copiedFiles
protected List<CopiedFile> copiedFiles
-
entity
protected E extends org.palladiosimulator.pcm.core.entity.NamedElement entity
The represented element of the loaded PCM model.
-
-
Method Detail
-
setEntity
public PcmRepresentative<E> setEntity(E entity)
Set the entity which will be represented by this object.
-
transform
public void transform()
Transformation process:- Traverse through all relevant entities connected to this entity.
- Generate files necessary for this entity, depending on the language and technology used.
- Store generated files.
-
traverse
protected void traverse()
Traverse through the PCM model, following all relevant connections starting from the represented element. Nothing is traversed in the default case.
-
generate
protected void generate()
Generate the files needed for this entity. Nothing is generated in the default case.
-
-