com.sun.tools.xjc.generator.bean.field
Class NoExtendedContentField

java.lang.Object
  extended by com.sun.tools.xjc.generator.bean.field.NoExtendedContentField
All Implemented Interfaces:
FieldOutline

public class NoExtendedContentField
extends java.lang.Object

Realizes a property as an untyped List.

 List getXXX();
 

Default value handling

Since unmarshaller just adds new values into the storage, we can't fill the storage by default values at the time of instanciation. (or oherwise values found in the document will be appended to default values, where it should overwrite them.)

Therefore, when the object is created, the storage will be empty. When the getXXX method is called, we'll check if the storage is modified in anyway. If it is modified, it must mean that the values are found in the document, so we just return it. Otherwise we will fill in default values and return it to the user.

When a list has default values, its dirty flag is set to true. Marshaller will check this and treat it appropriately.


Method Summary
 com.sun.tools.xjc.generator.bean.field.NoExtendedContentField.Accessor create(com.sun.codemodel.JExpression targetObject)
          Creates a new FieldAccessor of this field for the specified object.
 void generateAccessors()
          Generates accessor methods.
 CPropertyInfo getPropertyInfo()
          Gets the corresponding model object.
 com.sun.codemodel.JType getRawType()
          Gets the type of the "raw value".
 ClassOutline parent()
          Gets the enclosing ClassOutline.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

generateAccessors

public void generateAccessors()
Generates accessor methods.


create

public com.sun.tools.xjc.generator.bean.field.NoExtendedContentField.Accessor create(com.sun.codemodel.JExpression targetObject)
Description copied from interface: FieldOutline
Creates a new FieldAccessor of this field for the specified object.

Parameters:
targetObject - Evaluates to an object, and the field on this object will be accessed.

getRawType

public com.sun.codemodel.JType getRawType()
Description copied from interface: FieldOutline
Gets the type of the "raw value".

This type can represent the entire value of this field. For fields that can carry multiple values, this is an array.

This type allows the client of the outline to generate code to set/get values from a property.


parent

public final ClassOutline parent()
Description copied from interface: FieldOutline
Gets the enclosing ClassOutline.

Specified by:
parent in interface FieldOutline

getPropertyInfo

public final CPropertyInfo getPropertyInfo()
Description copied from interface: FieldOutline
Gets the corresponding model object.

Specified by:
getPropertyInfo in interface FieldOutline