org.exolab.castor.xml.util.resolvers
Class AbstractResolverClassCommand

java.lang.Object
  extended by org.exolab.castor.xml.util.resolvers.AbstractResolverClassCommand
All Implemented Interfaces:
ResolverClassCommand
Direct Known Subclasses:
ByDescriptorClass, ByIntrospection, ByMappingLoader

public abstract class AbstractResolverClassCommand
extends java.lang.Object
implements ResolverClassCommand

The abstract resolver command provides the argument checking, writes a debug message and reads the class loader from the properties... All specific code is found in the extended classes.

Since:
1.2
Version:
$Id$
Author:
Joachim Grueneis, jgrueneis AT gmail DOT com

Constructor Summary
AbstractResolverClassCommand()
           
 
Method Summary
protected abstract  java.util.Map internalResolve(java.lang.String className, java.lang.ClassLoader classLoader, java.util.Map props)
          The required parameter checks are in the public method and here we expect that the resolve logic itself is implemented.
 java.util.Map resolve(java.lang.String className, java.util.Map properties)
          The one and only purpose resolver commands are good for ;-) .
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractResolverClassCommand

public AbstractResolverClassCommand()
Method Detail

resolve

public final java.util.Map resolve(java.lang.String className,
                                   java.util.Map properties)
                            throws ResolverException
The one and only purpose resolver commands are good for ;-) . It can be called with className and clazz set, so the command decides which suites it best or at least one of the two arguments set.

Specified by:
resolve in interface ResolverClassCommand
Parameters:
className - the name of the class to resolve
properties - the Properties to be used at resolve
Returns:
a Map of className and XMLClassDescriptor
Throws:
ResolverException - in case that resolving fails fatally

internalResolve

protected abstract java.util.Map internalResolve(java.lang.String className,
                                                 java.lang.ClassLoader classLoader,
                                                 java.util.Map props)
                                          throws ResolverException
The required parameter checks are in the public method and here we expect that the resolve logic itself is implemented.

Parameters:
className - the name of the class to resolve
classLoader - the class loader to use
props - the resolve properties to use
Returns:
a Map of className and XMLClassDescriptor
Throws:
ResolverException - if unrecoverable problems in resolve occured


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