org.norther.tammi.root.db
Class AbstractPersisterFactory

java.lang.Object
  extended by org.norther.tammi.core.base.Adaptee
      extended by org.norther.tammi.core.config.DefaultConfigurable
          extended by org.norther.tammi.core.config.DefaultConfigurableFactory
              extended by org.norther.tammi.root.db.AbstractPersisterFactory
All Implemented Interfaces:
Serializable, EventListener, NotificationBroadcaster, NotificationEmitter, TraceListener, Manageable, MBeanDelegate, ObjectFactory, Refreshable, CacheClient, KeyCacheClient, Configurable, ConfigurableFactory, PersisterFactory, PersisterListener
Direct Known Subclasses:
DefaultHibernatePersisterFactory, DefaultOJBPersisterFactory, DefaultXMLPersisterFactory

public abstract class AbstractPersisterFactory
extends DefaultConfigurableFactory
implements PersisterFactory, PersisterListener

An abstract implementation of PersisterFactory.

Author:
Ilkka Priha
See Also:
Serialized Form

Field Summary
protected static String DESCRIPTION_SUFFIX
          The description suffix.
protected static String DOCTYPE
          The DOCTYPE keyword (XML is case-sensitive).
protected static String PRINCIPAL_CLASS_NAME
          The principal class name.
protected static String XML_HEADER
          The XML version header.
 
Fields inherited from class org.norther.tammi.core.config.DefaultConfigurable
MODIFIED, SYNCHRONIZED, UNMODIFIED
 
Fields inherited from class org.norther.tammi.core.base.Adaptee
ADAPTEE_NOTIF_DESCRIPTION, ADAPTEE_NOTIFICATIONS
 
Fields inherited from interface org.norther.tammi.root.db.PersisterFactory
ANY_ALIAS, EXT_BASE_CLASS_NAME, EXT_BEGIN_CLASS, EXT_BEGIN_FIELD, EXT_BLANK_ACCEPTED, EXT_CLONEABLE, EXT_COLLECTION, EXT_COMPARATOR_CLASS_NAME, EXT_CORRELATIVE, EXT_DESCENDING, EXT_DESCRIPTION, EXT_DETAIL, EXT_DISABLED, EXT_EMPTY_ACCEPTED, EXT_END_CLASS, EXT_END_FIELD, EXT_ENUM_NAME, EXT_ENUM_VALUE, EXT_ENUMERATED, EXT_EXPORTER_CLASS_NAME, EXT_GROUP, EXT_IMPORTER_CLASS_NAME, EXT_INDEX, EXT_INTERACTIVE, EXT_LOCAL, EXT_LOCALIZED, EXT_MANDATORY, EXT_MAX_VALUE, EXT_MIN_VALUE, EXT_NAME_PATTERN, EXT_OPTIONS, EXT_ORDER_BY, EXT_ORDERED, EXT_PATTERN, EXT_PRIMARY, EXT_READABLE, EXT_REFERENCE, EXT_SERIALIZED, EXT_SHADOW, EXT_SORTED, EXT_TRACEABLE, EXT_TRANSIENT, EXT_TRIMMED, EXT_TYPE, EXT_VALIDATOR_CLASS_NAME, EXT_VALUE, EXT_VISIBLE, EXT_WRITABLE, JDBC_TYPE_PROPERTY
 
Fields inherited from interface org.norther.tammi.core.base.MBeanDelegate
ARRAY_TYPE, OBJECT_TYPE, PRIMITIVE_TYPE, STRING_TYPE
 
Constructor Summary
AbstractPersisterFactory()
          Constructs a new factory.
 
Method Summary
 void addClassDescriptor(String descriptor)
          Adds a new class descriptor for all connections in the repository.
 void addClassDescriptor(String expr, String descriptor)
          Adds a new class descriptor for the specified connections in the repository.
 Set cacheKeySet()
          Returns the cache key set.
 void clearCached()
          Clears all cached entries without notifying.
 void clearCaches()
          Removes all caches.
 void expireCached(long timestamp)
          Expires all cached entries notifying them about expiration.
 void expireFraction(long timestamp, float fraction)
          Expires the specified fraction of cached entries notifying them about expiration.
protected  VariableAttributeInfo getAttributeInfo(String className, String name, Configuration config, MBeanReference owner)
          Gets attribute info for an auxiliary attribute.
protected  VariableAttributeInfo getAttributeInfo(String name, String type, String descr, Configuration config, MBeanReference owner)
          Gets the default attribute info.
 String getAttributeType(String jdbcType)
          Gets the Java attribute type corresponding to the specified JDBC type.
 ConcurrentMap getCache(boolean create)
          Gets and optionally creates the cache.
 ConcurrentMap getCache(String key, boolean create)
          Gets and optionally creates the cache for the specified key.
protected  Comparator getComparator(Configuration config)
          Gets the comparator property, if set.
 String getConnectionDTD()
          Gets the connection DTD.
protected abstract  String getDefaultConnectionDTD()
          Gets the default connection DTD.
protected abstract  String getDefaultRepositoryDTD()
          Gets the default repository DTD.
protected  List getEnumeration(Configuration config)
          Gets the enumeration property, if set.
protected static String getJdbcTypeName(int type)
          Gets the name of the specified JDBC type.
 long getLastModified(String key)
          Gets the last modification time of the specified connection.
protected abstract  List getParsedAttributeInfo(String className, Object repository, OrderedMap externals, Map types)
          Gets the parsed attributes of a named class in the repository.
 long getRefreshed()
          Gets the last refresh timestamp.
 String getRepositoryDTD()
          Gets the repository DTD.
protected  MBeanReference getVariableRegistryMBean()
          Gets a reference to the variable registry MBean.
 ObjectName getVariableRegistryName()
          Gets the the variable registry of this factory.
 boolean isCachingDisabled()
          Checks whether the caching is disabled.
 boolean isCombinedFactoryCache()
          Checks whether objects from all connections should be cached in only one combined factory cache.
 boolean isRefreshReferencesEnabled()
          Checks whether automatic refresh of references is enabled.
 boolean isTraceReferencesDisabled()
          Checks whether traced refresh of references is disabled.
 Set jdbcTypeSet()
          Returns a read-only set of JDBC types mapped either to a default type or to a specified attribute type.
 void modified(String key, long msecs)
          Invoked when modified.
 void postmanaged()
          This method is called when the implementing adaptee has been managed either during post-registration of the corresponding adapter MBean or just after it is explicitly added to the adapter MBean during run-time.
 Collection query(String className, String expr, boolean sql)
          Queries for instances of the specified class by applying a query language.
 Collection query(String key, String className, String expr, boolean sql)
          Queries for instances of the specified class through the named connection by applying a query language.
 void refresh()
          Refreshes the MBean.
protected  void registerDynamicAttributes(OrderedMap variables, Object repository, Map types)
          Registers dynamic attributes of the specified variables.
 void removeAttributeType(String jdbcType)
          Removes the Java attribute type corresponding to the specified JDBC type and restores the default mapping of the corresponding JDBC type.
 void removeCache()
          Removes the cache.
 void removeCache(String key)
          Removes the specified cache.
 void removeConnectionDescriptor(String key)
          Removes the default connection descriptor from the repository.
protected  String resolveDescriptor(String descriptor, String dtd, String tag)
          Resolves the input source of a descriptor.
protected  StringBuilder resolveInlineDTD(PathFinder finder, String key, String path, String tag)
          Resolves an inline DOCTYPE and DTD.
protected  String resolveJdbcAlias(String alias)
          Resolves a JDBC alias containing a parametrized local path that must be replaced with a real one.
 void setAttributeType(String jdbcType, String fieldType)
          Sets the Java attribute type corresponding to the specified JDBC type.
 void setCachingDisabled(boolean flag)
          Sets the caching disabled flag.
 void setCombinedFactoryCache(boolean flag)
          Sets whether objects from all connections should be cached in only one combined factory cache.
 void setConnectionDescriptor(String descriptor)
          Sets a connection descriptor in the repository.
 void setConnectionDTD(String path)
          Sets the connection DTD.
 void setRefreshReferencesEnabled(boolean flag)
          Sets whether automatic refresh of references is enabled.
 void setRepositoryDTD(String path)
          Sets the repository DTD.
 void setTraceReferencesDisabled(boolean flag)
          Sets whether traced refresh of references is disabled.
 void setVariableRegistryName(ObjectName registry)
          Sets the variable registry of this factory.
 void unmanaged()
          This method is called when the implementing adaptee is unmanaged either during pre-deregistration of the corresponding adapter MBean or just before it is explicitly removed from the adapter MBean during run-time.
 
