|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
java.lang.Objectorg.jibx.schema.codegen.ImportsTracker
public class ImportsTracker
Organizer for imports to a source file. This is a state-based organizer, which allows tentative imports to be
overridden up until the point where the map from fully-qualified class names to unqualified names is constructed by
calling getNameMap(), then further non-conflicting imports are allowed until the final import list is
constructed by calling freeze(String).
| Field Summary | |
|---|---|
private boolean |
m_frozen
Further imports blocked flag. |
private java.util.TreeSet |
m_importedTypes
Set of imported classes. |
private java.util.Map |
m_localTypeName
Set of unqualified type full names. |
private java.util.Map |
m_nameMap
Map from class names in imports set to names used ( null until getNameMap() called). |
private java.lang.String |
m_packageName
Package name for classes in source. |
private java.util.Map |
m_unqualifiedNameType
Map from simple names of unqualified types to full names. |
| Constructor Summary | |
|---|---|
ImportsTracker(java.lang.String pkgname)
Constructor. |
|
| Method Summary | |
|---|---|
protected boolean |
addImport(java.lang.String fqname,
boolean force)
Add import for class. |
void |
addLocalType(java.lang.String name,
java.lang.String fqname)
Add local definition name to those visible in class. |
java.util.List |
freeze(java.lang.String cname)
Freeze imports and return a list of imports. |
java.lang.String |
getName(java.lang.String type)
Get the name to be used for a type. |
java.util.Map |
getNameMap()
Get map from imported fully-qualified class names to short names. |
boolean |
isQualified(java.lang.String fqname)
Check if type needs qualified references. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private final java.lang.String m_packageName
private final java.util.TreeSet m_importedTypes
private final java.util.Map m_unqualifiedNameType
private final java.util.Map m_localTypeName
private java.util.Map m_nameMap
null until getNameMap() called).
private boolean m_frozen
| Constructor Detail |
|---|
public ImportsTracker(java.lang.String pkgname)
pkgname - containing package name| Method Detail |
|---|
public void addLocalType(java.lang.String name,
java.lang.String fqname)
name - simple class namefqname - fully qualified class name
protected boolean addImport(java.lang.String fqname,
boolean force)
fqname - fully qualified class nameforce - force replacement of current import
true if added as importpublic boolean isQualified(java.lang.String fqname)
fqname - fully qualified class name
true if needs qualificationpublic java.util.Map getNameMap()
public java.lang.String getName(java.lang.String type)
getNameMap(), which in
turn blocks removing any imports later.
type - fully-qualified type name
public java.util.List freeze(java.lang.String cname)
cname - simple name of class (used to identify inner class references)
|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||