Interface SubclassRegistry

All Known Implementing Classes:
DefaultSubclassRegistry

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

    • getSubclasses

      Set<Class> getSubclasses(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

      Set<Class> getAllSubclasses(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(Class parentClass, 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(Class parentClass, Set<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(Class parentClass, 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(Class parentClass, Set<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(Class parentClass)
      Unregister all direct subclasses for given parent class
      Parameters:
      parentClass - class, for which we want to unregister subclasses