- java.lang.Object
-
- com.sun.tools.xjc.reader.xmlschema.ParticleBinder
-
public abstract class ParticleBinder extends Object
Binds the content models ofXSParticle
as properties of the class that's being built.- Author:
- Kohsuke Kawaguchi ([email protected])
-
-
Field Summary
Fields Modifier and Type Field Description protected BGMBuilder
builder
-
Constructor Summary
Constructors Modifier Constructor Description protected
ParticleBinder()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
build(XSParticle p)
Builds theCPropertyInfo
s from the given particle (and its descendants), and set them to the class returned byClassSelector.getCurrentBean()
.abstract void
build(XSParticle p, Collection<XSParticle> forcedProps)
The version of the build method that forces a specified set of particles to become a property.abstract boolean
checkFallback(XSParticle p)
Similar to the build method but this method only checks if the BGM that will be built by the build method will do the fallback (map all the properties into one list) or not.protected String
computeLabel(XSParticle p)
Computes the label of a given particle.protected ClassSelector
getClassSelector()
protected CClassInfo
getCurrentBean()
protected ErrorReporter
getErrorReporter()
protected <T extends BIDeclaration>
TgetLocalCustomization(XSParticle p, Class<T> type)
protected BIProperty
getLocalPropCustomization(XSParticle p)
Gets the BIProperty object that applies to the given particle.protected String
getSpecDefaultName(XSModelGroup mg, boolean repeated)
Computes a name from unnamed model group by following the spec.protected String
makeJavaName(boolean isRepeated, String xmlName)
Converts an XML name to the corresponding Java name.protected String
makeJavaName(XSParticle p, String xmlName)
-
-
-
Field Detail
-
builder
protected final BGMBuilder builder
-
-
Method Detail
-
build
public final void build(XSParticle p)
Builds theCPropertyInfo
s from the given particle (and its descendants), and set them to the class returned byClassSelector.getCurrentBean()
.
-
build
public abstract void build(XSParticle p, Collection<XSParticle> forcedProps)
The version of the build method that forces a specified set of particles to become a property.
-
checkFallback
public abstract boolean checkFallback(XSParticle p)
Similar to the build method but this method only checks if the BGM that will be built by the build method will do the fallback (map all the properties into one list) or not.- Returns:
- false if the fallback will not happen.
-
getCurrentBean
protected final CClassInfo getCurrentBean()
-
getLocalPropCustomization
protected final BIProperty getLocalPropCustomization(XSParticle p)
Gets the BIProperty object that applies to the given particle.
-
getLocalCustomization
protected final <T extends BIDeclaration> T getLocalCustomization(XSParticle p, Class<T> type)
-
computeLabel
protected final String computeLabel(XSParticle p)
Computes the label of a given particle. Usually, the getLabel method should be used instead.
-
makeJavaName
protected final String makeJavaName(boolean isRepeated, String xmlName)
Converts an XML name to the corresponding Java name.
-
makeJavaName
protected final String makeJavaName(XSParticle p, String xmlName)
-
getSpecDefaultName
protected final String getSpecDefaultName(XSModelGroup mg, boolean repeated) throws ParseException
Computes a name from unnamed model group by following the spec. Taking first three elements and combine them.- Parameters:
repeated
- if the said model group is repeated more than once- Throws:
ParseException
- If the method cannot generate a name. For example, when a model group doesn't contain any element reference/declaration at all.
-
getErrorReporter
protected final ErrorReporter getErrorReporter()
-
getClassSelector
protected final ClassSelector getClassSelector()
-
-