harness
Class BaseHarnessDescriptor

java.lang.Object
  extended by harness.BaseHarnessDescriptor
All Implemented Interfaces:
NatureExtendable, PropertyHolder, ClassDescriptor, XMLClassDescriptor
Direct Known Subclasses:
CaseDescriptor, CategoryDescriptor, HarnessDescriptor

public abstract class BaseHarnessDescriptor
extends java.lang.Object
implements XMLClassDescriptor

Base class for all descriptor classes of the JDO test harness.

Since:
1.2

Field Summary
protected  XMLFieldDescriptor[] _attributeDescriptors
          Set of XMLFieldDescriptors for all members that should be marshalled as XML attributes.
protected  XMLFieldDescriptorImpl _contentDescriptor
          XMLFieldDescriptor for the member that should be marshalled as text content.
protected  XMLFieldDescriptor[] _elementDescriptors
          Set of XMLFieldDescriptors for all members that should be marshalled as XML elements.
protected  java.lang.String _nsPrefix
          Namespace prefix.
protected  java.lang.String _nsURI
          Namespace URI.
protected  java.lang.String _xmlName
          XML name for the class being described.
 
Constructor Summary
BaseHarnessDescriptor()
           
 
Method Summary
 void addNature(java.lang.String nature)
          Adds a specified nature.
 boolean canAccept(java.lang.String name, java.lang.String namespace, java.lang.Object object)
          Returns true if the given object represented by this XMLClassDescriptor can accept a member whose name is given.
 void checkDescriptorForCorrectOrderWithinSequence(XMLFieldDescriptor elementDescriptor, UnmarshalState parentState, java.lang.String xmlName)
          Checks whether the given XMLFieldDescriptor is the one actually expected, given the natural order as defined by a sequence definition
 AccessMode getAccessMode()
          Returns the current AccessMode instance.
 XMLFieldDescriptor[] getAttributeDescriptors()
          Returns the set of XMLFieldDescriptors for all members that should be marshalled as XML attributes.
 XMLFieldDescriptor getContentDescriptor()
          Returns the XMLFieldDescriptor for the member that should be marshalled as text content.
 XMLFieldDescriptor[] getElementDescriptors()
          Returns the set of XMLFieldDescriptors for all members that should be marshalled as XML elements.
 ClassDescriptor getExtends()
          Returns the class descriptor of the class extended by this class.
 XMLFieldDescriptor getFieldDescriptor(java.lang.String name, java.lang.String namespace, NodeType nodeType)
          Returns the XML field descriptor matching the given xml name and nodeType.
 FieldDescriptor[] getFields()
          Returns a list of fields represented by this descriptor.
 FieldDescriptor getIdentity()
          Returns the identity field, null if this class has no identity.
 java.lang.String getNameSpacePrefix()
          Returns the namespace prefix to use when marshalling as XML.
 java.lang.String getNameSpaceURI()
          Returns the namespace URI used when marshalling and unmarshalling as XML.
 java.lang.Object getProperty(java.lang.String name)
          Get a property by its name.
 TypeValidator getValidator()
          Returns a specific validator for the class described by this ClassDescriptor.
 java.lang.String getXMLName()
          Returns the XML Name for the Class being described.
 boolean hasNature(java.lang.String nature)
          Checks if a specified nature has been added.
 boolean isChoice()
          Indicates whether the XML artifact described by this descriptor is a .
 void resetElementCount()
          TODO.
 void setProperty(java.lang.String name, java.lang.Object value)
          Set a property specified by the name to the passed value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.exolab.castor.mapping.ClassDescriptor
getJavaClass
 

Field Detail

_elementDescriptors

protected XMLFieldDescriptor[] _elementDescriptors
Set of XMLFieldDescriptors for all members that should be marshalled as XML elements.


_attributeDescriptors

protected XMLFieldDescriptor[] _attributeDescriptors
Set of XMLFieldDescriptors for all members that should be marshalled as XML attributes.


_nsPrefix

protected java.lang.String _nsPrefix
Namespace prefix.


_nsURI

protected java.lang.String _nsURI
Namespace URI.


_xmlName

protected java.lang.String _xmlName
XML name for the class being described.


_contentDescriptor

protected XMLFieldDescriptorImpl _contentDescriptor
XMLFieldDescriptor for the member that should be marshalled as text content.

Constructor Detail

BaseHarnessDescriptor

public BaseHarnessDescriptor()
Method Detail

getAttributeDescriptors

public XMLFieldDescriptor[] getAttributeDescriptors()
Returns the set of XMLFieldDescriptors for all members that should be marshalled as XML attributes. This includes namespace nodes.

Specified by:
getAttributeDescriptors in interface XMLClassDescriptor
Returns:
an array of XMLFieldDescriptors for all members that should be marshalled as XML attributes.

getElementDescriptors

public XMLFieldDescriptor[] getElementDescriptors()
Returns the set of XMLFieldDescriptors for all members that should be marshalled as XML elements.

Specified by:
getElementDescriptors in interface XMLClassDescriptor
Returns:
an array of XMLFieldDescriptors for all members that should be marshalled as XML elements.

getNameSpaceURI

public java.lang.String getNameSpaceURI()
Returns the namespace URI used when marshalling and unmarshalling as XML.

