Interface GenericFactory

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      <A extends java.lang.annotation.Annotation>
      A
      findAnnotationOnBean​(java.lang.String beanName, java.lang.Class<A> annotationType)
      Find a Annotation of annotationType on the specified bean, traversing its interfaces and super classes if no annotation can be found on the given class itself.
      <T> T getBean​(java.lang.Class<T> type)
      Return an instance for the class to the given type.
      <T> T getBean​(java.lang.String name)
      Return an instance for the class with the given alias.
      java.lang.Object getBean​(java.lang.String name, java.lang.Object... args)
      Return an instance for the class with the given alias and constructor arguments.
      java.lang.String[] getBeanNamesForType​(java.lang.Class<?> type)
      Return the names of beans matching the given type (including subclasses), judging from either bean definitions or the value of getObjectType in the case of FactoryBeans.
      void removeBean​(java.lang.String beanName)
      Removes bean from current scope.
    • Method Detail

      • getBean

        <T> T getBean​(java.lang.String name)
        Return an instance for the class with the given alias.
        Type Parameters:
        T - type of the bean
        Parameters:
        name - logical name used in the configuration file.
        Returns:
        instance of the class.
      • getBean

        <T> T getBean​(java.lang.Class<T> type)
        Return an instance for the class to the given type.
        Type Parameters:
        T - type of the bean
        Parameters:
        type - interface type.
        Returns:
        instance of the class.
      • getBean

        java.lang.Object getBean​(java.lang.String name,
                                 java.lang.Object... args)
        Return an instance for the class with the given alias and constructor arguments.
        Parameters:
        name - logical name used in the configuration file.
        args - Constructor arguments
        Returns:
        instance of the class.
      • removeBean

        void removeBean​(java.lang.String beanName)
        Removes bean from current scope.
        Parameters:
        beanName - id or alias of the bean
      • getBeanNamesForType

        java.lang.String[] getBeanNamesForType​(java.lang.Class<?> type)
        Return the names of beans matching the given type (including subclasses), judging from either bean definitions or the value of getObjectType in the case of FactoryBeans.
        Parameters:
        type - type of the requested beans
        Returns:
        the names of beans (or objects created by FactoryBeans) matching the given object type (including subclasses), or an empty array if none
      • findAnnotationOnBean

        <A extends java.lang.annotation.Annotation> A findAnnotationOnBean​(java.lang.String beanName,
                                                                           java.lang.Class<A> annotationType)
        Find a Annotation of annotationType on the specified bean, traversing its interfaces and super classes if no annotation can be found on the given class itself.
        Type Parameters:
        A - annotation
        Parameters:
        beanName - id or alias of the bean
        annotationType - requested annotation type
        Returns:
        the annotation of the given type found, or null