Methods inherited from class org.norther.tammi.core.config.DefaultConfigurableFactory
getInstance, getInstance, getInstance, getInstance, isLoaderSupported
 
Methods inherited from class org.norther.tammi.core.config.DefaultConfigurable
addProperty, addProperty, clearProperties, containsProperty, getConfigKey, getConfiguration, getModifiedState, getProperties, getProperty, getPropertyFilePath, indexOfProperty, loadConfiguration, loadConfiguration, loadConfiguration, modified, propertyMap, propertyMap, removeProperty, removeProperty, setConfigKey, setModifiedState, setProperties, setProperty, setPropertyFilePath, setPropertyFilePath, storeProperties
 
Methods inherited from class org.norther.tammi.core.base.Adaptee
addAdaptee, addNotificationListener, getAttributeSupport, getBroker, getCanonicalName, getDomain, getFactory, getLoader, getLog, getLog, getMBean, getMBeanServer, getNotificationInfo, getObjectName, getRegistrationTime, getSequenceNumber, hasListeners, isRegistered, premanaged, removeNotificationListener, removeNotificationListener, sendNotification, sendNotification, sendNotification, sendNotification, unregister
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.norther.tammi.root.db.PersisterFactory
addClassDescriptor, clearClassDescriptors, clearConnectionDescriptors, containsClassDescriptor, containsConnectionDescriptor, getConnectionURL, getConnectionUsername, getDefaultConnectionKey, removeConnectionDescriptor, setConnectionDescriptor, setConnectionPassword, setConnectionURL, setConnectionUsername, setDefaultConnectionKey, setDefaultConnectionKey
 
Methods inherited from interface org.norther.tammi.core.base.ObjectFactory
getInstance, getInstance, getInstance, getInstance, isLoaderSupported
 
Methods inherited from interface org.norther.tammi.core.config.Configurable
addProperty, addProperty, clearProperties, containsProperty, getConfigKey, getProperties, getProperty, getPropertyFilePath, indexOfProperty, propertyMap, propertyMap, removeProperty, removeProperty, setConfigKey, setProperties, setProperty, setPropertyFilePath, setPropertyFilePath, storeProperties
 

Field Detail

PRINCIPAL_CLASS_NAME

protected static final String PRINCIPAL_CLASS_NAME
The principal class name.


XML_HEADER

protected static final String XML_HEADER
The XML version header.

See Also:
Constant Field Values

DOCTYPE

protected static final String DOCTYPE
The DOCTYPE keyword (XML is case-sensitive).

See Also:
Constant Field Values

DESCRIPTION_SUFFIX

protected static final String DESCRIPTION_SUFFIX
The description suffix.

See Also:
Constant Field Values
Constructor Detail

AbstractPersisterFactory

public AbstractPersisterFactory()
Constructs a new factory.

Method Detail

getJdbcTypeName

protected static String getJdbcTypeName(int type)
Gets the name of the specified JDBC type.

Parameters:
type - the type code.
Returns:
the type name.

postmanaged

public void postmanaged()
Description copied from interface: Manageable
This method is called when the implementing adaptee has been managed either during post-registration of the corresponding adapter MBean or just after it is explicitly added to the adapter MBean during run-time.

Specified by:
postmanaged in interface Manageable
Overrides:
postmanaged in class Adaptee

unmanaged

public void unmanaged()
               throws Exception
Description copied from interface: Manageable
This method is called when the implementing adaptee is unmanaged either during pre-deregistration of the corresponding adapter MBean or just before it is explicitly removed from the adapter MBean during run-time.

Specified by:
unmanaged in interface Manageable
Overrides:
unmanaged in class Adaptee
Throws:
Exception - if the adaptee refused to be unmanaged.

isCachingDisabled

public boolean isCachingDisabled()
Description copied from interface: CacheClient
Checks whether the caching is disabled.

Specified by:
isCachingDisabled in interface CacheClient
Returns:
true if the caching is disabled, true otherwise.

setCachingDisabled

public void setCachingDisabled(boolean flag)
Description copied from interface: CacheClient
Sets the caching disabled flag.

Specified by:
setCachingDisabled in interface CacheClient
Parameters:
flag - the caching disabled flag.

expireCached

public void expireCached(long timestamp)
Description copied from interface: CacheClient
Expires all cached entries notifying them about expiration.

Specified by:
expireCached in interface CacheClient
Parameters:
timestamp - the timestamp of the expiration.

expireFraction

public void expireFraction(long timestamp,
                           float fraction)
Description copied from interface: CacheClient
Expires the specified fraction of cached entries notifying them about expiration.

Specified by:
expireFraction in interface CacheClient
Parameters:
timestamp - the timestamp of the expiration.
fraction - the fraction of entries to expire (0.0..1.0).

clearCached

public void clearCached()
Description copied from interface: CacheClient
Clears all cached entries without notifying.

Specified by:
clearCached in interface CacheClient

getCache

public ConcurrentMap getCache(boolean create)
Description copied from interface: CacheClient
Gets and optionally creates the cache.

Specified by:
getCache in interface CacheClient
Parameters:
create - true to create a missing cache.
Returns:
the cache or null if disabled.

removeCache

public void removeCache()
Description copied from interface: CacheClient
Removes the cache.

Specified by:
removeCache in interface CacheClient

getCache

public ConcurrentMap getCache(String key,
                              boolean create)
Description copied from interface: KeyCacheClient
Gets and optionally creates the cache for the specified key.

Specified by:
getCache in interface KeyCacheClient
Parameters:
key - the cache key.
create - true to create a missing cache.
Returns:
the cache or null if disabled.

removeCache

public void removeCache(String key)
Description copied from interface: KeyCacheClient
Removes the specified cache.

Specified by:
removeCache in interface KeyCacheClient
Parameters:
key - the cache key.

cacheKeySet

public Set cacheKeySet()
Description copied from interface: KeyCacheClient
Returns the cache key set.

Specified by:
cacheKeySet in interface KeyCacheClient
Returns:
the client key set.

clearCaches

public void clearCaches()
Description copied from interface: KeyCacheClient
Removes all caches.

Specified by:
clearCaches in interface KeyCacheClient

refresh

public void refresh()
Description copied from interface: Refreshable
Refreshes the MBean.

Specified by:
refresh in interface Refreshable

getRefreshed

public long getRefreshed()
Description copied from interface: Refreshable
Gets the last refresh timestamp.

Specified by:
getRefreshed in interface Refreshable
Returns:
the timestamp of the last refresh.

getLastModified

public long getLastModified(String key)
Description copied from interface: PersisterFactory
Gets the last modification time of the specified connection.

Specified by:
getLastModified in interface PersisterFactory
Parameters:
key - the connection key.
Returns:
the modification time in msecs.

getConnectionDTD

public String getConnectionDTD()
Description copied from interface: PersisterFactory
Gets the connection DTD.

Specified by:
getConnectionDTD in interface PersisterFactory
Returns:
the connection DTD.

setConnectionDTD

public void setConnectionDTD(String path)
Description copied from interface: PersisterFactory
Sets the connection DTD.

Specified by:
setConnectionDTD in interface PersisterFactory
Parameters:
path - the connection DTD.

setConnectionDescriptor

public void setConnectionDescriptor(String descriptor)
                             throws LogException
Description copied from interface: PersisterFactory
Sets a connection descriptor in the repository. The descriptor may be a file or URL containing one or more connection descriptors, or it may itself contain connection descriptors in XML format.

Specified by:
setConnectionDescriptor in interface PersisterFactory
Parameters:
descriptor - the connection descriptor.
Throws:
LogException - on errors.

removeConnectionDescriptor

public void removeConnectionDescriptor(String key)
Description copied from interface: PersisterFactory
Removes the default connection descriptor from the repository.

Specified by:
removeConnectionDescriptor in interface PersisterFactory
Parameters:
key - the key i.e. the alias name of the connection.

getRepositoryDTD

public String getRepositoryDTD()
Description copied from interface: PersisterFactory
Gets the repository DTD.

Specified by:
getRepositoryDTD in interface PersisterFactory
Returns:
the repository DTD.

setRepositoryDTD

public void setRepositoryDTD(String path)
Description copied from interface: PersisterFactory
Sets the repository DTD.

Specified by:
setRepositoryDTD in interface PersisterFactory
Parameters:
path - the repository DTD.

addClassDescriptor

public void addClassDescriptor(String descriptor)
                        throws LogException
Description copied from interface: PersisterFactory
Adds a new class descriptor for all connections in the repository. The descriptor may be a file or URL containing one or more class descriptors, or it may itself contain class descriptors in XML format.

