use of org.apache.ws.commons.schema.XmlSchemaElement in project ddf by codice.
the class FeatureMetacardTypeTest method testFeatureMetacardTypeStringAndGmlProperties.
@Test
public void testFeatureMetacardTypeStringAndGmlProperties() {
XmlSchema schema = new XmlSchema();
XmlSchemaElement stringElement = new XmlSchemaElement(schema, true);
stringElement.setSchemaType(new XmlSchemaSimpleType(schema, false));
stringElement.setSchemaTypeName(Constants.XSD_STRING);
stringElement.setName(ELEMENT_NAME_1);
XmlSchemaElement gmlElement = new XmlSchemaElement(schema, true);
gmlElement.setSchemaType(new XmlSchemaComplexType(schema, false));
gmlElement.setSchemaTypeName(new QName(Wfs10Constants.GML_NAMESPACE, GML));
gmlElement.setName(ELEMENT_NAME_2);
schema.getElements().put(new QName(ELEMENT_NAME_1), stringElement);
schema.getElements().put(new QName(ELEMENT_NAME_2), gmlElement);
FeatureMetacardType featureMetacardType = new FeatureMetacardType(schema, FEATURE_TYPE, NON_QUERYABLE_PROPS, Wfs10Constants.GML_NAMESPACE);
assertTrue(featureMetacardType.getTextualProperties().size() == 1);
assertTrue(featureMetacardType.getGmlProperties().size() == 1);
assertAttributeDescriptor(featureMetacardType, ELEMENT_NAME_1, BasicTypes.STRING_TYPE);
assertAttributeDescriptor(featureMetacardType, ELEMENT_NAME_2, BasicTypes.GEO_TYPE);
}
use of org.apache.ws.commons.schema.XmlSchemaElement in project ddf by codice.
the class FeatureMetacardTypeTest method testFeatureMetacardTypeMultipleStringProperties.
@Test
public void testFeatureMetacardTypeMultipleStringProperties() {
XmlSchema schema = new XmlSchema();
XmlSchemaElement stringElement = new XmlSchemaElement(schema, true);
stringElement.setSchemaType(new XmlSchemaSimpleType(schema, false));
stringElement.setSchemaTypeName(Constants.XSD_STRING);
stringElement.setName(ELEMENT_NAME_1);
XmlSchemaElement stringElement2 = new XmlSchemaElement(schema, true);
stringElement2.setSchemaType(new XmlSchemaSimpleType(schema, false));
stringElement2.setSchemaTypeName(Constants.XSD_STRING);
stringElement2.setName(ELEMENT_NAME_2);
schema.getElements().put(new QName(ELEMENT_NAME_1), stringElement);
schema.getElements().put(new QName(ELEMENT_NAME_2), stringElement2);
FeatureMetacardType featureMetacardType = new FeatureMetacardType(schema, FEATURE_TYPE, NON_QUERYABLE_PROPS, Wfs10Constants.GML_NAMESPACE);
assertTrue(featureMetacardType.getTextualProperties().size() == 2);
assertAttributeDescriptor(featureMetacardType, ELEMENT_NAME_2, BasicTypes.STRING_TYPE);
assertAttributeDescriptor(featureMetacardType, ELEMENT_NAME_1, BasicTypes.STRING_TYPE);
}
use of org.apache.ws.commons.schema.XmlSchemaElement in project ddf by codice.
the class FeatureMetacardTypeTest method testFeatureMetacardTypeFindTaxonomyMetacardAttributes.
@Test
public void testFeatureMetacardTypeFindTaxonomyMetacardAttributes() {
XmlSchema schema = new XmlSchema();
XmlSchemaElement element = new XmlSchemaElement(schema, true);
element.setSchemaType(new XmlSchemaSimpleType(schema, false));
element.setSchemaTypeName(Constants.XSD_STRING);
element.setName(ELEMENT_NAME);
schema.getElements().put(new QName(ELEMENT_NAME), element);
FeatureMetacardType fmt = new FeatureMetacardType(schema, FEATURE_TYPE, NON_QUERYABLE_PROPS, Wfs10Constants.GML_NAMESPACE);
Set<AttributeDescriptor> descriptors = initDescriptors();
for (AttributeDescriptor ad : descriptors) {
assertBasicAttributeDescriptor(fmt, ad.getName(), ad.getType());
assertFalse(fmt.getAttributeDescriptor(ad.getName()).isStored());
}
// +1 to account for one element added to schema.
assertThat(fmt.getAttributeDescriptors().size(), is(descriptors.size() + 1));
}
use of org.apache.ws.commons.schema.XmlSchemaElement in project ddf by codice.
the class FeatureMetacardType method processXmlSchema.
private void processXmlSchema(XmlSchema schema) {
Map<QName, XmlSchemaElement> elements = schema.getElements();
Iterator<XmlSchemaElement> xmlSchemaElementIterator = elements.values().iterator();
while (xmlSchemaElementIterator.hasNext()) {
Object o = xmlSchemaElementIterator.next();
XmlSchemaElement element = (XmlSchemaElement) o;
XmlSchemaType schemaType = element.getSchemaType();
if (schemaType instanceof XmlSchemaComplexType) {
processComplexType(element);
} else if (schemaType instanceof XmlSchemaSimpleType) {
processSimpleType(element);
}
}
}
use of org.apache.ws.commons.schema.XmlSchemaElement in project ddf by codice.
the class TestGenericFeatureConverter method buildStatesElementMap.
private Map<QName, XmlSchemaElement> buildStatesElementMap(XmlSchema schema) {
Map<QName, XmlSchemaElement> elementMap = new HashMap<QName, XmlSchemaElement>();
elementMap.put(new QName(STATES_TITLE_ELEMENT), buildSchemaElement(STATES_TITLE_ELEMENT, schema, Constants.XSD_STRING));
XmlSchemaElement gmlElement = new XmlSchemaElement(schema, true);
gmlElement.setSchemaType(new XmlSchemaComplexType(schema, false));
gmlElement.setSchemaTypeName(new QName(Wfs20Constants.GML_3_2_NAMESPACE, GML));
gmlElement.setName("the_geom");
elementMap.put(new QName("the_geom"), gmlElement);
return elementMap;
}
Aggregations