Class SolutionManager
- java.lang.Object
-
- edu.kit.ipd.are.dsexplore.featurecompletions.weaver.strategy.manager.SolutionManager
-
public final class SolutionManager extends Object
This class provides all operations performed on aMergedRepository
(former concern solution).
-
-
Constructor Summary
Constructors Constructor Description SolutionManager(org.palladiosimulator.pcm.repository.Repository solution)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static boolean
anyCVcontainedInList(List<ComplementumVisnetis> fullfilledCVs, List<ComplementumVisnetis> cvs)
org.palladiosimulator.pcm.repository.RepositoryComponent
createAndAddAdapter(String name)
Creates and add a adapter component to the concern solution repository.org.palladiosimulator.pcm.repository.ProvidedRole
createProvidedRoleBy(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole, String name)
Creates a provided role based on a provided interface of another operation provided role.org.palladiosimulator.pcm.repository.ProvidedRole
createProvidedRoleBy(org.palladiosimulator.pcm.repository.OperationRequiredRole requiredRole)
Creates a provided role based on the complimentary operation required role.org.palladiosimulator.pcm.repository.ProvidedRole
createProvidedRoleBy(org.palladiosimulator.pcm.repository.SourceRole sourceRole)
Creates a provided role based on the complimentary required source role.org.palladiosimulator.pcm.repository.RequiredRole
createRequiredRoleBy(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole)
Creates a required role based on the complimentary operation provided role.org.palladiosimulator.pcm.repository.RequiredRole
createRequiredRoleBy(org.palladiosimulator.pcm.repository.OperationSignature signature)
org.palladiosimulator.pcm.repository.RequiredRole
createRequiredRoleBy(org.palladiosimulator.pcm.repository.SinkRole sinkRole)
Creates a required role based on the complimentary provided sink role.List<org.palladiosimulator.pcm.repository.RepositoryComponent>
getAffectedComponentsByFCCList(List<CompletionComponent> fccs)
Retrieves all components annotated by a set of annotations.List<org.palladiosimulator.pcm.repository.ProvidedRole>
getAllProvidedRoles()
Creates the provided role space which contains all provided roles that occur in the concern solution repository.Optional<org.palladiosimulator.pcm.repository.RepositoryComponent>
getComponentByName(String name)
org.palladiosimulator.pcm.repository.RepositoryComponent
getComponentFullfillingCV(List<org.palladiosimulator.pcm.repository.RepositoryComponent> realizingComponents, List<ComplementumVisnetis> cvs)
Determines a solution component in the set of realizing components that fulfills/provides a CV.org.palladiosimulator.pcm.repository.RepositoryComponent
getFulfillingComponentForComplementum(ComplementumImpl complementum)
Determines a solution component that fulfills the given complementum.List<org.palladiosimulator.pcm.repository.RepositoryComponent>
getRealizingComponentsByFCCList(List<CompletionComponent> fccs, List<org.palladiosimulator.pcm.repository.OperationSignature> providedSigs, List<ComplementumVisnetis> cvs)
Determines the set of solution components that realize the given FCCs and provide the given CVs.org.palladiosimulator.pcm.repository.Repository
getRepository()
-
-
-
Method Detail
-
getComponentByName
public Optional<org.palladiosimulator.pcm.repository.RepositoryComponent> getComponentByName(String name)
-
getAffectedComponentsByFCCList
public List<org.palladiosimulator.pcm.repository.RepositoryComponent> getAffectedComponentsByFCCList(List<CompletionComponent> fccs)
Retrieves all components annotated by a set of annotations.- Parameters:
annotations
- - The set of annotations.- Returns:
- all components annotated by a set of annotations.
-
getRealizingComponentsByFCCList
public List<org.palladiosimulator.pcm.repository.RepositoryComponent> getRealizingComponentsByFCCList(List<CompletionComponent> fccs, List<org.palladiosimulator.pcm.repository.OperationSignature> providedSigs, List<ComplementumVisnetis> cvs)
Determines the set of solution components that realize the given FCCs and provide the given CVs.- Parameters:
fccs
- the given FCCs corresponding to the fc meta architecture.providedSigs
- the perimeter provided role.cvs
- the given CVs.- Returns:
- the set of solution components that realize the given FCCs and provide the given CVs.
-
getComponentFullfillingCV
public org.palladiosimulator.pcm.repository.RepositoryComponent getComponentFullfillingCV(List<org.palladiosimulator.pcm.repository.RepositoryComponent> realizingComponents, List<ComplementumVisnetis> cvs)
Determines a solution component in the set of realizing components that fulfills/provides a CV.- Parameters:
realizingComponents
- the set of realizing components.cvs
- the CVs.- Returns:
- a solution component in the set of realizing components that fulfills/provides a CV.
-
anyCVcontainedInList
public static boolean anyCVcontainedInList(List<ComplementumVisnetis> fullfilledCVs, List<ComplementumVisnetis> cvs)
-
createAndAddAdapter
public org.palladiosimulator.pcm.repository.RepositoryComponent createAndAddAdapter(String name)
Creates and add a adapter component to the concern solution repository.- Parameters:
name
- - The name of the adapter component.- Returns:
- the created adapter component.
-
createRequiredRoleBy
public org.palladiosimulator.pcm.repository.RequiredRole createRequiredRoleBy(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole)
Creates a required role based on the complimentary operation provided role.- Parameters:
providedRole
- - The complimentary operation provided role.- Returns:
- the created required role.
-
createRequiredRoleBy
public org.palladiosimulator.pcm.repository.RequiredRole createRequiredRoleBy(org.palladiosimulator.pcm.repository.OperationSignature signature)
-
createRequiredRoleBy
public org.palladiosimulator.pcm.repository.RequiredRole createRequiredRoleBy(org.palladiosimulator.pcm.repository.SinkRole sinkRole)
Creates a required role based on the complimentary provided sink role.- Parameters:
sinkRole
- - The complimentary provided sink role.- Returns:
- the created required role.
-
createProvidedRoleBy
public org.palladiosimulator.pcm.repository.ProvidedRole createProvidedRoleBy(org.palladiosimulator.pcm.repository.OperationRequiredRole requiredRole)
Creates a provided role based on the complimentary operation required role.- Parameters:
requiredRole
- - The complimentary operation required role.- Returns:
- the created provided role.
-
createProvidedRoleBy
public org.palladiosimulator.pcm.repository.ProvidedRole createProvidedRoleBy(org.palladiosimulator.pcm.repository.SourceRole sourceRole)
Creates a provided role based on the complimentary required source role.- Parameters:
sourceRole
- - The complimentary required source role.- Returns:
- the created provided role.
-
createProvidedRoleBy
public org.palladiosimulator.pcm.repository.ProvidedRole createProvidedRoleBy(org.palladiosimulator.pcm.repository.OperationProvidedRole providedRole, String name)
Creates a provided role based on a provided interface of another operation provided role.- Parameters:
sourceRole
- - The operation provided role referencing the provided interface.- Returns:
- the created provided role.
-
getAllProvidedRoles
public List<org.palladiosimulator.pcm.repository.ProvidedRole> getAllProvidedRoles()
Creates the provided role space which contains all provided roles that occur in the concern solution repository.- Returns:
- the provided role space.
-
getRepository
public org.palladiosimulator.pcm.repository.Repository getRepository()
-
getFulfillingComponentForComplementum
public org.palladiosimulator.pcm.repository.RepositoryComponent getFulfillingComponentForComplementum(ComplementumImpl complementum)
Determines a solution component that fulfills the given complementum.- Parameters:
complementum
- the given complementum.- Returns:
- a solution component that fulfills the given complementum.
-
-