Declared but missing classes are defined and loaded as VariableMBeans containing the declared fields as their attributes.

Specified by:
addClassDescriptor in interface PersisterFactory
Parameters:
descriptor - the class descriptor.
Throws:
LogException - on errors.

addClassDescriptor

public void addClassDescriptor(String expr,
                               String descriptor)
                        throws LogException
Description copied from interface: PersisterFactory
Adds a new class descriptor for the specified connections in the repository. The descriptor may be a file or URL containing one or more class descriptors, or it may itself contain class descriptors in XML format.

Declared but missing classes are defined and loaded as Variables containing the declared fields as their attributes.

Specified by:
addClassDescriptor in interface PersisterFactory
Parameters:
expr - the expression matching connection aliases.
descriptor - the class descriptor.
Throws:
LogException - on errors.

getAttributeType

public String getAttributeType(String jdbcType)
Description copied from interface: PersisterFactory
Gets the Java attribute type corresponding to the specified JDBC type.

Specified by:
getAttributeType in interface PersisterFactory
Parameters:
jdbcType - the JDBC type.
Returns:
the corresponding Java type name.

setAttributeType

public void setAttributeType(String jdbcType,
                             String fieldType)
Description copied from interface: PersisterFactory
Sets the Java attribute type corresponding to the specified JDBC type. This setting replaces the default mapping of the corresponding JDBC type.

Specified by:
setAttributeType in interface PersisterFactory
Parameters:
jdbcType - the JDBC type.
fieldType - the corresponding Java type name.

removeAttributeType

public void removeAttributeType(String jdbcType)
Description copied from interface: PersisterFactory
Removes the Java attribute type corresponding to the specified JDBC type and restores the default mapping of the corresponding JDBC type.

Specified by:
removeAttributeType in interface PersisterFactory
Parameters:
jdbcType - the JDBC type.

jdbcTypeSet

public Set jdbcTypeSet()
Description copied from interface: PersisterFactory
Returns a read-only set of JDBC types mapped either to a default type or to a specified attribute type.

Specified by:
jdbcTypeSet in interface PersisterFactory
Returns:
a set of JDBC types.

isCombinedFactoryCache

public boolean isCombinedFactoryCache()
Description copied from interface: PersisterFactory
Checks whether objects from all connections should be cached in only one combined factory cache.

Specified by:
isCombinedFactoryCache in interface PersisterFactory
Returns:
true for a combined cache, false otherwise.

setCombinedFactoryCache

public void setCombinedFactoryCache(boolean flag)
Description copied from interface: PersisterFactory
Sets whether objects from all connections should be cached in only one combined factory cache.

Note that the factory cache is applied only if explicitly configured.

Specified by:
setCombinedFactoryCache in interface PersisterFactory
Parameters:
flag - true for a combined cache, false otherwise.

isRefreshReferencesEnabled

public boolean isRefreshReferencesEnabled()
Description copied from interface: PersisterFactory
Checks whether automatic refresh of references is enabled.

Specified by:
isRefreshReferencesEnabled in interface PersisterFactory
Returns:
true if enabled, false otherwise.

setRefreshReferencesEnabled

public void setRefreshReferencesEnabled(boolean flag)
Description copied from interface: PersisterFactory
Sets whether automatic refresh of references is enabled.

Specified by:
setRefreshReferencesEnabled in interface PersisterFactory
Parameters:
flag - true if enabled, false otherwise.

isTraceReferencesDisabled

public boolean isTraceReferencesDisabled()
Description copied from interface: PersisterFactory
Checks whether traced refresh of references is disabled.

Specified by:
isTraceReferencesDisabled in interface PersisterFactory
Returns:
true if disabled, false otherwise.

setTraceReferencesDisabled

public void setTraceReferencesDisabled(boolean flag)
Description copied from interface: PersisterFactory
Sets whether traced refresh of references is disabled.

Specified by:
setTraceReferencesDisabled in interface PersisterFactory
Parameters:
flag - true if disabled, false otherwise.

getVariableRegistryName

public ObjectName getVariableRegistryName()
Description copied from interface: PersisterFactory
Gets the the variable registry of this factory.

Specified by:
getVariableRegistryName in interface PersisterFactory
Returns:
the object name of the variable registry or a query.

setVariableRegistryName

