Class ContainerUtil


  • public class ContainerUtil
    extends Object
    Since:
    Oct 28, 2004
    Version:
    $Id: ContainerUtil.java 9894 2006-10-31 02:52:41Z tuan08 $
    Author:
    Tuan Nguyen (tuan08@users.sourceforge.net)
    • Constructor Detail

      • ContainerUtil

        public ContainerUtil()
    • Method Detail

      • hasInjectableConstructor

        public static boolean hasInjectableConstructor​(Class<?> clazz)
        Indicates whether or not the given Class has a constructor annotated with Inject
      • hasOnlyEmptyPublicConstructor

        public static boolean hasOnlyEmptyPublicConstructor​(Class<?> clazz)
        Indicates whether or not the given Class has only a public non argument constructor
      • hasFieldOrMethodWithInject

        public static boolean hasFieldOrMethodWithInject​(Class<?> clazz)
        Indicates whether or not this class or one of its super class has at least one Inject annotation on a field or a method
      • getScope

        public static Class<? extends Annotation> getScope​(Class<?> clazz)
                                                    throws DefinitionException
        Gives the scope defined for the given class
        Parameters:
        clazz - the class for which we want the scope
        Returns:
        a class representing the annotation type of the scope
        Throws:
        DefinitionException - in case the definition of the scope is not correct
      • getScope

        public static Class<? extends Annotation> getScope​(Class<?> clazz,
                                                           boolean ignoreExplicit)
                                                    throws DefinitionException
        Gives the scope defined for the given class
        Parameters:
        clazz - the class for which we want the scope
        ignoreExplicit - indicates whether the explicit scope must be ignored
        Returns:
        a class representing the annotation type of the scope
        Throws:
        DefinitionException - in case the definition of the scope is not correct
      • isSingleton

        public static boolean isSingleton​(Class<?> clazz)
        Indicates whether or not the given Class is a singleton or as the scope set to ApplicationScoped
      • loadProperties

        public static Map<String,​String> loadProperties​(URL url)
        Loads the properties file corresponding to the given url
        Parameters:
        url - the url of the properties file
        Returns:
        a Map of properties
      • loadProperties

        public static Map<String,​String> loadProperties​(URL url,
                                                              boolean resolveVariables)
        Loads the properties file corresponding to the given url
        Parameters:
        url - the url of the properties file
        resolveVariables - indicates if the variables must be resolved
        Returns:
        a Map of properties
      • createProxy

        public static <T> T createProxy​(Class<T> superClass,
                                        javax.inject.Provider<T> provider)
                                 throws javax.enterprise.inject.UnproxyableResolutionException
        Creates a proxy of the given super class whose instance will be created accessed lazily thanks to a provider
        Parameters:
        superClass - the super class of the proxy to create
        provider - the provider that will create the instance lazily
        Returns:
        a proxy of the given super class
        Throws:
        javax.enterprise.inject.UnproxyableResolutionException - if any issue occurs while creating the proxy
      • getServletContextName

        public static String getServletContextName​(javax.servlet.ServletContext context)
        Gives the context name thanks to the method ServletContext.getServletContextName() if not null otherwise it will extract the value from the value of ServletContext.getContextPath()
        Parameters:
        context - the context from which we want to extract the name of the context
        Returns:
        the context name