public class ElementParserBuilderImpl extends AbstractParserBuilder implements ElementParserBuilder
Modifier and Type | Class and Description |
---|---|
static interface |
ElementParserBuilderImpl.Expected |
static class |
ElementParserBuilderImpl.ExpectedAttribute |
static class |
ElementParserBuilderImpl.ExpectedElement |
static class |
ElementParserBuilderImpl.ExpectedXsiType |
variableManager
Constructor and Description |
---|
ElementParserBuilderImpl(BuildContext buildContext,
com.sun.codemodel.JDefinedClass readerClass,
Class returnType,
boolean mixed) |
ElementParserBuilderImpl(BuildContext buildContext,
com.sun.codemodel.JDefinedClass readerClass,
Class returnType,
boolean mixed,
int depth,
String methodNameHint) |
ElementParserBuilderImpl(BuildContext buildContext,
String className) |
ElementParserBuilderImpl(ElementParserBuilderImpl parent,
boolean increaseDepth,
QName name) |
ElementParserBuilderImpl(ElementParserBuilderImpl parent,
boolean increaseDepth,
QName name,
String methodNameHint) |
ElementParserBuilderImpl(ElementParserBuilderImpl parent,
QName name) |
Modifier and Type | Method and Description |
---|---|
com.sun.codemodel.JVar |
as(Class<?> cls)
Reads the value of the attribute/element into a variable of the given type.
|
com.sun.codemodel.JVar |
as(Class<?> cls,
boolean nillable) |
com.sun.codemodel.JVar |
asString() |
com.sun.codemodel.JVar |
call(com.sun.codemodel.JType type,
String varName,
ElementParserBuilder builder)
Call out to a parser that has already been build and create a variable
which the result is stored in.
|
ParserBuilder |
expectAnyAttribute() |
ElementParserBuilder |
expectAnyElement() |
ElementParserBuilder |
expectAnyElement(String methodNameHint) |
ParserBuilder |
expectAttribute(QName name) |
ElementParserBuilder |
expectElement(QName name) |
void |
expectElement(QName name,
ElementParserBuilder elementBuilder,
com.sun.codemodel.JExpression... vars) |
ElementParserBuilder |
expectElement(QName name,
String methodNameHint) |
ElementParserBuilder |
expectGlobalElement(QName qname) |
ElementParserBuilder |
expectGlobalElement(QName qname,
String methodNameHint) |
ElementParserBuilder |
expectMixedElement() |
ElementParserBuilder |
expectMixedElement(String methodNameHint) |
ElementParserBuilder |
expectUnexpectedXsiType() |
ElementParserBuilder |
expectUnexpectedXsiType(String methodNameHint) |
ElementParserBuilder |
expectXsiType(QName name) |
ElementParserBuilder |
expectXsiType(QName name,
String methodNameHint) |
com.sun.codemodel.JVar |
getAttributeVar() |
com.sun.codemodel.JClass |
getBaseClass() |
CodeBody |
getBody() |
com.sun.codemodel.JVar |
getChildElementVar() |
com.sun.codemodel.JMethod |
getConstructor() |
QName |
getName() |
com.sun.codemodel.JBlock |
getTailBlock()
Optional code to be generated right before the return statement,
after the main loop.
|
QName |
getXmlType() |
boolean |
isAddReadAsType() |
ElementParserBuilder |
newState() |
ElementParserBuilder |
newState(com.sun.codemodel.JBlock block) |
ElementParserBuilder |
newState(com.sun.codemodel.JBlock block,
String methodNameHint) |
com.sun.codemodel.JVar |
passParentVariable(com.sun.codemodel.JVar parentVar)
Pass a variable in the parent
ParserBuilder to this parser builder. |
void |
setAddReadAsType(boolean addReadAsType) |
void |
setAnyAttributeBlock(com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setAnyElementBlock(com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setAttributeBlock(QName name,
com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setBaseClass(com.sun.codemodel.JClass baseClass) |
void |
setElementBlock(QName name,
com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setMixedElementBlock(com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setUnexpectedXsiTypeBlock(com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
setXmlType(QName xmlType) |
void |
setXsiTypeBlock(QName name,
com.sun.codemodel.JVar readVar,
com.sun.codemodel.JBlock readBlock) |
void |
write() |
protected void |
writeReadAsType() |
addBasicArgs, getBuildContext, getCodeModel, getContextVar, getMethod, getReaderClass, getVariableManager, getVariables, getXSR, isRequired, mapAsProperty, setAllowUnkown, setRequired, setReturnVar
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getCodeModel, getReaderClass, getVariableManager, getXSR, isRequired, setAllowUnkown, setRequired
public ElementParserBuilderImpl(BuildContext buildContext, String className) throws BuildException
BuildException
public ElementParserBuilderImpl(BuildContext buildContext, com.sun.codemodel.JDefinedClass readerClass, Class returnType, boolean mixed) throws BuildException
BuildException
public ElementParserBuilderImpl(BuildContext buildContext, com.sun.codemodel.JDefinedClass readerClass, Class returnType, boolean mixed, int depth, String methodNameHint) throws BuildException
BuildException
public ElementParserBuilderImpl(ElementParserBuilderImpl parent, QName name)
public ElementParserBuilderImpl(ElementParserBuilderImpl parent, boolean increaseDepth, QName name)
public ElementParserBuilderImpl(ElementParserBuilderImpl parent, boolean increaseDepth, QName name, String methodNameHint)
public QName getName()
getName
in interface ElementParserBuilder
public QName getXmlType()
public void setXmlType(QName xmlType)
public com.sun.codemodel.JMethod getConstructor()
public com.sun.codemodel.JClass getBaseClass()
public void setBaseClass(com.sun.codemodel.JClass baseClass)
public boolean isAddReadAsType()
public void setAddReadAsType(boolean addReadAsType)
public com.sun.codemodel.JVar getAttributeVar()
public com.sun.codemodel.JVar getChildElementVar()
public ParserBuilder expectAttribute(QName name)
expectAttribute
in interface ElementParserBuilder
public void setAttributeBlock(QName name, com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setAttributeBlock
in interface ElementParserBuilder
public ParserBuilder expectAnyAttribute()
expectAnyAttribute
in interface ElementParserBuilder
public void setAnyAttributeBlock(com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setAnyAttributeBlock
in interface ElementParserBuilder
public ElementParserBuilder expectElement(QName name)
expectElement
in interface ElementParserBuilder
public ElementParserBuilder expectElement(QName name, String methodNameHint)
expectElement
in interface ElementParserBuilder
public void expectElement(QName name, ElementParserBuilder elementBuilder, com.sun.codemodel.JExpression... vars)
expectElement
in interface ElementParserBuilder
public void setElementBlock(QName name, com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setElementBlock
in interface ElementParserBuilder
public ElementParserBuilder expectAnyElement()
expectAnyElement
in interface ElementParserBuilder
public ElementParserBuilder expectAnyElement(String methodNameHint)
expectAnyElement
in interface ElementParserBuilder
public void setAnyElementBlock(com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setAnyElementBlock
in interface ElementParserBuilder
public ElementParserBuilder expectMixedElement()
expectMixedElement
in interface ElementParserBuilder
public ElementParserBuilder expectMixedElement(String methodNameHint)
expectMixedElement
in interface ElementParserBuilder
public void setMixedElementBlock(com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setMixedElementBlock
in interface ElementParserBuilder
public ElementParserBuilder expectXsiType(QName name)
expectXsiType
in interface ElementParserBuilder
public ElementParserBuilder expectXsiType(QName name, String methodNameHint)
expectXsiType
in interface ElementParserBuilder
public void setXsiTypeBlock(QName name, com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setXsiTypeBlock
in interface ElementParserBuilder
public ElementParserBuilder expectUnexpectedXsiType()
expectUnexpectedXsiType
in interface ElementParserBuilder
public ElementParserBuilder expectUnexpectedXsiType(String methodNameHint)
expectUnexpectedXsiType
in interface ElementParserBuilder
public void setUnexpectedXsiTypeBlock(com.sun.codemodel.JVar readVar, com.sun.codemodel.JBlock readBlock)
setUnexpectedXsiTypeBlock
in interface ElementParserBuilder
public ElementParserBuilder expectGlobalElement(QName qname)
expectGlobalElement
in interface ElementParserBuilder
public ElementParserBuilder expectGlobalElement(QName qname, String methodNameHint)
expectGlobalElement
in interface ElementParserBuilder
public com.sun.codemodel.JVar as(Class<?> cls)
ParserBuilder
as
in interface ParserBuilder
public com.sun.codemodel.JVar as(Class<?> cls, boolean nillable)
as
in interface ElementParserBuilder
public com.sun.codemodel.JVar asString()
public ElementParserBuilder newState()
newState
in interface ElementParserBuilder
newState
in interface ParserBuilder
public ElementParserBuilder newState(com.sun.codemodel.JBlock block)
newState
in interface ElementParserBuilder
newState
in interface ParserBuilder
public ElementParserBuilder newState(com.sun.codemodel.JBlock block, String methodNameHint)
newState
in interface ElementParserBuilder
public com.sun.codemodel.JVar passParentVariable(com.sun.codemodel.JVar parentVar)
ParserBuilder
ParserBuilder
to this parser builder.passParentVariable
in interface ParserBuilder
passParentVariable
in class AbstractParserBuilder
parentVar
- Variable used in the parent's ParserBuilder
scope.ParserBuilder
's scope.public com.sun.codemodel.JVar call(com.sun.codemodel.JType type, String varName, ElementParserBuilder builder)
ElementParserBuilder
call
in interface ElementParserBuilder
public CodeBody getBody()
getBody
in interface ParserBuilder
getBody
in class AbstractParserBuilder
public com.sun.codemodel.JBlock getTailBlock()
ElementParserBuilder
This can be used to perform the post-construction to be executed when all the child elements are read and processed.
getTailBlock
in interface ElementParserBuilder
public void write()
write
in class AbstractParserBuilder
protected void writeReadAsType()
Copyright © 2007–2017. All rights reserved.