Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.sun.msv.reader.datatype.xsd
Class XSDatatypeExp

    java.lang.Object
      com.sun.msv.grammar.Expression
          com.sun.msv.grammar.ReferenceExp
              com.sun.msv.reader.datatype.xsd.XSDatatypeExp

All Implemented Interfaces:
  GrammarReader.BackPatch, java.io.Serializable

public class XSDatatypeExp
extends ReferenceExp
implements GrammarReader.BackPatch

A wrapper of XSDatatype that serves as an expression and encapsulates lazy-constructed datatypes.

Author:
  Kohsuke KAWAGUCHI
See Also:
  Serialized Form

Nested Class Summary
`static interface` | `XSDatatypeExp.Renderer` this object renders the actual datatype object.
`static class` | `XSDatatypeExp.RenderingContext` this object is used to keep the information about the dependency between late-bind datatype objects.

Field Summary

Fields inherited from class com.sun.msv.grammar.ReferenceExp
`exp, name`

Fields inherited from class com.sun.msv.grammar.Expression
`anyString, epsilon, nullSet, verifierTag`

Constructor Summary
`XSDatatypeExp(java.lang.String nsUri, java.lang.String typeName, GrammarReader reader, XSDatatypeExp.Renderer _renderer)` Creates lazily created datatype.
`XSDatatypeExp(XSDatatype dt, ExpressionPool _pool)` Creates this object from existing XSDatatype.

Method Summary
`XSDatatypeExp` | `createFinalizedType(int finalValue, GrammarReader reader)` Derives a new type by setting final values.
`XSTypeIncubator` | `createIncubator()` Creates an incubator so that the caller can add more facets and derive a new type.
`XSDatatypeExp` | `getClone()` Gets a clone of this object.
`XSDatatype` | `getCreatedType()` Gets a encapsulated datatype object This method can be called only after all the datatypes are created.
`State` | `getOwnerState()` gets State object who has submitted this patch job.
`XSDatatype` | `getType(XSDatatypeExp.RenderingContext context)` Gets the type definition.
`boolean` | `isLateBind()`
`static XSDatatypeExp` | `makeList(java.lang.String nsUri, java.lang.String typeName, XSDatatypeExp itemType, GrammarReader reader)` Derives a new type by list.
`static XSDatatypeExp` | `makeUnion(java.lang.String typeNameUri, java.lang.String typeName, java.util.Collection members, GrammarReader reader)` Derives a new type by union.
`void` | `patch()` Renders the type (GrammarReader.BackPatch implementation).
`void` | `redefine(XSDatatypeExp rhs)` Updates this object by copying the state from rhs

Methods inherited from class com.sun.msv.grammar.ReferenceExp
`equals, isDefined, visit, visit, visit, visit`

Methods inherited from class com.sun.msv.grammar.Expression
`getExpandedExp, hashCode, isEpsilonReducible, peelOccurence, visit, visit, visit, visit`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### XSDatatypeExp

    public XSDatatypeExp(XSDatatype dt,
                         ExpressionPool _pool)

  Creates this object from existing XSDatatype.

### XSDatatypeExp

    public XSDatatypeExp(java.lang.String nsUri,
                         java.lang.String typeName,
                         GrammarReader reader,
                         XSDatatypeExp.Renderer _renderer)

  Creates lazily created datatype.

Method Detail

### createIncubator

    public XSTypeIncubator createIncubator()

  Creates an incubator so that the caller can add more facets and derive a new type.

### getCreatedType

    public XSDatatype getCreatedType()

  Gets a encapsulated datatype object This method can be called only after all the datatypes are created.

  Some of the datatypes are lazily during the back-patching phase.

### getType

    public XSDatatype getType(XSDatatypeExp.RenderingContext context)

  Gets the type definition. This method renders the datatype object if it's not rendered yet. Internal use only.

### patch

    public void patch()

  Renders the type (GrammarReader.BackPatch implementation).

  Specified by:
    `patch` in interface `GrammarReader.BackPatch`

### getOwnerState

    public State getOwnerState()

  Description copied from interface: `GrammarReader.BackPatch`
  gets State object who has submitted this patch job.

  Specified by:
    `getOwnerState` in interface `GrammarReader.BackPatch`

### isLateBind

    public final boolean isLateBind()

### getClone

    public XSDatatypeExp getClone()

  Gets a clone of this object.

### redefine

    public void redefine(XSDatatypeExp rhs)

  Updates this object by copying the state from rhs

### createFinalizedType

    public XSDatatypeExp createFinalizedType(int finalValue,
                                             GrammarReader reader)

  Derives a new type by setting final values.

### makeList

    public static XSDatatypeExp makeList(java.lang.String nsUri,
                                         java.lang.String typeName,
                                         XSDatatypeExp itemType,
                                         GrammarReader reader)
                                  throws DatatypeException

  Derives a new type by list.

  Throws:
    `DatatypeException`

### makeUnion

    public static XSDatatypeExp makeUnion(java.lang.String typeNameUri,
                                          java.lang.String typeName,
                                          java.util.Collection members,
                                          GrammarReader reader)
                                   throws DatatypeException

  Derives a new type by union.

  Throws:
    `DatatypeException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD