|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.exolab.castor.builder.info.XMLInfo
org.exolab.castor.builder.info.FieldInfo
org.exolab.castor.builder.info.CollectionInfo
public class CollectionInfo
A helper used for generating source that deals with Collections.
Field Summary | |
---|---|
static java.lang.String |
DEFAULT_REFERENCE_SUFFIX
Default suffix for the setter/getter by reference method names. |
static java.lang.String |
REFERENCE_SUFFIX_PROPERTY
The property used to overwrite the reference suffix for extra collection methods. |
Fields inherited from class org.exolab.castor.builder.info.FieldInfo |
---|
READ_METHOD, READ_WRITE_METHODS, WRITE_METHOD |
Fields inherited from class org.exolab.castor.builder.info.XMLInfo |
---|
ATTRIBUTE_TYPE, CHOICE_NODE_NAME_ERROR_INDICATION, ELEMENT_TYPE, TEXT_TYPE |
Constructor Summary | |
---|---|
CollectionInfo(XSType contentType,
java.lang.String name,
java.lang.String elementName,
boolean useJava50)
Creates a new CollectionInfo. |
Method Summary | |
---|---|
protected void |
addMaxSizeCheck(java.lang.String methodName,
JSourceCode sourceCode)
|
void |
createAccessMethods(JClass jClass,
boolean useJava50)
Generate the various accessor methods. |
protected void |
createAddAndRemoveMethods(JClass jClass)
|
protected void |
createAddByIndexMethod(JClass jClass)
|
protected void |
createAddMethod(JClass jClass)
|
protected void |
createBoundPropertyCode(JSourceCode sourceCode)
Creates the necessary source code for notifying PropertyChangeListeners when the collection has been updated. |
protected void |
createCollectionIterationMethods(JClass jClass,
boolean useJava50)
Generate methods for iterating over the objects in the collection. |
protected void |
createEnumerateMethod(JClass jClass,
boolean useJava50)
|
protected boolean |
createExtraMethods()
Returns true if extra collection methods should be generated. |
protected void |
createGetAndSetMethods(JClass jClass,
boolean useJava50)
|
protected void |
createGetAsArrayMethod(JClass jClass,
boolean useJava50)
|
protected void |
createGetAsReferenceMethod(JClass jClass)
|
protected void |
createGetByIndexMethod(JClass jClass)
|
protected void |
createGetCountMethod(JClass jClass)
|
protected void |
createIteratorMethod(JClass jClass,
boolean useJava50)
|
protected void |
createRemoveAllMethod(JClass jClass)
Creates implementation of removeAll() method. |
protected void |
createRemoveByIndexMethod(JClass jClass)
Creates implementation of remove(int i) method. |
protected void |
createRemoveObjectMethod(JClass jClass)
Creates implementation of remove(Object) method. |
protected void |
createSetAsArrayMethod(JClass jClass,
boolean useJava50)
|
protected void |
createSetAsCopyMethod(JClass jClass)
Creates implementation of collection set method. |
protected void |
createSetAsReferenceMethod(JClass jClass,
boolean useJava50)
Creates implementation of collection reference set method. |
protected void |
createSetByIndexMethod(JClass jClass)
|
void |
generateInitializerCode(JSourceCode sourceCode)
Creates code for initialization of this Member. |
FieldInfo |
getContent()
Return the contents of the collection. |
java.lang.String |
getContentName()
Returns the variable name for the content of the collection. |
XSType |
getContentType()
Returns the type of content in this collection. |
java.lang.String |
getElementName()
Returns the name to be used when referring to the elements of this collection. |
java.lang.String |
getMethodSuffix()
Returns the method suffix for creating method names. |
protected java.lang.String |
getReferenceMethodSuffix()
Returns the suffix (ending) that should be used when creating the extra collection methods. |
XSListType |
getXSList()
Returns the schema type represented by this collection. |
boolean |
isMultivalued()
Return whether or not the object described by this XMLInfo is multi-valued (appears more than once in the XML document). |
void |
setCreateExtraMethods(boolean extraMethods)
Sets whether or not to create extra collection methods for accessing the actual collection. |
void |
setReferenceMethodSuffix(java.lang.String suffix)
Sets the method suffix (ending) to use when creating the extra collection methods. |
Methods inherited from class org.exolab.castor.builder.info.XMLInfo |
---|
getNamespacePrefix, getNamespaceURI, getNodeName, getNodeType, getNodeTypeName, getSchemaType, isElementDefinition, isRequired, setElementDefinition, setMultivalued, setNamespacePrefix, setNamespaceURI, setNodeName, setNodeType, setRequired, setSchemaType |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String DEFAULT_REFERENCE_SUFFIX
public static final java.lang.String REFERENCE_SUFFIX_PROPERTY
Constructor Detail |
---|
public CollectionInfo(XSType contentType, java.lang.String name, java.lang.String elementName, boolean useJava50)
contentType
- the _content type of the collection, ie. the type of objects
that the collection will containname
- the name of the CollectionelementName
- the element name for each element in collectionuseJava50
- true if source code is supposed to be generated for Java 5Method Detail |
---|
public final void createAccessMethods(JClass jClass, boolean useJava50)
createAccessMethods
in class FieldInfo
jClass
- the JClass to add the methods touseJava50
- true if source code is supposed to be generated for Java 5#createAccessMethods(org.exolab.javasource.JClass, boolean)
public void generateInitializerCode(JSourceCode sourceCode)
generateInitializerCode
in class FieldInfo
sourceCode
- the JSourceCode in which to add the source to#generateInitializerCode(org.exolab.javasource.JSourceCode)
public final FieldInfo getContent()
public final java.lang.String getContentName()
public final XSType getContentType()
public final java.lang.String getElementName()
public final XSListType getXSList()
public final boolean isMultivalued()
isMultivalued
in class XMLInfo
XMLInfo.isMultivalued()
public final void setCreateExtraMethods(boolean extraMethods)
extraMethods
- a boolean that when true indicates that extra collection
accessor methods should be created. False by default.setReferenceMethodSuffix(java.lang.String)
public final void setReferenceMethodSuffix(java.lang.String suffix)
suffix
- the method suffix to use when creating the extra collection
methods. If null or emtpty the default value, as specified by
DEFAULT_REFERENCE_SUFFIX will used.setCreateExtraMethods(boolean)
protected final void addMaxSizeCheck(java.lang.String methodName, JSourceCode sourceCode)
protected void createAddMethod(JClass jClass)
protected final void createBoundPropertyCode(JSourceCode sourceCode)
sourceCode
- the JSourceCode to add the new source code to.protected void createEnumerateMethod(JClass jClass, boolean useJava50)
protected final boolean createExtraMethods()
protected final void createGetAsArrayMethod(JClass jClass, boolean useJava50)
protected final void createGetAsReferenceMethod(JClass jClass)
protected void createGetByIndexMethod(JClass jClass)
protected final void createAddAndRemoveMethods(JClass jClass)
protected final void createGetAndSetMethods(JClass jClass, boolean useJava50)
jClass
- the JClass to which we add this methoduseJava50
- true if source code is supposed to be generated for Java 5protected final void createGetCountMethod(JClass jClass)
protected void createCollectionIterationMethods(JClass jClass, boolean useJava50)
jClass
- the JClass to which we add this methoduseJava50
- true if source code is supposed to be generated for Java 5protected void createAddByIndexMethod(JClass jClass)
protected final void createIteratorMethod(JClass jClass, boolean useJava50)
protected final void createRemoveAllMethod(JClass jClass)
jClass
- the JClass to which we add this methodprotected void createRemoveByIndexMethod(JClass jClass)
jClass
- the JClass to which we add this methodprotected final void createRemoveObjectMethod(JClass jClass)
jClass
- the JClass to which we add this methodprotected final void createSetAsArrayMethod(JClass jClass, boolean useJava50)
protected final void createSetAsCopyMethod(JClass jClass)
jClass
- protected final void createSetAsReferenceMethod(JClass jClass, boolean useJava50)
jClass
- useJava50
- true if source code is supposed to be generated for Java 5protected void createSetByIndexMethod(JClass jClass)
public final java.lang.String getMethodSuffix()
getMethodSuffix
in class FieldInfo
FieldInfo.getMethodSuffix()
protected final java.lang.String getReferenceMethodSuffix()
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |