Interface ResolverStrategy

  • All Known Implementing Classes:
    CastorXMLStrategy

    public interface ResolverStrategy
    A resolver strategy implements how ClassDescriptor's are found for a given class. It uses multiple ResolveCommand's for first time resolution, but also some caching of already evaluated classes.
    Since:
    1.2
    Version:
    $Revision$ $Date$
    Author:
    Joachim Grueneis
    • Field Detail

      • PROPERTY_CLASS_LOADER

        static final java.lang.String PROPERTY_CLASS_LOADER
        To set the class loader property for resolving.
        See Also:
        Constant Field Values
      • PROPERTY_USE_INTROSPECTION

        static final java.lang.String PROPERTY_USE_INTROSPECTION
        To set the use introspection property for resolving.
        See Also:
        Constant Field Values
      • PROPERTY_INTROSPECTOR

        static final java.lang.String PROPERTY_INTROSPECTOR
        To set the introspector property for resolving.
        See Also:
        Constant Field Values
      • PROPERTY_LOAD_PACKAGE_MAPPINGS

        static final java.lang.String PROPERTY_LOAD_PACKAGE_MAPPINGS
        To set the LoadPackageMappings property for resolving.
        See Also:
        Constant Field Values
      • PROPERTY_MAPPING_LOADER

        static final java.lang.String PROPERTY_MAPPING_LOADER
        To set the mapping loader property for resolving.
        See Also:
        Constant Field Values
    • Method Detail

      • setProperty

        void setProperty​(java.lang.String key,
                         java.lang.Object value)
        To set properties for strategy and/or commands.
        Parameters:
        key - name of the property
        value - value the property is set to
      • resolveClass

        ClassDescriptor resolveClass​(ResolverStrategy.ResolverResults resolverResults,
                                     java.lang.String className)
                              throws ResolverException
        Implementes a strategy how a class is resolved into a list of class descriptors.
        Parameters:
        resolverResults - to put the resolver reszlts into
        className - the class to resolve
        Returns:
        the ClassDescriptor for the class or null if the class couldn't be resolved
        Throws:
        ResolverException - in case that resolving fails fatally
      • resolvePackage

        void resolvePackage​(ResolverStrategy.ResolverResults resolverResults,
                            java.lang.String packageName)
                     throws ResolverException
        Implementes a strategy how a package is resolved into a list of class descriptors.
        Parameters:
        resolverResults - to put the resolver reszlts into
        packageName - the package to resolve
        Throws:
        ResolverException - in case that resolving fails fatally