/** * Since not all schema types have java types, this skips * over any that don't and gives you the nearest java base type. */ String findJavaType ( SchemaType sType ) { while ( sType.getFullJavaName() == null ) sType = sType.getBaseType(); return sType.getFullJavaName(); }
static SchemaType findBaseType(SchemaType sType) { while (sType.getFullJavaName() == null) sType = sType.getBaseType(); return sType; }
void printPackage(SchemaType sType, boolean intf) throws IOException { String fqjn; if (intf) fqjn = sType.getFullJavaName(); else fqjn = sType.getFullJavaImplName(); int lastdot = fqjn.lastIndexOf('.'); if (lastdot < 0) return; String pkg = fqjn.substring(0, lastdot); emit("package " + pkg + ";"); }
public void setShortJavaName(String name) { assertResolved(); _shortJavaName = name; SchemaType outer = _outerSchemaTypeRef.get(); while (outer.getFullJavaName() == null) outer = outer.getOuterType(); _fullJavaName = outer.getFullJavaName() + "$" + _shortJavaName; }
void makeAttributeDefaultValue(String jtargetType, SchemaProperty prop, String identifier) throws IOException { String fullName = jtargetType; if (fullName == null) fullName = prop.javaBasedOnType().getFullJavaName().replace('$', '.'); emit("target = (" + fullName + ")get_default_attribute_value(" + identifier + ");"); }
/** * 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; }
void startClass(SchemaType sType, boolean isInner) throws IOException { String shortName = sType.getShortJavaImplName(); String baseClass = getBaseClass(sType); StringBuffer interfaces = new StringBuffer(); interfaces.append(sType.getFullJavaName().replace('$', '.')); if (sType.getSimpleVariety() == SchemaType.UNION) { SchemaType[] memberTypes = sType.getUnionMemberTypes(); for (int i = 0 ; i < memberTypes.length ; i++) interfaces.append(", " + memberTypes[i].getFullJavaName().replace('$', '.')); } emit("public " + ( isInner ? "static ": "" ) + "class " + shortName + " extends " + baseClass + " implements " + interfaces.toString()); startBlock(); emit("private static final long serialVersionUID = 1L;"); }
public Class getEnumJavaClass() { // This field is declared volatile and Class is immutable so this is allowed. if (_javaEnumClass == null) { if ( getBaseEnumType() != null ) { try { _javaEnumClass = Class.forName(getBaseEnumType().getFullJavaName() + "$Enum", false, getTypeSystem().getClassLoader()); } catch (ClassNotFoundException e) { _javaEnumClass = null; } } } return _javaEnumClass; }
String className = gType.getFullJavaName(); if (className != null) state.addClassname(className.replace('$', '.'), gType);
if (type.isBuiltinType()) continue; if (type.getFullJavaName() == null) continue; String fjn = type.getFullJavaName();
QName name = t.getName(); _globalTypes.put(name, t); if (t.getFullJavaName() != null) addClassname(t.getFullJavaName(), t); QName name = t.getProperties()[0].getName(); _documentTypes.put(name, t); if (t.getFullJavaName() != null) addClassname(t.getFullJavaName(), t); QName name = t.getProperties()[0].getName(); _attributeTypes.put(name, t); if (t.getFullJavaName() != null) addClassname(t.getFullJavaName(), t);
emit(" * Namespace: " + thename.getNamespaceURI()); emit(" * Java type: " + sType.getFullJavaName()); emit(" *"); emit(" * Automatically generated - do not modify.");
break; case SchemaType.LIST: emit(" * This is a list type whose items are " + sType.getListItemType().getFullJavaName() + "."); break; case SchemaType.UNION: SchemaType[] members = sType.getUnionConstituentTypes(); for (int i = 0; i < members.length; i++) emit(" * " + members[i].getFullJavaName()); break;
public void setShortJavaName(String name) { assertResolved(); _shortJavaName = name; SchemaType outer = _outerSchemaTypeRef.get(); while (outer.getFullJavaName() == null) outer = outer.getOuterType(); _fullJavaName = outer.getFullJavaName() + "$" + _shortJavaName; }
void makeAttributeDefaultValue(String jtargetType, SchemaProperty prop, String identifier) throws IOException { String fullName = jtargetType; if (fullName == null) fullName = prop.javaBasedOnType().getFullJavaName().replace('$', '.'); emit("target = (" + fullName + ")get_default_attribute_value(" + identifier + ");"); }
void makeAttributeDefaultValue(String jtargetType, SchemaProperty prop, String identifier) throws IOException { String fullName = jtargetType; if (fullName == null) fullName = prop.javaBasedOnType().getFullJavaName().replace('$', '.'); emit("target = (" + fullName + ")get_default_attribute_value(" + identifier + ");"); }
void printStringEnumeration(SchemaType sType) throws IOException String baseEnumClass = baseEnumType.getFullJavaName(); boolean hasBase = hasBase(sType);
fullFactory = false; String fullName = sType.getFullJavaName().replace('$', '.');
if (bits != parentBits || sType.getBaseType().getFullJavaName() == null)
writeShort(((SchemaTypeImpl)type.getOuterType()).getIndexForLocalElement((SchemaLocalElement)type.getContainerField())); writeString(type.getFullJavaName()); writeString(type.getFullJavaImplName()); writeTypeArray(type.getAnonymousTypes());