|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor
public class AnnotationsProcessor
INTERNAL:
Purpose:To perform some initial processing of Java classes and JAXB 2.0 Annotations and generate meta data that can be used by the Mappings Generator and Schema Generator
Responsibilities:
This class does the initial processing of the JAXB 2.0 Generation. It generates meta data that can be used by the later Schema Generation and Mapping Generation steps.
Generator
Nested Class Summary | |
---|---|
(package private) class |
AnnotationsProcessor.PropertyComparitor Inner class used for ordering a list of Properties alphabetically by property name. |
Field Summary | |
---|---|
private static java.lang.String |
ARRAY_CLASS_NAME_SUFFIX |
private static java.lang.String |
ARRAY_NAMESPACE |
private static java.lang.String |
ARRAY_PACKAGE_NAME |
private java.util.Map<java.lang.String,java.lang.Class> |
arrayClassesToGeneratedClasses |
private java.util.Map<java.lang.reflect.Type,java.lang.Class> |
collectionClassesToGeneratedClasses |
private static java.lang.String |
CREATE |
private java.lang.String |
defaultTargetNamespace |
private static java.lang.Character |
DOLLAR_SIGN_CHR |
private static java.lang.Character |
DOT_CHR |
private static java.lang.String |
ELEMENT_DECL_DEFAULT |
private static java.lang.String |
ELEMENT_DECL_GLOBAL |
private java.util.HashMap<java.lang.String,java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration>> |
elementDeclarations |
private static java.lang.String |
EMPTY_STRING |
private java.util.HashMap<java.lang.String,JavaMethod> |
factoryMethods |
private java.util.Map<java.lang.Class,JavaClass> |
generatedClassesToArrayClasses |
private java.util.Map<java.lang.Class,java.lang.reflect.Type> |
generatedClassesToCollectionClasses |
private static java.lang.String |
GET_STR |
private boolean |
hasSwaRef |
private Helper |
helper |
private static java.lang.String |
IS_STR |
private boolean |
isDefaultNamespaceAllowed |
private static java.lang.String |
ITEM |
private static java.lang.String |
JAVA_LANG_OBJECT |
private static java.lang.String |
JAVA_UTIL_LIST |
private java.util.Map<JavaClass,TypeMappingInfo> |
javaClassToTypeMappingInfos |
(package private) static java.lang.String |
JAVAX_ACTIVATION_DATAHANDLER |
(package private) static java.lang.String |
JAVAX_MAIL_INTERNET_MIMEMULTIPART |
private static java.lang.String |
JAVAX_XML_BIND_JAXBELEMENT |
private static java.lang.String |
JAXB_DEV |
private static java.lang.String |
L |
private java.util.List<ElementDeclaration> |
localElements |
private JAXBMetadataLogger |
logger |
private java.util.HashMap<java.lang.String,MarshalCallback> |
marshalCallbacks |
private NamespaceResolver |
namespaceResolver |
private java.util.List<java.lang.String> |
objectFactoryClassNames |
private static java.lang.String |
ORG_W3C_DOM |
private java.util.HashMap<java.lang.String,PackageInfo> |
packageToPackageInfoMappings |
private java.util.List |
referencedByTransformer |
private static java.lang.String |
SEMI_COLON |
private static java.lang.String |
SET_STR |
private static java.lang.String |
SLASH |
private static java.lang.Character |
SLASH_CHR |
private static java.lang.String |
TYPE_METHOD_NAME |
private java.util.HashMap<java.lang.String,TypeInfo> |
typeInfo |
private java.util.ArrayList<JavaClass> |
typeInfoClasses |
private java.util.Map<TypeMappingInfo,java.lang.Class> |
typeMappingInfoToAdapterClasses |
private java.util.Map<TypeMappingInfo,java.lang.Class> |
typeMappingInfoToGeneratedClasses |
private java.util.Map<TypeMappingInfo,javax.xml.namespace.QName> |
typeMappingInfoToSchemaType |
private java.util.ArrayList<javax.xml.namespace.QName> |
typeQNames |
private java.util.HashMap<java.lang.String,UnmarshalCallback> |
unmarshalCallbacks |
private java.util.HashMap<java.lang.String,javax.xml.namespace.QName> |
userDefinedSchemaTypes |
private static java.lang.String |
VALUE_METHOD_NAME |
private java.util.Map<java.lang.String,XmlRegistry> |
xmlRegistries |
private java.util.HashMap<java.lang.String,ElementDeclaration> |
xmlRootElements |
Constructor Summary | |
---|---|
AnnotationsProcessor(Helper helper) |
Method Summary | |
---|---|
SchemaTypeInfo |
addClass(JavaClass javaClass) |
void |
addEnumTypeInfo(JavaClass javaClass, EnumTypeInfo info) |
void |
addPackageToNamespaceMapping(java.lang.String packageName, NamespaceInfo nsInfo) Add a package name/NamespaceInfo entry to the map. |
void |
addPackageToPackageInfoMapping(java.lang.String packageName, PackageInfo packageInfo) |
private void |
addReferencedElement(Property property, ElementDeclaration referencedElement) |
void |
addXmlRegistry(java.lang.String factoryClassName, XmlRegistry xmlReg) Add an XmlRegistry to ObjectFactory class name pair to the map. |
protected boolean |
areEquals(JavaClass src, java.lang.Class tgt) Compares a JavaModel JavaClass to a Class. |
protected boolean |
areEquals(JavaClass src, java.lang.String tgtCanonicalName) Compares a JavaModel JavaClass to a Class. |
private Property |
buildChoiceProperty(JavaHasAnnotations javaHasAnnotations) Build a new 'choice' property. |
private Property |
buildNewProperty(TypeInfo info, JavaClass cls, JavaHasAnnotations javaHasAnnotations, java.lang.String propertyName, JavaClass ptype) |
void |
buildNewTypeInfo(JavaClass[] javaClasses) Convenience method which class pre and postBuildTypeInfo for a given set of JavaClasses. |
private Property |
buildReferenceProperty(TypeInfo info, JavaHasAnnotations javaHasAnnotations, java.lang.String propertyName, JavaClass ptype) Build a reference property. |
private Property |
buildTransformationProperty(JavaHasAnnotations javaHasAnnotations, JavaClass cls) |
private java.util.Map<java.lang.String,TypeInfo> |
buildTypeInfo(JavaClass[] allClasses) INTERNAL: Complete building TypeInfo objects for a given set of JavaClass instances. |
private void |
checkForCallbackMethods() |
void |
createElementsForTypeMappingInfo() |
private java.util.Map<java.lang.Object,java.lang.Object> |
createUserPropertiesMap(XmlProperty[] properties) |
void |
finalizeProperties() Perform any final generation and/or validation operations on TypeInfo properties. |
private void |
findAndProcessObjectFactory(JavaClass cls) |
(package private) void |
findAndProcessObjectFactory(java.lang.String objectFactoryClassName) |
NamespaceInfo |
findInfoForNamespace(java.lang.String namespace) |
private java.lang.Class |
generateArrayValue(JavaClass arrayClass, JavaClass componentClass, JavaClass nestedClass, TypeMappingInfo typeMappingInfo) |
private java.lang.Class |
generateClassFromBytes(java.lang.String className, byte[] classBytes) |
private java.lang.Class |
generateCollectionValue(JavaClass collectionClass, TypeMappingInfo typeMappingInfo, java.lang.Class xmlElementType) |
private java.lang.Class |
generateWrapperForArrayClass(JavaClass arrayClass, TypeMappingInfo typeMappingInfo, java.lang.Class xmlElementType, java.util.List<JavaClass> classesToProcess) |
private java.lang.Class |
generateWrapperForMapClass(JavaClass mapClass, JavaClass keyClass, JavaClass valueClass, TypeMappingInfo typeMappingInfo) |
private java.lang.annotation.Annotation[] |
getAnnotations(TypeMappingInfo tmInfo) Returns an array of Annotations for a given TypeMappingInfo. |
java.util.Map<java.lang.String,java.lang.Class> |
getArrayClassesToGeneratedClasses() |
private JavaClass |
getBaseComponentType(JavaClass javaClass) |
java.util.Map<java.lang.reflect.Type,java.lang.Class> |
getCollectionClassesToGeneratedClasses() |
(package private) java.lang.String |
getDefaultTargetNamespace() |
(package private) java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration> |
getElementDeclarationsForScope(java.lang.String scopeClassName) |
java.util.ArrayList<Property> |
getFieldPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic) |
java.util.ArrayList<Property> |
getFieldPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic, boolean onlyExplicit) |
java.util.Map<java.lang.Class,JavaClass> |
getGeneratedClassesToArrayClasses() |
java.util.Map<java.lang.Class,java.lang.reflect.Type> |
getGeneratedClassesToCollectionClasses() |
java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration> |
getGlobalElements() Lazy load and return the map of global elements. |
(package private) Helper |
getHelper() Return the Helper object set on this processor. |
java.util.List<ElementDeclaration> |
getLocalElements() |
private JAXBMetadataLogger |
getLogger() Lazy load the metadata logger. |
java.util.HashMap<java.lang.String,MarshalCallback> |
getMarshalCallbacks() |
NamespaceResolver |
getNamespaceResolver() |
private java.lang.String |
getNextAvailableClassName(java.lang.String suggestedName) |
private java.lang.String |
getNextAvailableClassName(java.lang.String suggestedBaseName, java.lang.String suggestedName, int counter) |
java.util.ArrayList |
getNoAccessTypePropertiesForClass(JavaClass cls, TypeInfo info) |
private java.lang.Class |
getObjectClass(java.lang.Class primitiveClass) |
private JavaClass |
getObjectType(JavaClass javaClass) |
PackageInfo |
getPackageInfoForPackage(JavaClass javaClass) |
PackageInfo |
getPackageInfoForPackage(JavaPackage pack, java.lang.String packageName) |
java.util.HashMap<java.lang.String,PackageInfo> |
getPackageToPackageInfoMappings() |
private java.lang.Class |
getPrimitiveClass(java.lang.String primitiveClassName) |
java.util.ArrayList<Property> |
getPropertiesForClass(JavaClass cls, TypeInfo info) |
java.util.HashMap<java.lang.String,Property> |
getPropertyMapFromArrayList(java.util.ArrayList<Property> props) |
java.util.ArrayList<Property> |
getPropertyPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic) |
java.util.ArrayList<Property> |
getPropertyPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic, boolean onlyExplicit) |
java.util.ArrayList |
getPublicMemberPropertiesForClass(JavaClass cls, TypeInfo info) |
javax.xml.namespace.QName |
getQNameForProperty(java.lang.String defaultName, JavaHasAnnotations element, NamespaceInfo namespaceInfo, TypeInfo info) |
java.util.List |
getReferencedByTransformer() |
javax.xml.namespace.QName |
getSchemaTypeFor(JavaClass javaClass) |
javax.xml.namespace.QName |
getSchemaTypeOrNullFor(JavaClass javaClass) |
java.util.HashMap<java.lang.String,TypeInfo> |
getTypeInfo() |
java.util.ArrayList<JavaClass> |
getTypeInfoClasses() |
java.util.Map<java.lang.String,TypeInfo> |
getTypeInfosForPackage(java.lang.String packageName) Convenience method for returning all of the TypeInfo objects for a given package name. |
java.util.Map<TypeMappingInfo,java.lang.Class> |
getTypeMappingInfoToAdapterClasses() |
java.util.Map<TypeMappingInfo,java.lang.Class> |
getTypeMappingInfoToGeneratedClasses() |
java.util.Map<TypeMappingInfo,javax.xml.namespace.QName> |
getTypeMappingInfoToSchemaType() |
java.util.HashMap<java.lang.String,UnmarshalCallback> |
getUnmarshalCallbacks() |
java.util.HashMap<java.lang.String,javax.xml.namespace.QName> |
getUserDefinedSchemaTypes() |
private boolean |
hasElementMappedProperties(TypeInfo typeInfo) |
private boolean |
hasJAXBAnnotations(JavaHasAnnotations elem) Returns true if the field or method passed in is annotated with JAXB annotations. |
boolean |
hasSwaRef() |
(package private) void |
init(JavaClass[] classes, TypeMappingInfo[] typeMappingInfos) Initialize maps, lists, etc. |
boolean |
isCollectionType(JavaClass type) |
boolean |
isCollectionType(Property field) |
boolean |
isDefaultNamespaceAllowed() |
boolean |
isMapType(JavaClass type) |
boolean |
isMtomAttachment(Property property) Indicates if a given Property represents an MTOM attachment. |
private boolean |
isXmlRegistry(JavaClass javaClass) Convenience method for determining if a given JavaClass should be processed as an ObjectFactory class. |
JavaClass[] |
postBuildTypeInfo(JavaClass[] javaClasses) Process any additional classes (i.e. inner classes, @XmlSeeAlso, |
private void |
postProcessXmlAccessorOrder(TypeInfo info, PackageInfo packageNamespace) Post process XmlAccessorOrder. |
private void |
postProcessXmlAccessorType(TypeInfo info, PackageInfo packageNamespace) Post process XmlAccessorType. |
private void |
postProcessXmlType(JavaClass javaClass, TypeInfo info, PackageInfo packageNamespace) Process XmlType for a given TypeInfo. |
java.util.Map<java.lang.String,TypeInfo> |
preBuildTypeInfo(JavaClass[] javaClasses) Process class level annotations only. |
private void |
preProcessCustomizer(JavaClass jClass, TypeInfo tInfo) Pre-process a descriptor customizer. |
private void |
preProcessXmlAccessorOrder(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace) Process package and class @XmlAccessorOrder. |
private void |
preProcessXmlAccessorType(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace) Process @XmlAccessorType annotation on a given JavaClass and update the TypeInfo for pre-processing. |
private void |
preProcessXmlType(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace) Process @XmlType annotation on a given JavaClass and update the TypeInfo for pre-processing. |
private JavaClass[] |
processAdditionalClasses(JavaClass[] classes) Process any additional classes, such as inner classes, @XmlRegistry or from @XmlSeeAlso. |
private void |
processChoiceProperty(Property choiceProperty, TypeInfo info, JavaClass cls, JavaClass propertyType) Complete creation of a 'choice' property. |
private void |
processClass(JavaClass javaClass, java.util.ArrayList<JavaClass> classesToProcess) Adds additional classes to the given List, from inner classes, |
(package private) void |
processClassesAndProperties(JavaClass[] classes, TypeMappingInfo[] typeMappingInfos) Generate TypeInfo instances for a given array of JavaClasses. |
private void |
processClassLevelAdapters(JavaClass javaClass, TypeInfo info) Process any class-level @XmlJavaTypeAdapters. |
private void |
processFactoryMethods(JavaClass javaClass, TypeInfo info) Process any factory methods. |
void |
processJavaClasses(JavaClass[] classes) This method was initially designed to handle processing one or more JavaClass instances. |
NamespaceInfo |
processNamespaceInformation(javax.xml.bind.annotation.XmlSchema xmlSchema) |
JavaClass[] |
processObjectFactory(JavaClass objectFactoryClass, java.util.ArrayList<JavaClass> classes) |
private void |
processPackageLevelAdapter(javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter next, TypeInfo info) |
private void |
processPackageLevelAdapters(JavaClass javaClass, TypeInfo info) Process any package-level @XmlJavaTypeAdapters. |
private void |
processPropertiesSuperClass(JavaClass cls, TypeInfo info) |
private void |
processPropertyAnnotations(TypeInfo info, JavaClass cls, JavaHasAnnotations javaHasAnnotations, Property property) |
(package private) void |
processPropertyTypes(JavaClass[] classes) |
private Property |
processReferenceProperty(Property property, TypeInfo info, JavaClass cls) Build a reference property. |
void |
processSchemaType(java.lang.String name, java.lang.String namespace, java.lang.String jClassQualifiedName) Use name, namespace and type information to setup a user-defined schema type. |
void |
processSchemaType(javax.xml.bind.annotation.XmlSchemaType type) |
private void |
processSchemaTypes(JavaClass javaClass, TypeInfo info) Process any @XmlSchemaType(s). |
private void |
processTypeInfoProperties(JavaClass javaClass, TypeInfo info) Process a given TypeInfo instance's properties. |
private void |
processTypeQName(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace) Store a QName (if necessary) based on a given TypeInfo's schema type name. |
private void |
processXmlElement(Property property, TypeInfo info) Process @XmlElement annotation on a given property. |
private void |
processXmlExtensible(JavaClass javaClass, TypeInfo info) Process @XmlExtensible annotation on a given JavaClass. |
private void |
processXmlID(Property property, JavaClass javaClass, TypeInfo info) Process @XmlID annotation on a given property |
private void |
processXmlIDREF(Property property) Process @XmlIDREF on a given property. |
private void |
processXmlJavaTypeAdapter(Property property, TypeInfo info, JavaClass javaClass) Process @XmlJavaTypeAdapter on a given property. |
private void |
processXmlJoinNodes(Property property) Process XmlJoinNode(s) for a given Property. |
private void |
processXmlNullPolicy(Property property) |
private void |
processXmlRootElement(JavaClass javaClass, TypeInfo info) Process @XmlRootElement annotation on a given JavaClass. |
private void |
processXmlSeeAlso(JavaClass javaClass, TypeInfo info) Process an @XmlSeeAlso annotation. |
private void |
processXmlTransformationProperty(Property property) Responsible for validating transformer settings on a given property. |
private java.util.ArrayList<Property> |
removeSuperclassProperties(JavaClass cls, java.util.ArrayList<Property> properties) |
void |
setDefaultNamespaceAllowed(boolean isDefaultNamespaceAllowed) |
(package private) void |
setDefaultTargetNamespace(java.lang.String defaultTargetNamespace) |
void |
setHasSwaRef(boolean swaRef) |
void |
setPackageToNamespaceMappings(java.util.HashMap<java.lang.String,NamespaceInfo> packageToNamespaceMappings) Set namespace override info from XML bindings file. |
void |
setPackageToPackageInfoMappings(java.util.HashMap<java.lang.String,PackageInfo> packageToPackageInfoMappings) |
boolean |
shouldGenerateTypeInfo(JavaClass javaClass) |
void |
updateGlobalElements(JavaClass[] classesToProcess) |
private void |
validateElementIsInPropOrder(TypeInfo info, java.lang.String name) |
private void |
validatePropOrderForInfo(TypeInfo info) |
private void |
validateXmlValueFieldOrProperty(JavaClass cls, Property property) |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
static final java.lang.String JAVAX_ACTIVATION_DATAHANDLER
static final java.lang.String JAVAX_MAIL_INTERNET_MIMEMULTIPART
private static final java.lang.String JAVAX_XML_BIND_JAXBELEMENT
private static final java.lang.String TYPE_METHOD_NAME
private static final java.lang.String VALUE_METHOD_NAME
private static final java.lang.String ARRAY_PACKAGE_NAME
private static final java.lang.String ARRAY_NAMESPACE
private static final java.lang.String ARRAY_CLASS_NAME_SUFFIX
private static final java.lang.String JAXB_DEV
private static final java.lang.String ORG_W3C_DOM
private static final java.lang.String CREATE
private static final java.lang.String ELEMENT_DECL_GLOBAL
private static final java.lang.String ELEMENT_DECL_DEFAULT
private static final java.lang.String EMPTY_STRING
private static final java.lang.String JAVA_UTIL_LIST
private static final java.lang.String JAVA_LANG_OBJECT
private static final java.lang.String SLASH
private static final java.lang.String SEMI_COLON
private static final java.lang.String L
private static final java.lang.String ITEM
private static final java.lang.String IS_STR
private static final java.lang.String GET_STR
private static final java.lang.String SET_STR
private static final java.lang.Character DOT_CHR
private static final java.lang.Character DOLLAR_SIGN_CHR
private static final java.lang.Character SLASH_CHR
private java.util.ArrayList<JavaClass> typeInfoClasses
private java.util.HashMap<java.lang.String,PackageInfo> packageToPackageInfoMappings
private java.util.HashMap<java.lang.String,MarshalCallback> marshalCallbacks
private java.util.HashMap<java.lang.String,javax.xml.namespace.QName> userDefinedSchemaTypes
private java.util.HashMap<java.lang.String,TypeInfo> typeInfo
private java.util.ArrayList<javax.xml.namespace.QName> typeQNames
private java.util.HashMap<java.lang.String,UnmarshalCallback> unmarshalCallbacks
private java.util.HashMap<java.lang.String,java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration>> elementDeclarations
private java.util.HashMap<java.lang.String,ElementDeclaration> xmlRootElements
private java.util.List<ElementDeclaration> localElements
private java.util.HashMap<java.lang.String,JavaMethod> factoryMethods
private java.util.Map<java.lang.String,XmlRegistry> xmlRegistries
private java.util.List<java.lang.String> objectFactoryClassNames
private java.util.Map<java.lang.String,java.lang.Class> arrayClassesToGeneratedClasses
private java.util.Map<java.lang.Class,JavaClass> generatedClassesToArrayClasses
private java.util.Map<java.lang.reflect.Type,java.lang.Class> collectionClassesToGeneratedClasses
private java.util.Map<java.lang.Class,java.lang.reflect.Type> generatedClassesToCollectionClasses
private java.util.Map<JavaClass,TypeMappingInfo> javaClassToTypeMappingInfos
private java.util.Map<TypeMappingInfo,java.lang.Class> typeMappingInfoToGeneratedClasses
private java.util.Map<TypeMappingInfo,java.lang.Class> typeMappingInfoToAdapterClasses
private java.util.Map<TypeMappingInfo,javax.xml.namespace.QName> typeMappingInfoToSchemaType
private NamespaceResolver namespaceResolver
private Helper helper
private java.lang.String defaultTargetNamespace
private JAXBMetadataLogger logger
private boolean isDefaultNamespaceAllowed
private boolean hasSwaRef
private java.util.List referencedByTransformer
Constructor Detail |
---|
public AnnotationsProcessor(Helper helper)
Method Detail |
---|
void processClassesAndProperties(JavaClass[] classes, TypeMappingInfo[] typeMappingInfos)
classes
-public void createElementsForTypeMappingInfo()
private java.lang.annotation.Annotation[] getAnnotations(TypeMappingInfo tmInfo)
tmInfo
-void init(JavaClass[] classes, TypeMappingInfo[] typeMappingInfos)
public java.util.Map<java.lang.String,TypeInfo> preBuildTypeInfo(JavaClass[] javaClasses)
javaClasses
-public JavaClass[] postBuildTypeInfo(JavaClass[] javaClasses)
javaClasses
-private java.util.Map<java.lang.String,TypeInfo> buildTypeInfo(JavaClass[] allClasses)
allClasses
-private void processPropertiesSuperClass(JavaClass cls, TypeInfo info)
public void finalizeProperties()
private void processTypeInfoProperties(JavaClass javaClass, TypeInfo info)
info
-void processPropertyTypes(JavaClass[] classes)
public void processJavaClasses(JavaClass[] classes)
classes
- this paramater can and should be null as it is not usedprivate JavaClass[] processAdditionalClasses(JavaClass[] classes)
classes
-private void processClass(JavaClass javaClass, java.util.ArrayList<JavaClass> classesToProcess)
javaClass
-classesToProcess
-private void processXmlSeeAlso(JavaClass javaClass, TypeInfo info)
javaClass
-private void processFactoryMethods(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void processPackageLevelAdapters(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void processPackageLevelAdapter(javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter next, TypeInfo info)
private void processClassLevelAdapters(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void processSchemaTypes(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void processXmlRootElement(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void processXmlExtensible(JavaClass javaClass, TypeInfo info)
javaClass
-info
-private void preProcessXmlType(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace)
javaClass
-info
-packageNamespace
-private void postProcessXmlType(JavaClass javaClass, TypeInfo info, PackageInfo packageNamespace)
javaClass
-info
-packageNamespace
-private void preProcessXmlAccessorType(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace)
javaClass
-info
-packageNamespace
-private void postProcessXmlAccessorType(TypeInfo info, PackageInfo packageNamespace)
info
-private void preProcessXmlAccessorOrder(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace)
javaClass
-info
-packageNamespace
-private void postProcessXmlAccessorOrder(TypeInfo info, PackageInfo packageNamespace)
javaClass
-info
-private void processXmlElement(Property property, TypeInfo info)
property
-private void processXmlID(Property property, JavaClass javaClass, TypeInfo info)
property
-info
-private void processXmlIDREF(Property property)
property
-private void processXmlJavaTypeAdapter(Property property, TypeInfo info, JavaClass javaClass)
property
-propertyType
-private void processTypeQName(JavaClass javaClass, TypeInfo info, NamespaceInfo packageNamespace)
javaClass
-info
-public boolean shouldGenerateTypeInfo(JavaClass javaClass)
public java.util.ArrayList<Property> getPropertiesForClass(JavaClass cls, TypeInfo info)
public java.util.ArrayList<Property> getFieldPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic)
public java.util.ArrayList<Property> getFieldPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic, boolean onlyExplicit)
private Property buildNewProperty(TypeInfo info, JavaClass cls, JavaHasAnnotations javaHasAnnotations, java.lang.String propertyName, JavaClass ptype)
private Property buildChoiceProperty(JavaHasAnnotations javaHasAnnotations)
javaHasAnnotations
-private Property buildTransformationProperty(JavaHasAnnotations javaHasAnnotations, JavaClass cls)
private void processChoiceProperty(Property choiceProperty, TypeInfo info, JavaClass cls, JavaClass propertyType)
choiceProperty
-info
-cls
-propertyType
-private Property buildReferenceProperty(TypeInfo info, JavaHasAnnotations javaHasAnnotations, java.lang.String propertyName, JavaClass ptype)
info
-javaHasAnnotations
-propertyName
-ptype
-private Property processReferenceProperty(Property property, TypeInfo info, JavaClass cls)
property
-info
-javaHasAnnotations
-private void processPropertyAnnotations(TypeInfo info, JavaClass cls, JavaHasAnnotations javaHasAnnotations, Property property)
private void processXmlJoinNodes(Property property)
property
- Property that may contain @XmlJoinNodes/@XmlJoinNodeprivate void processXmlTransformationProperty(Property property)
property
-protected boolean areEquals(JavaClass src, java.lang.Class tgt)
src
-tgt
-private void processXmlNullPolicy(Property property)
protected boolean areEquals(JavaClass src, java.lang.String tgtCanonicalName)
src
-tgt
-public java.util.ArrayList<Property> getPropertyPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic)
public java.util.ArrayList<Property> getPropertyPropertiesForClass(JavaClass cls, TypeInfo info, boolean onlyPublic, boolean onlyExplicit)
private java.util.ArrayList<Property> removeSuperclassProperties(JavaClass cls, java.util.ArrayList<Property> properties)
public java.util.ArrayList getPublicMemberPropertiesForClass(JavaClass cls, TypeInfo info)
public java.util.HashMap<java.lang.String,Property> getPropertyMapFromArrayList(java.util.ArrayList<Property> props)
public java.util.ArrayList getNoAccessTypePropertiesForClass(JavaClass cls, TypeInfo info)
public void processSchemaType(java.lang.String name, java.lang.String namespace, java.lang.String jClassQualifiedName)
name
-namespace
-jClassQualifiedName
-public void processSchemaType(javax.xml.bind.annotation.XmlSchemaType type)
public void addEnumTypeInfo(JavaClass javaClass, EnumTypeInfo info)
public javax.xml.namespace.QName getSchemaTypeOrNullFor(JavaClass javaClass)
public javax.xml.namespace.QName getSchemaTypeFor(JavaClass javaClass)
public boolean isCollectionType(Property field)
public boolean isCollectionType(JavaClass type)
public NamespaceInfo processNamespaceInformation(javax.xml.bind.annotation.XmlSchema xmlSchema)
public java.util.HashMap<java.lang.String,TypeInfo> getTypeInfo()
public java.util.ArrayList<JavaClass> getTypeInfoClasses()
public java.util.HashMap<java.lang.String,javax.xml.namespace.QName> getUserDefinedSchemaTypes()
public NamespaceResolver getNamespaceResolver()
public javax.xml.namespace.QName getQNameForProperty(java.lang.String defaultName, JavaHasAnnotations element, NamespaceInfo namespaceInfo, TypeInfo info)
public java.util.HashMap<java.lang.String,PackageInfo> getPackageToPackageInfoMappings()
public void addPackageToNamespaceMapping(java.lang.String packageName, NamespaceInfo nsInfo)
public void addPackageToPackageInfoMapping(java.lang.String packageName, PackageInfo packageInfo)
public PackageInfo getPackageInfoForPackage(JavaClass javaClass)
public PackageInfo getPackageInfoForPackage(JavaPackage pack, java.lang.String packageName)
public NamespaceInfo findInfoForNamespace(java.lang.String namespace)
private void checkForCallbackMethods()
public java.util.HashMap<java.lang.String,MarshalCallback> getMarshalCallbacks()
public java.util.HashMap<java.lang.String,UnmarshalCallback> getUnmarshalCallbacks()
private void findAndProcessObjectFactory(JavaClass cls)
void findAndProcessObjectFactory(java.lang.String objectFactoryClassName)
public JavaClass[] processObjectFactory(JavaClass objectFactoryClass, java.util.ArrayList<JavaClass> classes)
public java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration> getGlobalElements()
public void updateGlobalElements(JavaClass[] classesToProcess)
private void addReferencedElement(Property property, ElementDeclaration referencedElement)
private boolean hasJAXBAnnotations(JavaHasAnnotations elem)
private void validateElementIsInPropOrder(TypeInfo info, java.lang.String name)
private void validatePropOrderForInfo(TypeInfo info)
private void validateXmlValueFieldOrProperty(JavaClass cls, Property property)
private boolean hasElementMappedProperties(TypeInfo typeInfo)
public boolean isMapType(JavaClass type)
private java.lang.Class generateWrapperForMapClass(JavaClass mapClass, JavaClass keyClass, JavaClass valueClass, TypeMappingInfo typeMappingInfo)
private java.lang.Class generateWrapperForArrayClass(JavaClass arrayClass, TypeMappingInfo typeMappingInfo, java.lang.Class xmlElementType, java.util.List<JavaClass> classesToProcess)
private java.lang.Class generateArrayValue(JavaClass arrayClass, JavaClass componentClass, JavaClass nestedClass, TypeMappingInfo typeMappingInfo)
private JavaClass getBaseComponentType(JavaClass javaClass)
private JavaClass getObjectType(JavaClass javaClass)
private java.lang.Class generateCollectionValue(JavaClass collectionClass, TypeMappingInfo typeMappingInfo, java.lang.Class xmlElementType)
private java.lang.Class generateClassFromBytes(java.lang.String className, byte[] classBytes)
private java.lang.String getNextAvailableClassName(java.lang.String suggestedName)
private java.lang.String getNextAvailableClassName(java.lang.String suggestedBaseName, java.lang.String suggestedName, int counter)
private java.lang.Class getPrimitiveClass(java.lang.String primitiveClassName)
private java.lang.Class getObjectClass(java.lang.Class primitiveClass)
public java.util.Map<java.lang.reflect.Type,java.lang.Class> getCollectionClassesToGeneratedClasses()
public java.util.Map<java.lang.String,java.lang.Class> getArrayClassesToGeneratedClasses()
public java.util.Map<java.lang.Class,java.lang.reflect.Type> getGeneratedClassesToCollectionClasses()
public java.util.Map<java.lang.Class,JavaClass> getGeneratedClassesToArrayClasses()
public java.util.Map<java.lang.String,TypeInfo> getTypeInfosForPackage(java.lang.String packageName)
packageName
-public void setPackageToNamespaceMappings(java.util.HashMap<java.lang.String,NamespaceInfo> packageToNamespaceMappings)
packageToNamespaceMappings
-public void setPackageToPackageInfoMappings(java.util.HashMap<java.lang.String,PackageInfo> packageToPackageInfoMappings)
public SchemaTypeInfo addClass(JavaClass javaClass)
public void buildNewTypeInfo(JavaClass[] javaClasses)
javaClasses
-private void preProcessCustomizer(JavaClass jClass, TypeInfo tInfo)
jClass
-tInfo
-XmlCustomizer
, MappingsGenerator
private JAXBMetadataLogger getLogger()
Helper getHelper()
public boolean isDefaultNamespaceAllowed()
public java.util.List<ElementDeclaration> getLocalElements()
public java.util.Map<TypeMappingInfo,java.lang.Class> getTypeMappingInfoToGeneratedClasses()
public java.util.Map<TypeMappingInfo,java.lang.Class> getTypeMappingInfoToAdapterClasses()
public void addXmlRegistry(java.lang.String factoryClassName, XmlRegistry xmlReg)
factoryClassName
- ObjectFactory class namexmlReg
- org.eclipse.persistence.jaxb.xmlmodel.XmlRegistry instanceprivate boolean isXmlRegistry(JavaClass javaClass)
javaClass
-public java.util.Map<TypeMappingInfo,javax.xml.namespace.QName> getTypeMappingInfoToSchemaType()
java.lang.String getDefaultTargetNamespace()
void setDefaultTargetNamespace(java.lang.String defaultTargetNamespace)
public void setDefaultNamespaceAllowed(boolean isDefaultNamespaceAllowed)
java.util.HashMap<javax.xml.namespace.QName,ElementDeclaration> getElementDeclarationsForScope(java.lang.String scopeClassName)
private java.util.Map<java.lang.Object,java.lang.Object> createUserPropertiesMap(XmlProperty[] properties)
public boolean isMtomAttachment(Property property)
property
-public boolean hasSwaRef()
public void setHasSwaRef(boolean swaRef)
public java.util.List getReferencedByTransformer()
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |