/** * Only used in the nonbootstrapped case. */ private Map buildTypeRefsByClassname() { List allSeenTypes = new ArrayList(); Map result = new LinkedHashMap(); allSeenTypes.addAll(Arrays.asList(documentTypes())); allSeenTypes.addAll(Arrays.asList(attributeTypes())); allSeenTypes.addAll(Arrays.asList(globalTypes())); // now fully javaize everything deeply. for (int i = 0; i < allSeenTypes.size(); i++) { SchemaType gType = (SchemaType)allSeenTypes.get(i); String className = gType.getFullJavaName(); if (className != null) { result.put(className.replace('$', '.'), gType.getRef()); } allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes())); } return result; }
static void addAnonymousTypesFromRedefinition(SchemaType sType, List result) { while (((SchemaTypeImpl)sType).isRedefinition() && (sType.getDerivationType() == SchemaType.DT_EXTENSION || sType.isSimpleType())) { sType = sType.getBaseType(); SchemaType[] newAnonTypes = sType.getAnonymousTypes(); if (newAnonTypes.length > 0) result.addAll(Arrays.asList(newAnonTypes)); } } }
public static void checkAll() { // walk the tree of types StscState state = StscState.get(); List allSeenTypes = new ArrayList(); allSeenTypes.addAll(Arrays.asList(state.documentTypes())); allSeenTypes.addAll(Arrays.asList(state.attributeTypes())); allSeenTypes.addAll(Arrays.asList(state.redefinedGlobalTypes())); allSeenTypes.addAll(Arrays.asList(state.globalTypes())); for (int i = 0; i < allSeenTypes.size(); i++) { SchemaType gType = (SchemaType)allSeenTypes.get(i); if (!state.noPvr() && // option to turn off particle restriction checking !gType.isDocumentType()) // Don't check doc types for restriction. { checkRestriction((SchemaTypeImpl)gType); } checkFields((SchemaTypeImpl)gType); allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes())); } checkSubstitutionGroups(state.globalElements()); }
/** * Does a topo walk of all the types to resolve them. */ public static void resolveAll() { // resolve tree of types StscState state = StscState.get(); SchemaType[] documentTypes = state.documentTypes(); for (int i = 0 ; i < documentTypes.length ; i++) resolveSubstitutionGroup((SchemaTypeImpl)documentTypes[i]); List allSeenTypes = new ArrayList(); allSeenTypes.addAll(Arrays.asList(state.documentTypes())); allSeenTypes.addAll(Arrays.asList(state.attributeTypes())); allSeenTypes.addAll(Arrays.asList(state.redefinedGlobalTypes())); allSeenTypes.addAll(Arrays.asList(state.globalTypes())); for (int i = 0; i < allSeenTypes.size(); i++) { SchemaType gType = (SchemaType)allSeenTypes.get(i); resolveType((SchemaTypeImpl)gType); allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes())); } // Resolve all keyref refs resolveIdentityConstraints(); }
allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes()));
void saveTypesRecursively(SchemaType[] types) { for (int i = 0; i < types.length; i++) { if (types[i].getTypeSystem() != getTypeSystem()) continue; saveType(types[i]); saveTypesRecursively(types[i].getAnonymousTypes()); } }
SchemaType[] subTypes = curType.getAnonymousTypes(); String localName = part.substring(offset); for (int j = 0; j < subTypes.length; j++) SchemaType[] subTypes = curType.getAnonymousTypes(); String localName = part.substring(offset); for (int j = 0; j < subTypes.length; j++) SchemaType[] subTypes = curType.getAnonymousTypes(); if (subTypes.length != 1) return null; SchemaType[] subTypes = curType.getAnonymousTypes(); if (subTypes.length != 1) return null; SchemaType[] subTypes = curType.getAnonymousTypes(); if (subTypes.length <= index) return null;
allSeenTypes.addAll(Arrays.asList(sType.getAnonymousTypes()));
void printNestedInnerTypes(SchemaType sType, SchemaTypeSystem system) throws IOException { boolean redefinition = sType.getName() != null && sType.getName().equals(sType.getBaseType().getName()); while (sType != null) { SchemaType[] anonTypes = sType.getAnonymousTypes(); for (int i = 0; i < anonTypes.length; i++) { if (anonTypes[i].isSkippedAnonymousType()) printNestedInnerTypes(anonTypes[i], system); else printInnerType(anonTypes[i], system); } // For redefinition other than by extension for complex types, go ahead and print // the anonymous types in the base if (!redefinition || (sType.getDerivationType() != SchemaType.DT_EXTENSION && !sType.isSimpleType())) break; sType = sType.getBaseType(); } }
void printNestedTypeImpls(SchemaType sType, SchemaTypeSystem system) throws IOException { boolean redefinition = sType.getName() != null && sType.getName().equals(sType.getBaseType().getName()); while (sType != null) { SchemaType[] anonTypes = sType.getAnonymousTypes(); for (int i = 0; i < anonTypes.length; i++) { if (anonTypes[i].isSkippedAnonymousType()) printNestedTypeImpls(anonTypes[i], system); else printInnerTypeImpl(anonTypes[i], system, true); } // For redefinition by extension, go ahead and print the anonymous // types in the base if (!redefinition || (sType.getDerivationType() != SchemaType.DT_EXTENSION && !sType.isSimpleType())) break; sType = sType.getBaseType(); } } }
static void addAnonymousTypesFromRedefinition(SchemaType sType, List result) { while (((SchemaTypeImpl)sType).isRedefinition() && (sType.getDerivationType() == SchemaType.DT_EXTENSION || sType.isSimpleType())) { sType = sType.getBaseType(); SchemaType[] newAnonTypes = sType.getAnonymousTypes(); if (newAnonTypes.length > 0) result.addAll(Arrays.asList(newAnonTypes)); } } }
static void addAnonymousTypesFromRedefinition(SchemaType sType, List result) { while (((SchemaTypeImpl)sType).isRedefinition() && (sType.getDerivationType() == SchemaType.DT_EXTENSION || sType.isSimpleType())) { sType = sType.getBaseType(); SchemaType[] newAnonTypes = sType.getAnonymousTypes(); if (newAnonTypes.length > 0) result.addAll(Arrays.asList(newAnonTypes)); } } }
public static void checkAll() { // walk the tree of types StscState state = StscState.get(); List allSeenTypes = new ArrayList(); allSeenTypes.addAll(Arrays.asList(state.documentTypes())); allSeenTypes.addAll(Arrays.asList(state.attributeTypes())); allSeenTypes.addAll(Arrays.asList(state.redefinedGlobalTypes())); allSeenTypes.addAll(Arrays.asList(state.globalTypes())); for (int i = 0; i < allSeenTypes.size(); i++) { SchemaType gType = (SchemaType)allSeenTypes.get(i); if (!state.noPvr() && // option to turn off particle restriction checking !gType.isDocumentType()) // Don't check doc types for restriction. { checkRestriction((SchemaTypeImpl)gType); } checkFields((SchemaTypeImpl)gType); allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes())); } checkSubstitutionGroups(state.globalElements()); }
public static void checkAll() { // walk the tree of types StscState state = StscState.get(); List allSeenTypes = new ArrayList(); allSeenTypes.addAll(Arrays.asList(state.documentTypes())); allSeenTypes.addAll(Arrays.asList(state.attributeTypes())); allSeenTypes.addAll(Arrays.asList(state.redefinedGlobalTypes())); allSeenTypes.addAll(Arrays.asList(state.globalTypes())); for (int i = 0; i < allSeenTypes.size(); i++) { SchemaType gType = (SchemaType)allSeenTypes.get(i); if (!state.noPvr() && // option to turn off particle restriction checking !gType.isDocumentType()) // Don't check doc types for restriction. { checkRestriction((SchemaTypeImpl)gType); } checkFields((SchemaTypeImpl)gType); allSeenTypes.addAll(Arrays.asList(gType.getAnonymousTypes())); } checkSubstitutionGroups(state.globalElements()); }
void saveTypesRecursively(SchemaType[] types) { for (int i = 0; i < types.length; i++) { if (types[i].getTypeSystem() != getTypeSystem()) continue; saveType(types[i]); saveTypesRecursively(types[i].getAnonymousTypes()); } }
void saveTypesRecursively(SchemaType[] types) { for (int i = 0; i < types.length; i++) { if (types[i].getTypeSystem() != getTypeSystem()) continue; saveType(types[i]); saveTypesRecursively(types[i].getAnonymousTypes()); } }
void printNestedTypeImpls(SchemaType sType, SchemaTypeSystem system) throws IOException { boolean redefinition = sType.getName() != null && sType.getName().equals(sType.getBaseType().getName()); while (sType != null) { SchemaType[] anonTypes = sType.getAnonymousTypes(); for (int i = 0; i < anonTypes.length; i++) { if (anonTypes[i].isSkippedAnonymousType()) printNestedTypeImpls(anonTypes[i], system); else printInnerTypeImpl(anonTypes[i], system, true); } // For redefinition by extension, go ahead and print the anonymous // types in the base if (!redefinition || (sType.getDerivationType() != SchemaType.DT_EXTENSION && !sType.isSimpleType())) break; sType = sType.getBaseType(); } } }
void printNestedInnerTypes(SchemaType sType, SchemaTypeSystem system) throws IOException { boolean redefinition = sType.getName() != null && sType.getName().equals(sType.getBaseType().getName()); while (sType != null) { SchemaType[] anonTypes = sType.getAnonymousTypes(); for (int i = 0; i < anonTypes.length; i++) { if (anonTypes[i].isSkippedAnonymousType()) printNestedInnerTypes(anonTypes[i], system); else printInnerType(anonTypes[i], system); } // For redefinition other than by extension for complex types, go ahead and print // the anonymous types in the base if (!redefinition || (sType.getDerivationType() != SchemaType.DT_EXTENSION && !sType.isSimpleType())) break; sType = sType.getBaseType(); } }
void printNestedInnerTypes(SchemaType sType, SchemaTypeSystem system) throws IOException { boolean redefinition = sType.getName() != null && sType.getName().equals(sType.getBaseType().getName()); while (sType != null) { SchemaType[] anonTypes = sType.getAnonymousTypes(); for (int i = 0; i < anonTypes.length; i++) { if (anonTypes[i].isSkippedAnonymousType()) printNestedInnerTypes(anonTypes[i], system); else printInnerType(anonTypes[i], system); } // For redefinition other than by extension for complex types, go ahead and print // the anonymous types in the base if (!redefinition || (sType.getDerivationType() != SchemaType.DT_EXTENSION && !sType.isSimpleType())) break; sType = sType.getBaseType(); } }
writeTypeArray(type.getAnonymousTypes()); writeShort(type.getAnonymousUnionMemberOrdinal());