Interface SubclassRegistry

  • All Known Implementing Classes:
    DefaultSubclassRegistry

    public interface SubclassRegistry
    Interface for registry storing information about subclasses hierarchy
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Set<java.lang.Class> getAllSubclasses​(java.lang.Class parentClass)
      Method returns information about all subclasses (not only direct) for given parent class
      java.util.Set<java.lang.Class> getSubclasses​(java.lang.Class parentClass)
      Method returns information about direct subclasses for given parent class
      void registerSubclass​(java.lang.Class parentClass, java.lang.Class subclass)
      Register direct subclass for given parent class
      void registerSubclasses​(java.lang.Class parentClass, java.util.Set<java.lang.Class> subclasses)
      Method register whole set of subclasses for given class
      void unregisterSubclass​(java.lang.Class parentClass, java.lang.Class subclass)
      Unregister direct subclass for given parent class
      void unregisterSubclasses​(java.lang.Class parentClass)
      Unregister all direct subclasses for given parent class
      void unregisterSubclasses​(java.lang.Class parentClass, java.util.Set<java.lang.Class> subclasses)
      Unregister direct subclasses for given parent class
    • Method Detail

      • getSubclasses

        java.util.Set<java.lang.Class> getSubclasses​(java.lang.Class parentClass)
        Method returns information about direct subclasses for given parent class
        Parameters:
        parentClass - class, for which we want to get subclasses
        Returns:
        direct subclasses set
      • getAllSubclasses

        java.util.Set<java.lang.Class> getAllSubclasses​(java.lang.Class parentClass)
        Method returns information about all subclasses (not only direct) for given parent class
        Parameters:
        parentClass - class, for which we want to get all subclasses in hierarchy
        Returns:
        all subclasses in hierarchy
      • registerSubclass

        void registerSubclass​(java.lang.Class parentClass,
                              java.lang.Class subclass)
        Register direct subclass for given parent class
        Parameters:
        parentClass - class, for which we want to register subclass
        subclass - subclasses, which will be registered
      • registerSubclasses

        void registerSubclasses​(java.lang.Class parentClass,
                                java.util.Set<java.lang.Class> subclasses)
        Method register whole set of subclasses for given class
        Parameters:
        parentClass - class, for which we want to register subclasses
        subclasses - subclasses, which will be registered
      • unregisterSubclass

        void unregisterSubclass​(java.lang.Class parentClass,
                                java.lang.Class subclass)
        Unregister direct subclass for given parent class
        Parameters:
        parentClass - class, for which we want to unregister subclass
        subclass - subclass, which should be unregistered
      • unregisterSubclasses

        void unregisterSubclasses​(java.lang.Class parentClass,
                                  java.util.Set<java.lang.Class> subclasses)
        Unregister direct subclasses for given parent class
        Parameters:
        parentClass - class, for which we want to unregister subclasses
        subclasses - subclasses, which should be unregistered
      • unregisterSubclasses

        void unregisterSubclasses​(java.lang.Class parentClass)
        Unregister all direct subclasses for given parent class
        Parameters:
        parentClass - class, for which we want to unregister subclasses