org.exolab.castor.xml.util.resolvers

Class CastorXMLStrategy

Implemented Interfaces:
ResolverStrategy

public class CastorXMLStrategy
extends java.lang.Object
implements ResolverStrategy

The Castor XML resolver strategy implements the resolving behaviour as it had been implmented before this refactoring step. Meaning that:
It uses multiple steps to find a class descriptor for a class.
It uses a cache of class descriptors
A class that couldn't be resolved once is marked as unresolvable and will not be resolved again - even on a second call.
Version:
$Revision$ $Date$
Authors:
Joachim Grueneis
Steven Dolg
Since:
1.2

Fields inherited from interface org.exolab.castor.xml.util.ResolverStrategy

PROPERTY_CLASS_LOADER, PROPERTY_INTROSPECTOR, PROPERTY_LOAD_PACKAGE_MAPPINGS, PROPERTY_MAPPING_LOADER, PROPERTY_USE_INTROSPECTION

Constructor Summary

CastorXMLStrategy()
CastorXMLStrategy requires a configuration to be set.

Method Summary

ClassDescriptor
resolveClass(ResolverStrategy.ResolverResults resolverResults, String className)
void
resolvePackage(ResolverResults resolverResults, String packageName)
void
setProperty(String key, Object value)

Constructor Details

CastorXMLStrategy

public CastorXMLStrategy()
CastorXMLStrategy requires a configuration to be set. Within the constructor the commands building the strategy are instantiated, a command configuration is created and the descriptor cache.

Method Details

resolveClass

public ClassDescriptor resolveClass(ResolverStrategy.ResolverResults resolverResults,
                                    String className)
            throws ResolverException
Specified by:
resolveClass in interface ResolverStrategy

resolvePackage

public void resolvePackage(ResolverResults resolverResults,
                           String packageName)
            throws ResolverException

setProperty

public void setProperty(String key,
                        Object value)
Specified by:
setProperty in interface ResolverStrategy

Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com