public void setVariableRegistryName(ObjectName registry)
Description copied from interface: PersisterFactory
Sets the variable registry of this factory. If it is not set, the default one will be used.

Specified by:
setVariableRegistryName in interface PersisterFactory
Parameters:
registry - the object name of the variable registry or a query.

query

public Collection query(String className,
                        String expr,
                        boolean sql)
                 throws Exception
Description copied from interface: PersisterFactory
Queries for instances of the specified class by applying a query language.

Specified by:
query in interface PersisterFactory
Parameters:
className - the class name.
expr - the query expression.
sql - a flag to apply SQL.
Returns:
a collection of instances.
Throws:
Exception - on errors.

query

public Collection query(String key,
                        String className,
                        String expr,
                        boolean sql)
                 throws Exception
Description copied from interface: PersisterFactory
Queries for instances of the specified class through the named connection by applying a query language.

Specified by:
query in interface PersisterFactory
Parameters:
key - the connection key.
className - the class name.
expr - the query expression.
sql - a flag to apply SQL.
Returns:
a collection of instances.
Throws:
Exception - on errors.

modified

public void modified(String key,
                     long msecs)
Description copied from interface: PersisterListener
Invoked when modified.

Specified by:
modified in interface PersisterListener
Parameters:
key - the connection key.
msecs - the timestamp.

resolveDescriptor

protected String resolveDescriptor(String descriptor,
                                   String dtd,
                                   String tag)
Resolves the input source of a descriptor.

Parameters:
descriptor - the descriptor.
dtd - the document dtd.
tag - the root element tag.
Returns:
the resolved input source as a string.

resolveInlineDTD

protected StringBuilder resolveInlineDTD(PathFinder finder,
                                         String key,
                                         String path,
                                         String tag)
                                  throws IOException
Resolves an inline DOCTYPE and DTD.

Parameters:
finder - the path finder to apply.
key - the finder key to apply.
path - the DTD path to apply.
tag - the root element tag.
Returns:
the inline DTD.
Throws:
IOException - on I/O errors.

resolveJdbcAlias

protected String resolveJdbcAlias(String alias)
Resolves a JDBC alias containing a parametrized local path that must be replaced with a real one.

Parameters:
alias - the original alias.
Returns:
the resolved alias.

registerDynamicAttributes

protected void registerDynamicAttributes(OrderedMap variables,
                                         Object repository,
                                         Map types)
Registers dynamic attributes of the specified variables.

Parameters:
variables - the variables.
repository - the class repository.
types - optional type mappings.

getAttributeInfo

protected VariableAttributeInfo getAttributeInfo(String className,
                                                 String name,
                                                 Configuration config,
                                                 MBeanReference owner)
Gets attribute info for an auxiliary attribute.

Parameters:
className - the class name.
name - the attribute name.
config - the configuration.
owner - the attribute owner.
Returns:
the attribute info.

getAttributeInfo

protected VariableAttributeInfo getAttributeInfo(String name,
                                                 String type,
                                                 String descr,
                                                 Configuration config,
                                                 MBeanReference owner)
Gets the default attribute info.

Parameters:
name - the attribute name.
type - the default type.
descr - the default description.
config - the configuration.
owner - the attribute owner.
Returns:
the attribute info.

getComparator

protected Comparator getComparator(Configuration config)
Gets the comparator property, if set.

Parameters:
config - the properties.
Returns:
the comparator or null.

getEnumeration

protected List getEnumeration(Configuration config)
Gets the enumeration property, if set.

Parameters:
config - the properties.
Returns:
the enumeration or null.

getVariableRegistryMBean

protected MBeanReference getVariableRegistryMBean()
Gets a reference to the variable registry MBean.

Returns:
a reference to the variable registry MBean.

getDefaultConnectionDTD

protected abstract String getDefaultConnectionDTD()
Gets the default connection DTD.

Returns:
the default connection DTD.

getDefaultRepositoryDTD

protected abstract String getDefaultRepositoryDTD()
Gets the default repository DTD.

Returns:
the default repository DTD.

getParsedAttributeInfo

protected abstract List getParsedAttributeInfo(String className,
                                               Object repository,
                                               OrderedMap externals,
                                               Map types)
Gets the parsed attributes of a named class in the repository.

Parameters:
className - the name of the class.
repository - the class repository.
externals - external properties.
types - optional type mappings.
Returns:
a list of attribute infos.