Interface ScenarioManager
-
- All Known Implementing Classes:
ConcreteScenarioManager
public interface ScenarioManager
Scenario Manager defines the abstraction layer for managing scenarios
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
createCurrVariant(int idx, IProgressMonitor progressMonitor)
generates variant i from the base models by copying the files into configuration_i subdirectory of the scenario folder of the current project.URI
getCurrVariantUri()
returns the uri of the current variant generated by the function createCurrVariant.Map<String,List<EObject>>
loadCurrVariantModels()
loads and returns the different pcm models that must be varied of the current variant.void
register(List<String> knownVariingModelTypes)
registers the known varying model types of the pcm for later loading.void
reportsVariationPoints(Statespace statespace, IProgressMonitor progressMonitor)
writes the different variation points into the reportsvoid
reportVariation(StatespaceIterator it, IProgressMonitor progressMonitor)
writes the current state of the statespace iterator into the reportsvoid
storeCurrVariantModels(Map<String,List<EObject>> models)
store the pcm models that were loaded with the function loadCurrVariantModels.
-
-
-
Method Detail
-
createCurrVariant
void createCurrVariant(int idx, IProgressMonitor progressMonitor) throws CoreException
generates variant i from the base models by copying the files into configuration_i subdirectory of the scenario folder of the current project.- Parameters:
idx
- specifies the id number of the current variantprogressMonitor
- progress monitor for status reporting- Throws:
CoreException
- if existing configuration cannot be deleted or new configuration cannot be generated
-
register
void register(List<String> knownVariingModelTypes)
registers the known varying model types of the pcm for later loading.- Parameters:
knownVariingModelTypes
- specifies a list with the names of the known model that should be varied.
-
loadCurrVariantModels
Map<String,List<EObject>> loadCurrVariantModels() throws CoreException
loads and returns the different pcm models that must be varied of the current variant. This function requires a single call of the function register and a call of the function createCurrVariant.- Returns:
- a map between model type as string and loaded models of this type
- Throws:
CoreException
- if the result directory or its content can not be reached
-
storeCurrVariantModels
void storeCurrVariantModels(Map<String,List<EObject>> models) throws IOException
store the pcm models that were loaded with the function loadCurrVariantModels.- Parameters:
models
- specifies the models that shall be stored- Throws:
IOException
- if writing of one of the models fails
-
getCurrVariantUri
URI getCurrVariantUri()
returns the uri of the current variant generated by the function createCurrVariant. return the platform uri to the current variant.
-
reportsVariationPoints
void reportsVariationPoints(Statespace statespace, IProgressMonitor progressMonitor) throws CoreException
writes the different variation points into the reports- Parameters:
statespace
- the statespace to reportprogressMonitor
- progress monitor for status reporting- Throws:
CoreException
- if the writing into the report fails
-
reportVariation
void reportVariation(StatespaceIterator it, IProgressMonitor progressMonitor) throws CoreException
writes the current state of the statespace iterator into the reports- Parameters:
it
- the StatespaceIterator to reportprogressMonitor
- progress monitor for status reporting- Throws:
CoreException
- if the writing into the report fails
-
-