Package com.sun.tools.xjc.model

Implementation of the com.sun.xml.bind.v2.model.core package for XJC.

See:
          Description

Interface Summary
CClass Either CClassInfo or CClassRef.
CClassInfoParent Parent of a CClassInfo/CElementInfo.
CClassInfoParent.Visitor<T> Visitor of CClassInfoParent
CCustomizable Implemented by model components that can have customizations contributed by Plugins.
CElement Either CElementInfo, CClassInfo, or CClassRef.
CNonElement NonElement at compile-time.
CPropertyVisitor<V> Visitor for CPropertyInfo.
CTypeInfo TypeInfo at the compile-time.
Populatable Mark model components which does additional code generation.
TypeUse Information about how another type is referenced.
 

Class Summary
AbstractCElement Partial default implementation of CElement.
AbstractCTypeInfoImpl Partial implementation of CTypeInfo.
AutoClassNameAllocator ClassNameAllocator filter that performs automatic name conflict resolution.
CAdapter Extended Adapter for use within XJC.
CArrayInfo Because XJC doesn't generate the array binding, this class will never show up in the model constructed by XJC.
CAttributePropertyInfo AttributePropertyInfo for the compiler.
CBuiltinLeafInfo Encapsulates the default handling for leaf classes (which are bound to text in XML.) In particular this class knows how to convert the lexical value into the Java class according to this default rule.
CClassInfo Mutable ClassInfo represenatation.
CClassInfoParent.Package JPackage as a CClassInfoParent.
CClassRef Refernece to an existing class.
CCustomizations Represents the list of CPluginCustomizations attached to a JAXB model component.
CDefaultValue Object that computes the default value expression lazily.
CElementInfo ElementInfo implementation for the compile-time model.
CElementPropertyInfo ElementPropertyInfo for the compiler.
CEnumConstant Enumeration constant.
CEnumLeafInfo Transducer that converts a string into an "enumeration class." The structure of the generated class needs to precisely follow the JAXB spec.
ClassNameAllocatorWrapper Wraps ClassNameAllocator and provides convenience.
Constructor Constructor declaration.
CPluginCustomization Vendor extension customization contributed from Plugins.
CPropertyInfo Model of a property to be generated.
CReferencePropertyInfo ReferencePropertyInfo for the compiler.
CSingleTypePropertyInfo CPropertyInfo backed by a single TypeUse.
CTypeRef TypeRef for XJC.
CValuePropertyInfo ValuePropertyInfo implementation for XJC.
CWildcardTypeInfo CTypeInfo for the DOM node.
Model Root of the object model that represents the code that needs to be generated.
Multiplicity represents a possible number of occurence.
SymbolSpace Symbol space for ID/IDREF.
TypeUseFactory Factory methods to create a new TypeUse from an existing one.
TypeUseImpl General-purpose TypeUse implementation.
 

Enum Summary
CElementPropertyInfo.CollectionMode  
 

Package com.sun.tools.xjc.model Description

Implementation of the com.sun.xml.bind.v2.model.core package for XJC.

This model is the recipes for the code generation. It captures the essence of the JAXB-bound beans, so that the actual Java code can be generated from this object model mechanically without knowing anything about how the model was built.

Most of the classes/interfaces in this package has one-to-one relationship with the parameterized core model in the com.sun.xml.bind.v2.model.core package. Refer to the core model for better documentation.

The model for XJC also exposes a few additional information on top of the core model. Those are defined in this package. This includes such information as:

Source location information
Locator object that can be used to tell where the model components are created from in terms of the source file. Useful for error reporting.
Source schema component
XSComponent object from which the model components are created from. See CCustomizable#getSchemaComponent() for example.
Plugin customizations
See CCustomizable.