[OLINGO-832] Fix in xml serialization for streamed entity set/iterator
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/40ff7be0 Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/40ff7be0 Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/40ff7be0 Branch: refs/heads/OLINGO-856_ODataHandlerInAPI Commit: 40ff7be0f346db43e2f7f72acabb1715fa6dba24 Parents: a44f38d Author: Michael Bolz <[email protected]> Authored: Fri Feb 26 08:02:39 2016 +0100 Committer: Michael Bolz <[email protected]> Committed: Fri Feb 26 08:02:39 2016 +0100 ---------------------------------------------------------------------- .../olingo/fit/tecsvc/http/BasicStreamITCase.java | 5 ++--- .../server/core/serializer/xml/ODataXmlSerializer.java | 13 +------------ .../tecsvc/processor/TechnicalEntityProcessor.java | 3 +-- 3 files changed, 4 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/40ff7be0/fit/src/test/java/org/apache/olingo/fit/tecsvc/http/BasicStreamITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/tecsvc/http/BasicStreamITCase.java b/fit/src/test/java/org/apache/olingo/fit/tecsvc/http/BasicStreamITCase.java index a3e0c8d..566cb39 100644 --- a/fit/src/test/java/org/apache/olingo/fit/tecsvc/http/BasicStreamITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/tecsvc/http/BasicStreamITCase.java @@ -74,11 +74,10 @@ public class BasicStreamITCase extends AbstractBaseTestITCase { assertTrue(content.contains("<m:element>[email protected]</m:element>" + "<m:element>[email protected]</m:element>" + "<m:element>[email protected]</m:element>")); - assertTrue(content.contains("<d:PropertyString>TEST 1</d:PropertyString>")); - assertTrue(content.contains("<d:PropertyString>TEST 2</d:PropertyString>")); + assertTrue(content.contains("<d:PropertyString>TEST 1->streamed</d:PropertyString>")); + assertTrue(content.contains("<d:PropertyString>TEST 2->streamed</d:PropertyString>")); } - @Override protected ODataClient getClient() { return null; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/40ff7be0/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/xml/ODataXmlSerializer.java ---------------------------------------------------------------------- diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/xml/ODataXmlSerializer.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/xml/ODataXmlSerializer.java index 399df3d..cde0593 100644 --- a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/xml/ODataXmlSerializer.java +++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/xml/ODataXmlSerializer.java @@ -286,16 +286,8 @@ public class ODataXmlSerializer extends AbstractODataSerializer { EntityCollectionSerializerOptions options, OutputStream outputStream) throws SerializerException { final ContextURL contextURL = checkContextURL(options == null ? null : options.getContextURL()); -// if (options != null && options.getWriteOnlyReferences()) { -// ReferenceCollectionSerializerOptions rso = ReferenceCollectionSerializerOptions.with() -// .contextURL(contextURL).build(); -// return entityReferenceCollection(entitySet, rso); -// } - - SerializerException cachedException = null; + SerializerException cachedException; try { - CircleStreamBuffer buffer = new CircleStreamBuffer(); - outputStream = buffer.getOutputStream(); XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outputStream, DEFAULT_CHARSET); writer.writeStartDocument(DEFAULT_CHARSET, "1.0"); writer.writeStartElement(ATOM, Constants.ATOM_ELEM_FEED, NS_ATOM); @@ -317,9 +309,6 @@ public class ODataXmlSerializer extends AbstractODataSerializer { && entitySet.getCount() != null) { writeCount(entitySet, writer); } - if (entitySet.getNext() != null) { - writeNextLink(entitySet, writer); - } if (options == null) { writeEntitySet(metadata, entityType, entitySet, null, null, null, writer); http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/40ff7be0/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/TechnicalEntityProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/TechnicalEntityProcessor.java b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/TechnicalEntityProcessor.java index 5b48095..770d90f 100644 --- a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/TechnicalEntityProcessor.java +++ b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/TechnicalEntityProcessor.java @@ -567,8 +567,7 @@ public class TechnicalEntityProcessor extends TechnicalProcessor * otherwise <code>FALSE</code>. */ private boolean isStreaming(EdmEntitySet edmEntitySet, ContentType contentType) { - return contentType.isCompatible(ContentType.APPLICATION_JSON) - && ContainerProvider.ES_STREAM.equalsIgnoreCase(edmEntitySet.getName()); + return ContainerProvider.ES_STREAM.equalsIgnoreCase(edmEntitySet.getName()); } private SerializerResult serializeEntityCollection(final ODataRequest request, final EntityCollection
