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

java.lang.Object
  extended by com.sun.tools.xjc.generator.bean.field.AbstractField
      extended by com.sun.tools.xjc.generator.bean.field.AbstractFieldWithVar
          extended by com.sun.tools.xjc.generator.bean.field.SingleField
All Implemented Interfaces:
FieldOutline
Direct Known Subclasses:
SinglePrimitiveAccessField

public class SingleField
extends AbstractFieldWithVar

Realizes a property through one getter and one setter. This renders:

 T' field;
 T getXXX() { ... }
 void setXXX(T value) { ... }
 

Normally T'=T, but under some tricky circumstances they could be different (like T'=Integer, T=int.) This realization is only applicable to fields with (1,1) or (0,1) multiplicity.


Nested Class Summary
protected  class SingleField.Accessor
           
 
Field Summary
 
Fields inherited from class com.sun.tools.xjc.generator.bean.field.AbstractField
codeModel, exposedType, implType, outline, prop
 
Constructor Summary
protected SingleField(ClassOutlineImpl context, CPropertyInfo prop)
           
protected SingleField(ClassOutlineImpl context, CPropertyInfo prop, boolean forcePrimitiveAccess)
           
 
Method Summary
 FieldAccessor create(com.sun.codemodel.JExpression targetObject)
          Creates a new FieldAccessor of this field for the specified object.
 com.sun.codemodel.JType getFieldType()
          Returns the type used to store the value of the field in memory.
 
Methods inherited from class com.sun.tools.xjc.generator.bean.field.AbstractFieldWithVar
createField, getGetterMethod, getRawType, ref
 
Methods inherited from class com.sun.tools.xjc.generator.bean.field.AbstractField
annotate, castToImplType, generateField, getOptions, getPropertyInfo, getType, listPossibleTypes, parent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingleField

protected SingleField(ClassOutlineImpl context,
                      CPropertyInfo prop)

SingleField

protected SingleField(ClassOutlineImpl context,
                      CPropertyInfo prop,
                      boolean forcePrimitiveAccess)
Parameters:
forcePrimitiveAccess - forces the setter/getter to expose the primitive type. it's a pointless customization, but it's nevertheless in the spec.
Method Detail

getFieldType

public final com.sun.codemodel.JType getFieldType()
Description copied from class: AbstractFieldWithVar
Returns the type used to store the value of the field in memory.

Specified by:
getFieldType in class AbstractFieldWithVar

create

public FieldAccessor 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.