Specified by:
getNameSpaceURI in interface XMLClassDescriptor
Returns:
the namespace URI used when marshalling and unmarshalling as XML.

getXMLName

public java.lang.String getXMLName()
Returns the XML Name for the Class being described.

Specified by:
getXMLName in interface XMLClassDescriptor
Returns:
the XML name.

getNameSpacePrefix

public java.lang.String getNameSpacePrefix()
Returns the namespace prefix to use when marshalling as XML.

Specified by:
getNameSpacePrefix in interface XMLClassDescriptor
Returns:
the namespace prefix to use when marshalling as XML.

checkDescriptorForCorrectOrderWithinSequence

public void checkDescriptorForCorrectOrderWithinSequence(XMLFieldDescriptor elementDescriptor,
                                                         UnmarshalState parentState,
                                                         java.lang.String xmlName)
                                                  throws ValidationException
Checks whether the given XMLFieldDescriptor is the one actually expected, given the natural order as defined by a sequence definition

Specified by:
checkDescriptorForCorrectOrderWithinSequence in interface XMLClassDescriptor
Parameters:
elementDescriptor - The XML field descriptor to be checked
xmlName - TODO
Throws:
ValidationException - If the descriptor is not the one expected

getContentDescriptor

public XMLFieldDescriptor getContentDescriptor()
Returns the XMLFieldDescriptor for the member that should be marshalled as text content.

Specified by:
getContentDescriptor in interface XMLClassDescriptor
Returns:
the XMLFieldDescriptor for the member that should be marshalled as text content.

getIdentity

public FieldDescriptor getIdentity()
Returns the identity field, null if this class has no identity.

Specified by:
getIdentity in interface ClassDescriptor
Returns:
The identity field

getAccessMode

public AccessMode getAccessMode()
Returns the current AccessMode instance.

Returns:
The current access mode.

getExtends

public ClassDescriptor getExtends()
Returns the class descriptor of the class extended by this class.

Specified by:
getExtends in interface ClassDescriptor
Returns:
The extended class descriptor

getValidator

public TypeValidator getValidator()
Returns a specific validator for the class described by this ClassDescriptor. A null value may be returned if no specific validator exists.

Specified by:
getValidator in interface XMLClassDescriptor
Returns:
the type validator for the class described by this ClassDescriptor.

canAccept

public boolean canAccept(java.lang.String name,
                         java.lang.String namespace,
                         java.lang.Object object)

Returns true if the given object represented by this XMLClassDescriptor can accept a member whose name is given. An XMLClassDescriptor can accept a field if it contains a descriptor that matches the given name and if the given object can hold this field (i.e a value is not already set for this field).

This is mainly used for container object (that can contains other object), in this particular case the implementation will return null.

Specified by:
canAccept in interface XMLClassDescriptor
Parameters:
name - the xml name of the field to check
namespace - the namespace URI
object - the object represented by this XMLCLassDescriptor
Returns:
true if the given object represented by this XMLClassDescriptor can accept a member whose name is given.

resetElementCount

public void resetElementCount()
TODO.


getFields

public FieldDescriptor[] getFields()
Returns a list of fields represented by this descriptor.

Specified by:
getFields in interface ClassDescriptor
Returns:
A list of fields

getFieldDescriptor

public XMLFieldDescriptor getFieldDescriptor(java.lang.String name,
                                             java.lang.String namespace,
                                             NodeType nodeType)
Returns the XML field descriptor matching the given xml name and nodeType. If NodeType is null, then either an AttributeDescriptor, or ElementDescriptor may be returned. Null is returned if no matching descriptor is available.

Specified by:
getFieldDescriptor in interface XMLClassDescriptor
Parameters:
name - the xml name to match against
namespace - the xml namspace to match against
nodeType - the NodeType to match against, or null if the node type is not known.
Returns:
the matching descriptor, or null if no matching descriptor is available.

isChoice

public boolean isChoice()
Indicates whether the XML artifact described by this descriptor is a .

Specified by:
isChoice in interface XMLClassDescriptor
Returns:
True if the artifact described is a choice.

getProperty

public java.lang.Object getProperty(java.lang.String name)
Description copied from interface: PropertyHolder
Get a property by its name.

Specified by:
getProperty in interface PropertyHolder
Parameters:
name - of the property
Returns:
value of the property
See Also:
getProperty(java.lang.String)

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object value)
Description copied from interface: PropertyHolder
Set a property specified by the name to the passed value.

Specified by:
setProperty in interface PropertyHolder
Parameters:
name - of the property
value - of the property
See Also:
setProperty(java.lang.String, java.lang.Object)

addNature

public void addNature(java.lang.String nature)
Description copied from interface: NatureExtendable
Adds a specified nature.

Specified by:
addNature in interface NatureExtendable
Parameters:
nature - ID of the Nature
See Also:
addNature(java.lang.String)

hasNature

public boolean hasNature(java.lang.String nature)
Description copied from interface: NatureExtendable
Checks if a specified nature has been added.

Specified by:
hasNature in interface NatureExtendable
Parameters:
nature - ID of the Nature
Returns:
true if the Nature ID was added.
See Also:
hasNature(java.lang.String)


Copyright © 2011. All Rights Reserved.