boolean nonPreferred = false; if (IBaseResource.class.isAssignableFrom(next)) { elementName = getElementName() + StringUtils.capitalize(next.getSimpleName()); List<Class<? extends IBaseResource>> types = new ArrayList<Class<? extends IBaseResource>>(); types.add((Class<? extends IBaseResource>) next); nextDef = findResourceReferenceDefinition(theClassToElementDefinitions); myNameToChildDefinition.put(getElementName() + "Reference", nextDef); myNameToChildDefinition.put(getElementName() + "Resource", nextDef); Class<? extends IBaseDatatype> profileType = nextDefDatatype.getProfileOf(); BaseRuntimeElementDefinition<?> elementDef = theClassToElementDefinitions.get(profileType); elementName = getElementName() + StringUtils.capitalize(elementDef.getName()); elementName = getElementName() + StringUtils.capitalize(nextDefForChoice.getName()); elementName = getElementName() + myReferenceSuffix; myNameToChildDefinition.put(elementName, nextDef); String existing = myDatatypeToElementName.get(next); if (!existing.equals(elementName)) { throw new ConfigurationException("Already have element name " + existing + " for datatype " + next.getSimpleName() + " in " + getElementName() + ", cannot add " + elementName);
boolean nonPreferred = false; if (IBaseResource.class.isAssignableFrom(next)) { elementName = getElementName() + StringUtils.capitalize(next.getSimpleName()); List<Class<? extends IBaseResource>> types = new ArrayList<Class<? extends IBaseResource>>(); types.add((Class<? extends IBaseResource>) next); nextDef = findResourceReferenceDefinition(theClassToElementDefinitions); myNameToChildDefinition.put(getElementName() + "Reference", nextDef); myNameToChildDefinition.put(getElementName() + "Resource", nextDef); Class<? extends IBaseDatatype> profileType = nextDefDatatype.getProfileOf(); BaseRuntimeElementDefinition<?> elementDef = theClassToElementDefinitions.get(profileType); elementName = getElementName() + StringUtils.capitalize(elementDef.getName()); elementName = getElementName() + StringUtils.capitalize(nextDefForChoice.getName()); elementName = getElementName() + myReferenceSuffix; myNameToChildDefinition.put(elementName, nextDef); String existing = myDatatypeToElementName.get(next); if (!existing.equals(elementName)) { throw new ConfigurationException("Already have element name " + existing + " for datatype " + next.getSimpleName() + " in " + getElementName() + ", cannot add " + elementName);