- java.lang.Object
-
- com.sun.tools.xjc.generator.bean.field.UnboxedField
-
- All Implemented Interfaces:
FieldOutline
public class UnboxedField extends Object
A required primitive property.- Author:
- Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
-
-
Field Summary
Fields Modifier and Type Field Description protected com.sun.codemodel.JCodeModelcodeModelprotected com.sun.codemodel.JTypeexposedTypeThe publicly visible type of this field.protected com.sun.codemodel.JTypeimplTypeThe type of this field, which can hold all the possible types.protected ClassOutlineImploutlineprotected CPropertyInfoprop
-
Constructor Summary
Constructors Modifier Constructor Description protectedUnboxedField(ClassOutlineImpl outline, CPropertyInfo prop)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidannotate(com.sun.codemodel.JAnnotatable field)Annotate the field according to the recipes given asCPropertyInfo.protected com.sun.codemodel.JExpressioncastToImplType(com.sun.codemodel.JExpression exp)Case fromexposedTypetoimplTypeif necessary.FieldAccessorcreate(com.sun.codemodel.JExpression targetObject)Creates a newFieldAccessorof this field for the specified object.protected voidcreateField()protected com.sun.codemodel.JFieldVargenerateField(com.sun.codemodel.JType type)Generates the field declaration.protected com.sun.codemodel.JTypegetFieldType()Returns the type used to store the value of the field in memory.protected StringgetGetterMethod()Gets the name of the getter method.protected OptionsgetOptions()Gets theOptionsin the current compilation context.CPropertyInfogetPropertyInfo()Gets the corresponding model object.com.sun.codemodel.JTypegetRawType()Gets the type of the "raw value".protected com.sun.codemodel.JTypegetType(Aspect aspect)Compute the type of aCPropertyInfoprotected List<Object>listPossibleTypes(CPropertyInfo prop)Returns contents to be added to javadoc.ClassOutlineparent()Gets the enclosingClassOutline.protected com.sun.codemodel.JFieldVarref()
-
-
-
Field Detail
-
outline
protected final ClassOutlineImpl outline
-
prop
protected final CPropertyInfo prop
-
codeModel
protected final com.sun.codemodel.JCodeModel codeModel
-
implType
protected final com.sun.codemodel.JType implType
The type of this field, which can hold all the possible types.
-
exposedType
protected final com.sun.codemodel.JType exposedType
The publicly visible type of this field. If we are generating value classes implType==exposedType.
-
-
Constructor Detail
-
UnboxedField
protected UnboxedField(ClassOutlineImpl outline, CPropertyInfo prop)
-
-
Method Detail
-
getType
protected com.sun.codemodel.JType getType(Aspect aspect)
Compute the type of aCPropertyInfo
-
getFieldType
protected com.sun.codemodel.JType getFieldType()
Returns the type used to store the value of the field in memory.
-
create
public FieldAccessor create(com.sun.codemodel.JExpression targetObject)
Description copied from interface:FieldOutlineCreates a newFieldAccessorof this field for the specified object.- Parameters:
targetObject- Evaluates to an object, and the field on this object will be accessed.
-
createField
protected final void createField()
-
getGetterMethod
protected String getGetterMethod()
Gets the name of the getter method.This encapsulation is necessary because sometimes we use
isXXXXas the method name.
-
ref
protected com.sun.codemodel.JFieldVar ref()
-
getRawType
public final com.sun.codemodel.JType getRawType()
Description copied from interface:FieldOutlineGets 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:FieldOutlineGets the enclosingClassOutline.- Specified by:
parentin interfaceFieldOutline
-
getPropertyInfo
public final CPropertyInfo getPropertyInfo()
Description copied from interface:FieldOutlineGets the corresponding model object.- Specified by:
getPropertyInfoin interfaceFieldOutline
-
annotate
protected void annotate(com.sun.codemodel.JAnnotatable field)
Annotate the field according to the recipes given asCPropertyInfo.
-
getOptions
protected final Options getOptions()
Gets theOptionsin the current compilation context.
-
generateField
protected final com.sun.codemodel.JFieldVar generateField(com.sun.codemodel.JType type)
Generates the field declaration.
-
castToImplType
protected final com.sun.codemodel.JExpression castToImplType(com.sun.codemodel.JExpression exp)
Case fromexposedTypetoimplTypeif necessary.
-
listPossibleTypes
protected final List<Object> listPossibleTypes(CPropertyInfo prop)
Returns contents to be added to javadoc.
-
-