Class SPLsManager

  • All Implemented Interfaces:
    net.ssehub.easy.instantiation.core.model.IInstantiatorProjectManager

    public class SPLsManager
    extends java.lang.Object
    implements net.ssehub.easy.instantiation.core.model.IInstantiatorProjectManager
    This class manages all available ProductLineProjects.
    Author:
    El-Sharkawy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static SPLsManager INSTANCE  
      private static net.ssehub.easy.basics.logger.EASyLoggerFactory.EASyLogger LOGGER  
      private java.util.HashMap<java.lang.String,​PLPInfo> plProjects
      ID and reference for found PLPInfos.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private SPLsManager()
      Constructor for the singelton.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addPLP​(PLPInfo plp)
      Adds a new product line project to the list of available product lines.
      PLPInfo getPLP​(java.lang.String projectID)  
      java.lang.String getPLPName​(java.lang.String projectID)  
      java.util.HashMap<java.lang.String,​PLPInfo> getProductLineProjects()
      Returns a copy of the current productline-projects-map.
      java.lang.String getProjectPath​(java.lang.String projectID)  
      void removePLP​(java.lang.String projectID)
      Removes a project from the list of currently available product lines.
      private void resetHashMaps()
      Clears all stored configuration paths and plp information.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LOGGER

        private static final net.ssehub.easy.basics.logger.EASyLoggerFactory.EASyLogger LOGGER
      • plProjects

        private java.util.HashMap<java.lang.String,​PLPInfo> plProjects
        ID and reference for found PLPInfos. A 2-tuple in the form of (projectID, PLP).
    • Constructor Detail

      • SPLsManager

        private SPLsManager()
        Constructor for the singelton.
    • Method Detail

      • resetHashMaps

        private void resetHashMaps()
        Clears all stored configuration paths and plp information.
        Since:
        21.04.2012
      • addPLP

        public void addPLP​(PLPInfo plp)
        Adds a new product line project to the list of available product lines. This method should be used when the persistence layer reads the configuration file.
        Parameters:
        plp - The Product Line Project which should be added to the list.
      • removePLP

        public void removePLP​(java.lang.String projectID)
        Removes a project from the list of currently available product lines. Additionally removes references of predecessors and successors
        Parameters:
        projectID - The ID of the project, which should be removed.
      • getProductLineProjects

        public java.util.HashMap<java.lang.String,​PLPInfo> getProductLineProjects()
        Returns a copy of the current productline-projects-map. A 2-tuple in the form of (projectID, PLP).
        Returns:
        Copy of pl_projects
      • getProjectPath

        public java.lang.String getProjectPath​(java.lang.String projectID)
        Specified by:
        getProjectPath in interface net.ssehub.easy.instantiation.core.model.IInstantiatorProjectManager
      • getPLPName

        public java.lang.String getPLPName​(java.lang.String projectID)
        Specified by:
        getPLPName in interface net.ssehub.easy.instantiation.core.model.IInstantiatorProjectManager
      • getPLP

        public PLPInfo getPLP​(java.lang.String projectID)
        Specified by:
        getPLP in interface net.ssehub.easy.instantiation.core.model.IInstantiatorProjectManager