-
Notifications
You must be signed in to change notification settings - Fork 0
VariantSyncPlugin
VariantSyncPlugin
{ ConfigurationProjectManager
}
Besides being the activator class for the plugin,
VariantSyncPlugin
is a central class with a lot of static methods that gets called throughout the Project, to receive and update Information.
Thus VariantSyncPlugin
provides multiple functions.
One important function of the VariatnSyncPlugin
is, that it gives access to the main datastructure elements
of the current ConfigurationProject
. These are the MappingManager
, FeatureContextManager
, PatchesManager
. It does so via the ConfigurationProjectManager
.
An other important Function of the VariatnSyncPlugin
is the propagation of Events throughout the project.
VariatnSyncPlugin
has a list of IEventListeners
. To throw an Event, classes can call the static method fireEvent which gets called to propagate IVariantSyncEvents
and FeatureIdeEvents
.
VariatnSyncPlugin
then passes the Events to IEventsListeners
after it receives one.
VariatnSyncPlugin
provides an interface to access the eclipse ITextEditor
, IWorkbenchWindow
and Shell
.
And handles other UI related task like connecting the PartAdapter
to the Workbench.
Another important class closely connected to the VariantSyncPlugin
is ConfigurationProjectManager
.
The ConfigurationProjectManager
does the initial task of searching through the workspace, to find the FeatureIDEproject(IFeatureProject
) and the product variants (IProject
).
Then it creates a ConfiguaritionPoject
and stores it in a HashMap, which relates IFeatureProject
and ConfiguaritionPoject
.
ConfiguaritionPoject
stores a single IFeatureProject
and a List of IProjects
.