org.exolab.castor.xml.descriptors
Class ListClassDescriptor

java.lang.Object
  extended by org.exolab.castor.xml.descriptors.BaseDescriptor
      extended by org.exolab.castor.xml.descriptors.ListClassDescriptor
All Implemented Interfaces:
NatureExtendable, PropertyHolder, ClassDescriptor, XMLClassDescriptor

public class ListClassDescriptor
extends BaseDescriptor

The default java.util.List class descriptor.

Version:
$Revision: 8690 $ $Date: 2004-12-16 22:49:25 -0700 (Thu, 16 Dec 2004) $
Author:
Keith Visco

Constructor Summary
ListClassDescriptor()
          No-arg constructor.
ListClassDescriptor(java.lang.String xmlName)
          Constructs a List Class Descriptor with the given XML name.
 
Method Summary
 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.
 AccessMode getAccessMode()
          Returns the access mode specified for this class.
 XMLFieldDescriptor[] getAttributeDescriptors()
          Returns the set of attribute XMLFieldDescriptors.
 XMLFieldDescriptor getContentDescriptor()
          Returns the descriptor for dealing with Text content.
 XMLFieldDescriptor[] getElementDescriptors()
          Returns the set of element MarshalDescriptors.
 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.Class<?> getJavaClass()
          Returns the Class that this ClassDescriptor describes.
 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.
 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.
 void setNameSpaceURI(java.lang.String nsURI)
          Sets the desired namespace URI for the described object.
 void setValidator(TypeValidator validator)
          Sets the type validator to use for this list.
 void setXMLName(java.lang.String xmlName)
          Sets the XML Name for the described object.
 
Methods inherited from class org.exolab.castor.xml.descriptors.BaseDescriptor
addNature, checkDescriptorForCorrectOrderWithinSequence, getProperty, hasNature, isChoice, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ListClassDescriptor

public ListClassDescriptor()
No-arg constructor.


ListClassDescriptor

public ListClassDescriptor(java.lang.String xmlName)
Constructs a List Class Descriptor with the given XML name.

Parameters:
xmlName - XML schema item name of the element we describe.
Method Detail

getAttributeDescriptors

public XMLFieldDescriptor[] getAttributeDescriptors()
Returns the set of attribute XMLFieldDescriptors.

Returns:
an array of XMLFieldDescriptors for all members that should be marshaled as attributes

getJavaClass

public java.lang.Class<?> getJavaClass()
Returns the Class that this ClassDescriptor describes.

Returns:
the Class that this ClassDescriptor describes

getElementDescriptors

public XMLFieldDescriptor[] getElementDescriptors()
Returns the set of element MarshalDescriptors.

Returns:
an array of MarshalDescriptors for all members that should be marshaled as Elements

getExtends

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

Returns:
The extended class descriptor

getFields

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

Returns:
A list of fields

getContentDescriptor

public XMLFieldDescriptor getContentDescriptor()
Returns the descriptor for dealing with Text content.

Returns:
the XMLFieldDescriptor for dealing with Text content

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.

Parameters:
name - the xml name to match against
namespace - the namespace uri
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.

getNameSpacePrefix

public java.lang.String getNameSpacePrefix()
Description copied from interface: XMLClassDescriptor
Returns the namespace prefix to use when marshalling as XML.

Returns:
the namespace prefix to use when marshaling as XML.

getNameSpaceURI

public java.lang.String getNameSpaceURI()
Description copied from interface: XMLClassDescriptor
Returns the namespace URI used when marshalling and unmarshalling as XML.

Returns:
the namespace URI used when marshalling and unmarshalling as XML.

getIdentity

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

Returns:
The identity field

getAccessMode

public AccessMode getAccessMode()
Returns the access mode specified for this class.

Returns:
The access mode

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.

Returns:
the type validator for the class described by this ClassDescriptor.

getXMLName

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

Returns:
the XML name.

setValidator

public void setValidator(TypeValidator validator)
Sets the type validator to use for this list.

Parameters:
validator - the type validator to use for this list.

setXMLName

public void setXMLName(java.lang.String xmlName)
Sets the XML Name for the described object.

Parameters:
xmlName - the XML name to use for the described object.

setNameSpaceURI

public void setNameSpaceURI(java.lang.String nsURI)
Sets the desired namespace URI for the described object.

Parameters:
nsURI - is the desired namespace URI

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).

Specified by:
canAccept in interface XMLClassDescriptor
Overrides:
canAccept in class BaseDescriptor
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.


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