Package org.apache.axis2.schema.writer
Class JavaBeanWriter
- java.lang.Object
-
- org.apache.axis2.schema.writer.JavaBeanWriter
-
- All Implemented Interfaces:
BeanWriter
public class JavaBeanWriter extends Object implements BeanWriter
Java Bean writer for the schema compiler.
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_ATTRIB_ARRAY_CLASS_NAMEstatic StringDEFAULT_ATTRIB_CLASS_NAMEstatic StringDEFAULT_CLASS_ARRAY_NAMEstatic StringDEFAULT_CLASS_NAMEstatic StringEXTENSION_MAPPER_CLASSNAMEstatic StringWRAPPED_DATABINDING_CLASS_NAME
-
Constructor Summary
Constructors Constructor Description JavaBeanWriter()Default constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetDefaultAttribArrayClassName()StringgetDefaultAttribClassName()StringgetDefaultClassArrayName()StringgetDefaultClassName()StringgetExtensionMapperPackageName()get the mapper class package name May be ignored by the implementerMapgetModelMap()This returns a map of Qnames vs DOMDocument models.StringgetPrefixForURI(String uri)Get a prefix for a namespace URI.StringgetPrefixForURI(String uri, String defaultPrefix)Get a prefix for the given namespace URI.voidinit(CompilerOptions options)Initializes the writer with compiler options.StringmakeFullyQualifiedClassName(QName qName)Make the fully qualified class name for an element or named typeprotected voidpopulateListInfo(BeanWriterMetaInfoHolder metainf, Document model, Element rootElement, Map<QName,String> typeMap, Map<QName,String> groupTypeMap)protected voidpopulateMemberInfo(BeanWriterMetaInfoHolder metainf, Document model, Element rootElement, Map<QName,String> typeMap)voidregisterExtensionMapperPackageName(String mapperPackageName)Sets the mapping class name of this writer.Stringwrite(QName qName, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf, boolean isAbstract)`Stringwrite(org.apache.ws.commons.schema.XmlSchemaElement element, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf)Write a elementStringwrite(org.apache.ws.commons.schema.XmlSchemaSimpleType simpleType, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf)Write a simple typevoidwriteBatch()Writes a wrapped class.voidwriteExtensionMapper(BeanWriterMetaInfoHolder[] metainfArray)Write the extension classes - this is needed to process the hierarchy of classes
-
-
-
Field Detail
-
WRAPPED_DATABINDING_CLASS_NAME
public static final String WRAPPED_DATABINDING_CLASS_NAME
- See Also:
- Constant Field Values
-
EXTENSION_MAPPER_CLASSNAME
public static final String EXTENSION_MAPPER_CLASSNAME
- See Also:
- Constant Field Values
-
DEFAULT_CLASS_NAME
public static final String DEFAULT_CLASS_NAME
-
DEFAULT_CLASS_ARRAY_NAME
public static final String DEFAULT_CLASS_ARRAY_NAME
- See Also:
- Constant Field Values
-
DEFAULT_ATTRIB_CLASS_NAME
public static final String DEFAULT_ATTRIB_CLASS_NAME
-
DEFAULT_ATTRIB_ARRAY_CLASS_NAME
public static final String DEFAULT_ATTRIB_ARRAY_CLASS_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getModelMap
public Map getModelMap()
This returns a map of Qnames vs DOMDocument models. One can use this method to obtain the raw DOMmodels used to write the classes. This has no meaning when the classes are supposed to be wrapped so the- Specified by:
getModelMapin interfaceBeanWriter- Returns:
- Returns Map.
- See Also:
BeanWriter.getModelMap()
-
getDefaultClassName
public String getDefaultClassName()
- Specified by:
getDefaultClassNamein interfaceBeanWriter
-
getDefaultClassArrayName
public String getDefaultClassArrayName()
- Specified by:
getDefaultClassArrayNamein interfaceBeanWriter
-
getDefaultAttribClassName
public String getDefaultAttribClassName()
- Specified by:
getDefaultAttribClassNamein interfaceBeanWriter
-
getDefaultAttribArrayClassName
public String getDefaultAttribArrayClassName()
- Specified by:
getDefaultAttribArrayClassNamein interfaceBeanWriter
-
init
public void init(CompilerOptions options) throws SchemaCompilationException
Description copied from interface:BeanWriterInitializes the writer with compiler options.- Specified by:
initin interfaceBeanWriter- Throws:
SchemaCompilationException
-
write
public String write(org.apache.ws.commons.schema.XmlSchemaElement element, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf) throws SchemaCompilationException
Description copied from interface:BeanWriterWrite a element- Specified by:
writein interfaceBeanWriter- Parameters:
element-typeMap-metainf-- Returns:
- Returns String.
- Throws:
SchemaCompilationException
-
write
public String write(QName qName, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf, boolean isAbstract) throws SchemaCompilationException
`- Specified by:
writein interfaceBeanWriter- Parameters:
qName-typeMap-metainf-isAbstract-- Returns:
- Throws:
SchemaCompilationException
-
writeBatch
public void writeBatch() throws SchemaCompilationExceptionDescription copied from interface:BeanWriterWrites a wrapped class. This will have effect only if the CompilerOptions wrapclassses returns true.- Specified by:
writeBatchin interfaceBeanWriter- Throws:
ExceptionSchemaCompilationException- See Also:
BeanWriter.writeBatch()
-
write
public String write(org.apache.ws.commons.schema.XmlSchemaSimpleType simpleType, Map<QName,String> typeMap, Map<QName,String> groupTypeMap, BeanWriterMetaInfoHolder metainf) throws SchemaCompilationException
Description copied from interface:BeanWriterWrite a simple type- Specified by:
writein interfaceBeanWriter- Parameters:
simpleType-typeMap-metainf-- Returns:
- Returns String.
- Throws:
SchemaCompilationException
-
makeFullyQualifiedClassName
public String makeFullyQualifiedClassName(QName qName)
Make the fully qualified class name for an element or named type- Specified by:
makeFullyQualifiedClassNamein interfaceBeanWriter- Parameters:
qName- the qualified Name for this element or type in the schema- Returns:
- the appropriate fully qualified class name to use in generated code
-
populateListInfo
protected void populateListInfo(BeanWriterMetaInfoHolder metainf, Document model, Element rootElement, Map<QName,String> typeMap, Map<QName,String> groupTypeMap)
-
populateMemberInfo
protected void populateMemberInfo(BeanWriterMetaInfoHolder metainf, Document model, Element rootElement, Map<QName,String> typeMap)
-
getPrefixForURI
public String getPrefixForURI(String uri)
Get a prefix for a namespace URI. This method will ALWAYS return a valid prefix - if the given URI is already mapped in this serialization, we return the previous prefix. If it is not mapped, we will add a new mapping and return a generated prefix of the form "ns". - Parameters:
uri- is the namespace uri- Returns:
- Returns prefix.
-
getPrefixForURI
public String getPrefixForURI(String uri, String defaultPrefix)
Get a prefix for the given namespace URI. If one has already been defined in this serialization, use that. Otherwise, map the passed default prefix to the URI, and return that. If a null default prefix is passed, use one of the form "ns"
-
getExtensionMapperPackageName
public String getExtensionMapperPackageName()
get the mapper class package name May be ignored by the implementer- Specified by:
getExtensionMapperPackageNamein interfaceBeanWriter
-
registerExtensionMapperPackageName
public void registerExtensionMapperPackageName(String mapperPackageName)
Sets the mapping class name of this writer. A mapping class package set by the options may be overridden at the this point- Specified by:
registerExtensionMapperPackageNamein interfaceBeanWriter- Parameters:
mapperPackageName-
-
writeExtensionMapper
public void writeExtensionMapper(BeanWriterMetaInfoHolder[] metainfArray) throws SchemaCompilationException
Write the extension classes - this is needed to process the hierarchy of classes- Specified by:
writeExtensionMapperin interfaceBeanWriter- Parameters:
metainfArray-- Throws:
SchemaCompilationException
-
-