private static class UsageFinder.UsageVisitor extends SchemaVisitor
Modifier and Type | Field and Description |
---|---|
private java.util.ArrayList |
m_newReferences
Added references list (
null if unused). |
private java.util.Set |
m_nonSingletonSet
Set of definitions referenced as non-required or repeating items.
|
private SchemaContextTracker |
m_tracker
Tracker for schema context information.
|
private ReferenceCountMap |
m_usageMap
Usage counts found for each global definition.
|
Constructor and Description |
---|
UsageVisitor()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private void |
addNonSingleton(java.lang.Object obj)
Convenience method for recording a non-singleton reference.
|
void |
addReferenceClosure(AnnotatedBase comp)
Add usage counts for the reference closure of a definition.
|
private void |
countUse(java.lang.Object obj)
Convenience method for incrementing a use count.
|
void |
exit(AttributeElement node)
Exit attribute element.
|
void |
exit(AttributeGroupRefElement node)
Exit attributeGroup element for reference.
|
void |
exit(ComplexExtensionElement node)
Exit extension element used for complex type.
|
void |
exit(ComplexRestrictionElement node)
Exit restriction element used for complex type.
|
void |
exit(ElementElement node)
Exit element element.
|
void |
exit(GroupRefElement node)
Exit group element for reference.
|
void |
exit(ListElement node)
Exit list element.
|
void |
exit(SimpleExtensionElement node)
Exit extension element for simple type.
|
void |
exit(SimpleRestrictionElement node)
Exit restriction element for simple type.
|
void |
exit(UnionElement node)
Exit union element.
|
ISchemaListener |
getListener()
Get the schema change listener for this visitor.
|
java.util.Set |
getNonSingletonSet()
Get the set of definitions referenced as optional or repeating.
|
ReferenceCountMap |
getUsageMap()
Get map of reference counts per component.
|
void |
reset()
Clear all state information.
|
void |
setNameRegister(NameRegister reg)
Set the register to be used for resolving name references.
|
exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, exit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
private final SchemaContextTracker m_tracker
private final ReferenceCountMap m_usageMap
private final java.util.Set m_nonSingletonSet
private java.util.ArrayList m_newReferences
null
if unused).public ISchemaListener getListener()
private void countUse(java.lang.Object obj)
obj
- referenced object (null
if none, ignored if a schema type)private void addNonSingleton(java.lang.Object obj)
obj
- referenced object (null
if none)public void addReferenceClosure(AnnotatedBase comp)
comp
- definition to be processedpublic void setNameRegister(NameRegister reg)
reg
- public ReferenceCountMap getUsageMap()
public java.util.Set getNonSingletonSet()
public void reset()
public void exit(AttributeElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(AttributeGroupRefElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(ComplexExtensionElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(ComplexRestrictionElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(ElementElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(GroupRefElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(ListElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(SimpleExtensionElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(SimpleRestrictionElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exitedpublic void exit(UnionElement node)
SchemaVisitor
exit
in class SchemaVisitor
node
- element being exited