/** * Constructor. * * @param name full package name (dot-separated form) * @param dir target directory for code generation (<code>null</code> if skipping code generation) * @param parent parent package information */ public PackageHolder(String name, File dir, PackageHolder parent) { m_packageName = name; m_generateDirectory = dir; m_parentPackage = parent; if (m_parentPackage != null) { m_parentPackage.m_subpackageCount++; } m_nameSet = new UniqueNameSet(); m_classes = new ArrayList(); m_allClasses = new ArrayList(); }
/** * Fix local name to be unique within the appropriate namespace for a category of names. * * @param qname requested qualified name (<code>null</code> allowed, always returns <code>null</code>) * @param map namespace URI to {@link UniqueNameSet} map for category * @return unique version of qualified name */ private QName fixQName(QName qname, Map map) { if (qname != null) { String uri = qname.getUri(); UniqueNameSet nameset = (UniqueNameSet)map.get(uri); if (nameset == null) { nameset = new UniqueNameSet(); map.put(uri, nameset); } String base = qname.getName(); String name = nameset.add(base); if (name.equals(base)) { return qname; } else { return new QName(uri, name); } } else { return null; } }
UniqueNameSet prefset = new UniqueNameSet(); prefset.add(m_schemaPrefix); for (Iterator iter = uritoprefix.keySet().iterator(); iter.hasNext();) {
/** * Constructor. * * @param name class name * @param base base class name * @param pack package information * @param holder binding holder * @param nconv name converter * @param decorators class decorators * @param inner use inner classes for substructures * @param simple simple value flag */ public ClassHolder(String name, String base, PackageHolder pack, BindingHolder holder, NameConverter nconv, ClassDecorator[] decorators, boolean inner, boolean simple) { super(buildName(name, pack), simple); m_package = pack; m_holder = holder; m_nameConverter = nconv; m_name = name; m_baseName = base; m_decorators = decorators; m_useInnerClasses = inner; m_importsTracker = new ImportsTracker(pack.getName()); m_outerClass = null; m_inners = new LazyList(); m_nameSet = new UniqueNameSet(); m_nameSet.add(name); m_importsTracker.addLocalType(name, getFullName()); }
/** * Constructor for creating a child inner class definition. * * @param name class name * @param context parent class * @param simple simple value flag */ protected ClassHolder(String name, ClassHolder context, boolean simple) { super(context.getFullName() + '.' + name, context.getBindingName() + '$' + name, simple); m_package = context.m_package; m_holder = context.m_holder; m_nameConverter = context.m_nameConverter; m_name = name; m_baseName = null; m_decorators = context.m_decorators; m_useInnerClasses = true; m_importsTracker = context.m_importsTracker; m_outerClass = context; m_inners = new LazyList(); m_nameSet = new UniqueNameSet(); ClassHolder scan = this; while (scan != null) { m_nameSet.add(scan.getName()); scan = scan.m_outerClass; } m_importsTracker.addLocalType(name, getFullName()); m_package.addInnerClass(this); }
m_selectSet = new UniqueNameSet();