private void addDocumenation(Context c, EdmItem item, List<OProperty<?>> props) { if (item.getDocumentation() != null && (item.getDocumentation().getSummary() != null || item.getDocumentation().getLongDescription() != null) && c.pathHelper.isSelected(Edm.Documentation.name())) { List<OProperty<?>> docProps = new ArrayList<OProperty<?>>(); EdmComplexType docType = edm.findEdmComplexType(Edm.Documentation.fqName()); if (item.getDocumentation().getSummary() != null) { docProps.add(OProperties.string(Edm.Documentation.Summary, item.getDocumentation().getSummary())); } if (item.getDocumentation().getLongDescription() != null) { docProps.add(OProperties.string(Edm.Documentation.LongDescription, item.getDocumentation().getLongDescription())); } // OComplexObject doc = OComplexObjects.create(docType, docProps); props.add(OProperties.complex(Edm.Documentation.class.getSimpleName(), docType, docProps)); } }
private void addDocumenation(Context c, EdmItem item, List<OProperty<?>> props) { if (item.getDocumentation() != null && (item.getDocumentation().getSummary() != null || item.getDocumentation().getLongDescription() != null) && c.pathHelper.isSelected(Edm.Documentation.name())) { List<OProperty<?>> docProps = new ArrayList<OProperty<?>>(); EdmComplexType docType = edm.findEdmComplexType(Edm.Documentation.fqName()); if (item.getDocumentation().getSummary() != null) { docProps.add(OProperties.string(Edm.Documentation.Summary, item.getDocumentation().getSummary())); } if (item.getDocumentation().getLongDescription() != null) { docProps.add(OProperties.string(Edm.Documentation.LongDescription, item.getDocumentation().getLongDescription())); } // OComplexObject doc = OComplexObjects.create(docType, docProps); props.add(OProperties.complex(Edm.Documentation.class.getSimpleName(), docType, docProps)); } }
} else if (ov instanceof OComplexObject) { OComplexObject co = (OComplexObject) ov; props.add(OProperties.complex(propName, (EdmComplexType) co.getType(), co.getProperties())); } else if (ov instanceof OCollection) { OCollection<?> co = (OCollection<?>) ov;
protected void addProperty(List<OProperty<?>> props, String name, JsonStreamReader jsr) { JsonEvent event = jsr.nextEvent(); dump("json addProperty: " + name); if (event.isEndProperty()) { // scalar property EdmProperty ep = returnType.findProperty(name); if (ep == null) { throw new IllegalArgumentException("unknown property " + name + " for " + returnType.getFullyQualifiedTypeName()); } if (!ep.getType().isSimple()) { if (event.asEndProperty().getValue() == null) { // a complex property can be null in which case it looks like a simple property props.add(OProperties.complex(name, (EdmComplexType) ep.getType(), null)); } else { // we should not get here... throw new UnsupportedOperationException("Only simple properties supported"); } } else { props.add(JsonTypeConverter.parse(name, (EdmSimpleType<?>) ep.getType(), event.asEndProperty().getValue(), event.asEndProperty().getValueTokenType())); } } else if (event.isStartObject()) { // embedded complex object or array. parseEmbedded(name, event, jsr, props); } else { throw new JsonParseException("expecting endproperty or startobject, got: " + event.toString()); } dump("json done addProperty: " + name); }
} else if (ov instanceof OComplexObject) { OComplexObject co = (OComplexObject) ov; props.add(OProperties.complex(propName, (EdmComplexType) co.getType(), co.getProperties())); } else if (ov instanceof OCollection) { OCollection<?> co = (OCollection<?>) ov;
protected void addProperty(List<OProperty<?>> props, String name, JsonStreamReader jsr) { JsonEvent event = jsr.nextEvent(); dump("json addProperty: " + name); if (event.isEndProperty()) { // scalar property EdmProperty ep = returnType.findProperty(name); if (ep == null) { throw new IllegalArgumentException("unknown property " + name + " for " + returnType.getFullyQualifiedTypeName()); } if (!ep.getType().isSimple()) { if (event.asEndProperty().getValue() == null) { // a complex property can be null in which case it looks like a simple property props.add(OProperties.complex(name, (EdmComplexType) ep.getType(), null)); } else { // we should not get here... throw new UnsupportedOperationException("Only simple properties supported"); } } else { props.add(JsonTypeConverter.parse(name, (EdmSimpleType<?>) ep.getType(), event.asEndProperty().getValue(), event.asEndProperty().getValueTokenType())); } } else if (event.isStartObject()) { // embedded complex object or array. parseEmbedded(name, event, jsr, props); } else { throw new JsonParseException("expecting endproperty or startobject, got: " + event.toString()); } dump("json done addProperty: " + name); }
entry.properties.add(OProperties.complex(name, (EdmComplexType) ep.getType(), null)); } else { throw new UnsupportedOperationException("complex property unknown parse state"); entry.properties.add(OProperties.collection(name, val.collectionType, val.collection)); } else if (val.complexObject != null) { entry.properties.add(OProperties.complex(name, (EdmComplexType) val.complexObject.getType(), val.complexObject.getProperties()));
op = OProperties.complex(name, (EdmComplexType) et, isNull ? null : Enumerable.create(parseProperties(reader, event.asStartElement(), metadata, est)).toList()); } else { op = OProperties.parseSimple(name, (EdmSimpleType<?>) et, isNull ? null : reader.getElementText());
entry.properties.add(OProperties.complex(name, (EdmComplexType) ep.getType(), null)); } else { throw new UnsupportedOperationException("complex property unknown parse state"); entry.properties.add(OProperties.collection(name, val.collectionType, val.collection)); } else if (val.complexObject != null) { entry.properties.add(OProperties.complex(name, (EdmComplexType) val.complexObject.getType(), val.complexObject.getProperties()));
props.add(OProperties.complex(Edm.EntityType.Key, entityKeyType, key.getProperties()));
props.add(OProperties.complex(Edm.EntityType.Key, entityKeyType, key.getProperties()));
if (et != null && !et.isSimple()) { EdmStructuralType est = (EdmStructuralType) et; op = OProperties.complex(name, (EdmComplexType) et, isNull ? null : Enumerable.create(parseProperties(reader, event.asStartElement(), metadata, est)).toList()); } else { op = OProperties.parseSimple(name, (EdmSimpleType<?>) et, isNull ? null : reader.getElementText());
private static OProperty<?> readCollection(String name, EdmCollectionType collectionType, XMLEventReader2 reader, StartElement2 collectionElement, EdmDataServices metadata, EdmStructuralType structuralType) { EdmType componentType = collectionType.getItemType(); OCollection.Builder<OObject> b = OCollections.newBuilder(componentType); while (reader.hasNext()) { XMLEvent2 event = reader.nextEvent(); if (event.isEndElement() && event.asEndElement().getName().equals(collectionElement.getName())) { break; } if (event.isStartElement() && event.asStartElement().getName().getNamespaceUri().equals(NS_DATASERVICES)) { OProperty<?> op = null; Attribute2 nullAttribute = event.asStartElement().getAttributeByName(M_NULL); boolean isNull = nullAttribute != null && "true".equals(nullAttribute.getValue()); if (!componentType.isSimple()) { EdmStructuralType est = (EdmStructuralType) componentType; op = OProperties.complex(name, (EdmComplexType) componentType, isNull ? null : Enumerable.create(parseProperties(reader, event.asStartElement(), metadata, est)).toList()); } else { op = OProperties.parseSimple(name, (EdmSimpleType<?>) componentType, isNull ? null : reader.getElementText()); } b.add(OSimpleObjects.create((EdmSimpleType<?>)componentType, op.getValue())); } } return OProperties.collection(name, collectionType, b.build()); }
OComplexObject o = this.parseSingleObject(jsr, startProp); ensureEndObject(jsr.previousEvent()); props.add(OProperties.complex(propName, this.returnType, o.getProperties())); ensureEndProperty(jsr.nextEvent()); } finally {
OComplexObject o = this.parseSingleObject(jsr, startProp); ensureEndObject(jsr.previousEvent()); props.add(OProperties.complex(propName, this.returnType, o.getProperties())); ensureEndProperty(jsr.nextEvent()); } finally {