/** * If <code>value</code> is a {@link Map} the element with given <code>name</code> as key is returned. * If <code>value</code> is NOT a {@link Map} its {@link String#valueOf(Object)} result is returned. * * @param value * @param name * @return name or result (see above) */ private Object extractChildValue(final Object value, final String name) { if (value instanceof Map) { Map<?, ?> map = (Map<?, ?>) value; return map.get(name); }else if (value instanceof Entity) { Map<?, ?> map = ((Entity) value).getProperties(); return map.get(name); } return String.valueOf(value); }
if (properties.isIncludeMetadata()) { selfLink = createSelfLink(eia, data.getProperties(), null, properties.isKeyAutoGenerated(), false); appendAtomMandatoryParts(writer, eia, data.getProperties()); appendAtomOptionalParts(writer, eia, data.getProperties()); appendAtomEditLink(writer, eia, selfLink); if (eia.getEntityType().hasStream()) { appendAtomContentLink(writer, eia, data.getProperties(), selfLink); appendCustomProperties(writer, eia, data.getProperties()); appendAtomContentPart(writer, eia, data.getProperties(), selfLink); appendProperties(writer, eia, data.getProperties()); } else { writer.writeStartElement(FormatXml.ATOM_CONTENT); writer.writeAttribute(FormatXml.ATOM_TYPE, ContentType.APPLICATION_XML.toString()); appendProperties(writer, eia, data.getProperties()); writer.writeEndElement();
Map<String, Object> navigationKeyMap = navigationEntity.getProperties(); if (navigationKeyMap != null && !navigationKeyMap.isEmpty()) { String navigationPropertyName = entry.getKey(); String selfLink = createSelfLink(eia, data.getProperties(), navigationPropertyName, properties.isKeyAutoGenerated(), false); appendNavigationLink(writer, selfLink, navigationPropertyName); String selfLink = createSelfLink(eia, data.getProperties(), navigationPropertyName, properties.isKeyAutoGenerated(), false); if (!((EntityCollection) entry.getValue()).getEntities().isEmpty()) {
private void appendInlineEntry(final XMLStreamWriter writer, final String navigationPropertyName, final EntityInfoAggregator eia, final Entity data) throws EntityProviderException, XMLStreamException, EdmException { if (data.getNavigations() != null && data.getNavigations().containsKey(navigationPropertyName)) { EdmNavigationProperty navProp = (EdmNavigationProperty) eia.getEntityType().getProperty(navigationPropertyName); Entity inlineData = (Entity) data.getNavigation(navigationPropertyName); if ((inlineData == null) || inlineData.getProperties().size() == 0) { return; } writer.writeStartElement(Edm.NAMESPACE_M_2007_08, FormatXml.M_INLINE); if (inlineData != null && !(inlineData.getProperties().isEmpty())) { inlineData.setWriteProperties(inlineData.getWriteProperties() == null ? data.getWriteProperties() : inlineData .getWriteProperties()); EdmEntitySet inlineEntitySet = eia.getEntitySet().getRelatedEntitySet(navProp); AtomEntryEntitySerializer inlineProducer = new AtomEntryEntitySerializer(inlineData.getWriteProperties()); EntityInfoAggregator inlineEia = EntityInfoAggregator.create(inlineEntitySet, null); inlineProducer.append(writer, inlineEia, inlineData, false, false); } writer.writeEndElement(); } }
writeMetadata(entityInfo, data.getProperties(), type); containsMetadata = true; writeProperties(entityInfo, data.getProperties(), type, containsMetadata);
throw new EntityProviderException(EntityProviderException.NULL_VALUE); if (inlineData != null && inlineData.getProperties() != null && !inlineData.getProperties().isEmpty()) { final EntitySerializerProperties inlineProperties = inlineData.getWriteProperties() == null ? EntitySerializerProperties.
final EdmSimpleType type = (EdmSimpleType) propertyInfo.getType(); final Object contentValue = value instanceof Entity ? ((Entity) value). getProperties().get(propertyInfo.getName()) : value; final EdmFacets facets = validatingFacets ? propertyInfo.getFacets(): null; String valueAsString = null;