Class Generator
- java.lang.Object
-
- org.eclipse.persistence.jaxb.compiler.Generator
-
public class Generator extends java.lang.Object
INTERNAL:Purpose:The purpose of this class is to act as an entry point into the TopLink JAXB 2.0 Generation framework
Responsibilities:
- Run initial processing on a list of classes to create TypeInfo meta data
- Provide API to generate Schema Files
- Provide API to generate a TopLink Project
- Act as an integration point with WebServices
This class acts as an entry point into JAXB 2.0 Generation. A Generator is created with a specific set of JAXB 2.0 Annotated classes and then performs actions on those, such as generating schema files, or generating TopLink Projects. Additional information is returned from the schema generation methods as a means of integration with WebServices.
- See Also:
AnnotationsProcessor
,MappingsGenerator
,SchemaGenerator
- Author:
- mmacivor
- Since:
- Oracle TopLink 11.1.1.0.0
-
-
Constructor Summary
Constructors Constructor Description Generator(JavaModelInput jModelInput)
This constructor creates a Helper using the JavaModelInput instance's JavaModel.Generator(JavaModelInput jModelInput, java.util.Map<java.lang.String,XmlBindings> xmlBindings, java.lang.ClassLoader cLoader, java.lang.String defaultTargetNamespace, boolean enableXmlAccessorFactory)
This constructor will process and apply the given XmlBindings as appropriate.Generator(JavaModelInput jModelInput, TypeMappingInfo[] typeMappingInfos, JavaClass[] javaClasses, java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typeToTypeMappingInfo, java.lang.String defaultTargetNamespace)
This constructor creates a Helper using the JavaModelInput instance's JavaModel and a map of javaclasses that were generated from Type objects.Generator(JavaModelInput jModelInput, TypeMappingInfo[] typeMappingInfos, JavaClass[] javaClasses, java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typeToTypeMappingInfo, java.util.Map<java.lang.String,XmlBindings> xmlBindings, java.lang.ClassLoader cLoader, java.lang.String defaultTargetNamespace, boolean enableXmlAccessorFactory)
This constructor will process and apply the given XmlBindings as appropriate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CoreProject
generateProject()
java.util.Collection<org.eclipse.persistence.internal.oxm.schema.model.Schema>
generateSchema()
java.util.Map<java.lang.String,SchemaTypeInfo>
generateSchemaFiles(java.lang.String schemaPath, java.util.Map<javax.xml.namespace.QName,java.lang.reflect.Type> additionalGlobalElements)
java.util.Map<java.lang.String,SchemaTypeInfo>
generateSchemaFiles(SchemaOutputResolver outputResolver, java.util.Map<javax.xml.namespace.QName,java.lang.reflect.Type> additionalGlobalElements)
AnnotationsProcessor
getAnnotationsProcessor()
MappingsGenerator
getMappingsGenerator()
java.util.Map
getMarshalCallbacks()
java.util.Map<java.lang.reflect.Type,TypeMappingInfo>
getTypeToTypeMappingInfo()
java.util.Map
getUnmarshalCallbacks()
boolean
hasMarshalCallbacks()
boolean
hasUnmarshalCallbacks()
void
postInitialize()
This event is called when mappings generation is completed, and provides a chance to deference anything that is no longer needed (to reduce the memory footprint of this object).void
setTypeToTypeMappingInfo(java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typesToTypeMapping)
-
-
-
Constructor Detail
-
Generator
public Generator(JavaModelInput jModelInput)
This constructor creates a Helper using the JavaModelInput instance's JavaModel. Annotations are processed here as well.- Parameters:
jModelInput
-
-
Generator
public Generator(JavaModelInput jModelInput, java.util.Map<java.lang.String,XmlBindings> xmlBindings, java.lang.ClassLoader cLoader, java.lang.String defaultTargetNamespace, boolean enableXmlAccessorFactory)
This constructor will process and apply the given XmlBindings as appropriate. Classes declared in the bindings will be amalgamated with any classes in the JavaModelInput. If xmlBindings is null or empty, AnnotationsProcessor will be used to process annotations as per usual.- Parameters:
jModelInput
-xmlBindings
- map of XmlBindings keyed on package namecLoader
-
-
Generator
public Generator(JavaModelInput jModelInput, TypeMappingInfo[] typeMappingInfos, JavaClass[] javaClasses, java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typeToTypeMappingInfo, java.lang.String defaultTargetNamespace)
This constructor creates a Helper using the JavaModelInput instance's JavaModel and a map of javaclasses that were generated from Type objects. Annotations are processed here as well.- Parameters:
jModelInput
-
-
Generator
public Generator(JavaModelInput jModelInput, TypeMappingInfo[] typeMappingInfos, JavaClass[] javaClasses, java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typeToTypeMappingInfo, java.util.Map<java.lang.String,XmlBindings> xmlBindings, java.lang.ClassLoader cLoader, java.lang.String defaultTargetNamespace, boolean enableXmlAccessorFactory)
This constructor will process and apply the given XmlBindings as appropriate. Classes declared in the bindings will be amalgamated with any classes in the JavaModelInput. If xmlBindings is null or empty, AnnotationsProcessor will be used to process annotations as per usual.- Parameters:
jModelInput
-defaultTargetNamespace
-enableXmlAccessorFactory
-javaClasses
-typeMappingInfos
-typeToTypeMappingInfo
-xmlBindings
- map of XmlBindings keyed on package namecLoader
-
-
-
Method Detail
-
postInitialize
public void postInitialize()
This event is called when mappings generation is completed, and provides a chance to deference anything that is no longer needed (to reduce the memory footprint of this object).
-
hasMarshalCallbacks
public boolean hasMarshalCallbacks()
-
hasUnmarshalCallbacks
public boolean hasUnmarshalCallbacks()
-
generateProject
public CoreProject generateProject() throws java.lang.Exception
- Throws:
java.lang.Exception
-
generateSchema
public java.util.Collection<org.eclipse.persistence.internal.oxm.schema.model.Schema> generateSchema()
-
generateSchemaFiles
public java.util.Map<java.lang.String,SchemaTypeInfo> generateSchemaFiles(java.lang.String schemaPath, java.util.Map<javax.xml.namespace.QName,java.lang.reflect.Type> additionalGlobalElements) throws java.io.FileNotFoundException
- Throws:
java.io.FileNotFoundException
-
generateSchemaFiles
public java.util.Map<java.lang.String,SchemaTypeInfo> generateSchemaFiles(SchemaOutputResolver outputResolver, java.util.Map<javax.xml.namespace.QName,java.lang.reflect.Type> additionalGlobalElements)
-
getUnmarshalCallbacks
public java.util.Map getUnmarshalCallbacks()
-
getMarshalCallbacks
public java.util.Map getMarshalCallbacks()
-
getMappingsGenerator
public MappingsGenerator getMappingsGenerator()
-
getAnnotationsProcessor
public AnnotationsProcessor getAnnotationsProcessor()
-
setTypeToTypeMappingInfo
public void setTypeToTypeMappingInfo(java.util.Map<java.lang.reflect.Type,TypeMappingInfo> typesToTypeMapping)
-
getTypeToTypeMappingInfo
public java.util.Map<java.lang.reflect.Type,TypeMappingInfo> getTypeToTypeMappingInfo()
-
-