Class ClassManager

    • Constructor Detail

      • ClassManager

        protected ClassManager()
        Initializes the manager.
    • Method Detail

      • initialize

        protected void initialize()
        Configures the actual managers and data structures.
      • determineManager

        protected CustomClassManager determineManager​(String classname)
        Determines the manager to use for the class.
        Parameters:
        classname - the class to get the manager for
        Returns:
        the manager
      • forName

        public Class forName​(String classname)
                      throws Exception
        Obtains the Class for the name.
        Parameters:
        classname - the class to load
        Returns:
        the class
        Throws:
        Exception - if loading failed
      • isAvailable

        public boolean isAvailable​(String classname)
        Checks whether the class can be loaded.
        Parameters:
        classname - the class name to check
        Returns:
        true if the class exists
      • deepCopy

        public Object deepCopy​(Object o)
        Creates a deep copy of the given object (must be serializable!). Returns null in case of an error.
        Parameters:
        o - the object to copy
        Returns:
        the deep copy
      • deepCopy

        public Object deepCopy​(Object o,
                               boolean silent)
        Creates a deep copy of the given object (must be serializable!). Returns null in case of an error.
        Parameters:
        o - the object to copy
        silent - whether to suppress error output
        Returns:
        the deep copy
      • statistics

        public Map<String,​Integer> statistics()
        Returns counts per class manager.
        Returns:
        the statistics
      • getSingleton

        public static ClassManager getSingleton()
        Returns the singleton of the class manager.
        Returns:
        the singleton