Package com.sun.msv.reader.datatype.xsd
Class LazyTypeIncubator
- java.lang.Object
-
- com.sun.msv.reader.datatype.xsd.LazyTypeIncubator
-
- All Implemented Interfaces:
XSTypeIncubator
class LazyTypeIncubator extends java.lang.Object implements XSTypeIncubator
Lazy XSTypeIncubatorThis incubator is used to add facets to lazily created XSDatatypeExp object. Since the actual Datatype object is not available when facets are parsed, this object merely stores all facets when the addFacet method is called.
Once the actual Datatype is provided, this class uses ordinary TypeIncubator and builds a real type object.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
LazyTypeIncubator.Facet
store the information about one added facet.
-
Field Summary
Fields Modifier and Type Field Description private XSDatatypeExp
baseType
base object.private java.util.List
facets
applied facets.private GrammarReader
reader
-
Constructor Summary
Constructors Constructor Description LazyTypeIncubator(XSDatatypeExp base, GrammarReader reader)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addFacet(java.lang.String name, java.lang.String strValue, boolean fixed, org.relaxng.datatype.ValidationContext context)
XSDatatypeExp
derive(java.lang.String nsUri, java.lang.String localName)
-
-
-
Field Detail
-
baseType
private final XSDatatypeExp baseType
base object.
-
reader
private final GrammarReader reader
-
facets
private final java.util.List facets
applied facets. Order between facets are possibly significant.
-
-
Constructor Detail
-
LazyTypeIncubator
public LazyTypeIncubator(XSDatatypeExp base, GrammarReader reader)
-
-
Method Detail
-
addFacet
public void addFacet(java.lang.String name, java.lang.String strValue, boolean fixed, org.relaxng.datatype.ValidationContext context)
- Specified by:
addFacet
in interfaceXSTypeIncubator
-
derive
public XSDatatypeExp derive(java.lang.String nsUri, java.lang.String localName) throws org.relaxng.datatype.DatatypeException
- Specified by:
derive
in interfaceXSTypeIncubator
- Throws:
org.relaxng.datatype.DatatypeException
-
-