You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2016/02/08 16:06:17 UTC
olingo-odata4 git commit: [OLINGO-832] New ODataContent for streamed
and basic content
Repository: olingo-odata4
Updated Branches:
refs/heads/OLINGO-832_StreamSerializerPoC 18a78981f -> 31dea712e
[OLINGO-832] New ODataContent for streamed and basic content
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/31dea712
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/31dea712
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/31dea712
Branch: refs/heads/OLINGO-832_StreamSerializerPoC
Commit: 31dea712ef703672a20e650b8185855f1af8b4a2
Parents: 18a7898
Author: mibo <mi...@apache.org>
Authored: Mon Feb 8 15:25:45 2016 +0100
Committer: mibo <mi...@apache.org>
Committed: Mon Feb 8 16:06:01 2016 +0100
----------------------------------------------------------------------
.../apache/olingo/server/api/ODataContent.java | 32 ++++
.../apache/olingo/server/api/ODataResponse.java | 11 +-
.../server/api/WriteContentErrorCallback.java | 25 +++
.../server/api/serializer/SerializerResult.java | 8 +-
.../server/core/ODataHttpHandlerImpl.java | 17 +-
.../serializer/ChannelSerializerResult.java | 26 ++-
.../core/serializer/SerializerResultImpl.java | 40 ++--
.../core/serializer/StreamSerializerResult.java | 187 -------------------
.../processor/TechnicalEntityProcessor.java | 2 +-
9 files changed, 118 insertions(+), 230 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataContent.java
----------------------------------------------------------------------
diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataContent.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataContent.java
new file mode 100644
index 0000000..a3147f6
--- /dev/null
+++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataContent.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.server.api;
+
+import java.nio.channels.ReadableByteChannel;
+import java.nio.channels.WritableByteChannel;
+
+public interface ODataContent {
+ ReadableByteChannel getChannel();
+
+ void write(WritableByteChannel channel);
+
+ void write(WritableByteChannel channel, WriteContentErrorCallback callback);
+
+ boolean isWriteSupported();
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataResponse.java
----------------------------------------------------------------------
diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataResponse.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataResponse.java
index 5e2bad6..39c9452 100644
--- a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataResponse.java
+++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataResponse.java
@@ -19,7 +19,6 @@
package org.apache.olingo.server.api;
import org.apache.olingo.commons.api.http.HttpStatusCode;
-import org.apache.olingo.server.api.serializer.SerializerResult;
import java.io.InputStream;
import java.util.List;
@@ -132,13 +131,13 @@ public class ODataResponse {
return content;
}
- private SerializerResult serializerResult;
+ private ODataContent odataContent;
- public void setSerializerResult(SerializerResult result) {
- serializerResult = result;
+ public void setODataContent(ODataContent result) {
+ odataContent = result;
}
- public SerializerResult getSerializerResult() {
- return serializerResult;
+ public ODataContent getODataContent() {
+ return odataContent;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-api/src/main/java/org/apache/olingo/server/api/WriteContentErrorCallback.java
----------------------------------------------------------------------
diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/WriteContentErrorCallback.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/WriteContentErrorCallback.java
new file mode 100644
index 0000000..4219b8f
--- /dev/null
+++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/WriteContentErrorCallback.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.server.api;
+
+import java.nio.channels.WritableByteChannel;
+
+public interface WriteContentErrorCallback {
+ void handleError(ODataContent content, WritableByteChannel channel);
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerResult.java
----------------------------------------------------------------------
diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerResult.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerResult.java
index d1e76e4..c3206d6 100644
--- a/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerResult.java
+++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerResult.java
@@ -18,6 +18,8 @@
*/
package org.apache.olingo.server.api.serializer;
+import org.apache.olingo.server.api.ODataContent;
+
import java.io.InputStream;
import java.nio.channels.ReadableByteChannel;
import java.nio.channels.WritableByteChannel;
@@ -32,9 +34,5 @@ public interface SerializerResult {
*/
InputStream getContent();
- ReadableByteChannel getChannel();
-
- void writeContent(WritableByteChannel channel);
-
- boolean isWriteSupported();
+ ODataContent getODataContent();
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHttpHandlerImpl.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHttpHandlerImpl.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHttpHandlerImpl.java
index 418234f..dfd4a75 100644
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHttpHandlerImpl.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHttpHandlerImpl.java
@@ -20,7 +20,6 @@ package org.apache.olingo.server.core;
import java.io.IOException;
import java.io.InputStream;
-import java.io.OutputStream;
import java.nio.ByteBuffer;
import java.nio.channels.Channel;
import java.nio.channels.Channels;
@@ -40,6 +39,7 @@ import org.apache.olingo.commons.api.ex.ODataRuntimeException;
import org.apache.olingo.commons.api.http.HttpHeader;
import org.apache.olingo.commons.api.http.HttpMethod;
import org.apache.olingo.server.api.OData;
+import org.apache.olingo.server.api.ODataContent;
import org.apache.olingo.server.api.ODataHttpHandler;
import org.apache.olingo.server.api.ODataLibraryException;
import org.apache.olingo.server.api.ODataRequest;
@@ -51,7 +51,6 @@ import org.apache.olingo.server.api.deserializer.DeserializerException;
import org.apache.olingo.server.api.etag.CustomETagSupport;
import org.apache.olingo.server.api.processor.Processor;
import org.apache.olingo.server.api.serializer.CustomContentTypeSupport;
-import org.apache.olingo.server.api.serializer.SerializerResult;
import org.apache.olingo.server.core.debug.ServerCoreDebugger;
public class ODataHttpHandlerImpl implements ODataHttpHandler {
@@ -154,18 +153,18 @@ public class ODataHttpHandlerImpl implements ODataHttpHandler {
if (odResponse.getContent() != null ) {
copyContent(odResponse.getContent(), response);
- } else if(odResponse.getSerializerResult() != null) {
+ } else if(odResponse.getODataContent() != null) {
writeContent(odResponse, response);
}
}
static void writeContent(final ODataResponse odataResponse, final HttpServletResponse servletResponse) {
try {
- SerializerResult res = odataResponse.getSerializerResult();
+ ODataContent res = odataResponse.getODataContent();
if(res.isWriteSupported()) {
- res.writeContent(Channels.newChannel(servletResponse.getOutputStream()));
+ res.write(Channels.newChannel(servletResponse.getOutputStream()));
} else {
- copyContent(res.getContent(), servletResponse);
+ copyContent(res.getChannel(), servletResponse);
}
} catch (IOException e) {
throw new ODataRuntimeException("Error on reading request content", e);
@@ -173,12 +172,14 @@ public class ODataHttpHandlerImpl implements ODataHttpHandler {
}
static void copyContent(final InputStream inputStream, final HttpServletResponse servletResponse) {
- ReadableByteChannel input = null;
+ copyContent(Channels.newChannel(inputStream), servletResponse);
+ }
+
+ static void copyContent(final ReadableByteChannel input, final HttpServletResponse servletResponse) {
WritableByteChannel output = null;
try {
ByteBuffer inBuffer = ByteBuffer.allocate(COPY_BUFFER_SIZE);
output = Channels.newChannel(servletResponse.getOutputStream());
- input = Channels.newChannel(inputStream);
while (input.read(inBuffer) > 0) {
inBuffer.flip();
output.write(inBuffer);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/ChannelSerializerResult.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/ChannelSerializerResult.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/ChannelSerializerResult.java
index 1b48814..1e97731 100644
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/ChannelSerializerResult.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/ChannelSerializerResult.java
@@ -24,7 +24,9 @@ import org.apache.olingo.commons.api.data.Entity;
import org.apache.olingo.commons.api.data.EntityIterator;
import org.apache.olingo.commons.api.edm.EdmEntityType;
import org.apache.olingo.commons.api.ex.ODataRuntimeException;
+import org.apache.olingo.server.api.ODataContent;
import org.apache.olingo.server.api.ServiceMetadata;
+import org.apache.olingo.server.api.WriteContentErrorCallback;
import org.apache.olingo.server.api.serializer.EntitySerializerOptions;
import org.apache.olingo.server.api.serializer.SerializerException;
import org.apache.olingo.server.api.serializer.SerializerResult;
@@ -40,7 +42,7 @@ import java.nio.channels.ReadableByteChannel;
import java.nio.channels.WritableByteChannel;
import java.nio.charset.Charset;
-public class ChannelSerializerResult implements SerializerResult {
+public class ChannelSerializerResult implements ODataContent {
private StreamChannel channel;
private static class StreamChannel implements ReadableByteChannel {
@@ -182,10 +184,10 @@ public class ChannelSerializerResult implements SerializerResult {
}
}
- @Override
- public InputStream getContent() {
- return Channels.newInputStream(this.channel);
- }
+// @Override
+// public InputStream getContent() {
+// return Channels.newInputStream(this.channel);
+// }
@Override
public ReadableByteChannel getChannel() {
@@ -198,7 +200,7 @@ public class ChannelSerializerResult implements SerializerResult {
}
@Override
- public void writeContent(WritableByteChannel writeChannel) {
+ public void write(WritableByteChannel writeChannel) {
try {
boolean contentAvailable = true;
while(contentAvailable) {
@@ -209,6 +211,12 @@ public class ChannelSerializerResult implements SerializerResult {
}
}
+ @Override
+ public void write(WritableByteChannel channel, WriteContentErrorCallback callback) {
+ // TODO: implement error handling
+ throw new ODataRuntimeException("error handling not yet supported");
+ }
+
private ChannelSerializerResult(StreamChannel channel) {
this.channel = channel;
}
@@ -248,9 +256,13 @@ public class ChannelSerializerResult implements SerializerResult {
return this;
}
- public SerializerResult build() {
+ public ODataContent buildContent() {
StreamChannel input = new StreamChannel(coll, entityType, head, jsonSerializer, metadata, options, tail);
return new ChannelSerializerResult(input);
}
+ public SerializerResult build() {
+ StreamChannel input = new StreamChannel(coll, entityType, head, jsonSerializer, metadata, options, tail);
+ return SerializerResultImpl.with().content(new ChannelSerializerResult(input)).build();
+ }
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/SerializerResultImpl.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/SerializerResultImpl.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/SerializerResultImpl.java
index 4adc142..310cc5d 100644
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/SerializerResultImpl.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/SerializerResultImpl.java
@@ -18,6 +18,7 @@
*/
package org.apache.olingo.server.core.serializer;
+import org.apache.olingo.server.api.ODataContent;
import org.apache.olingo.server.api.serializer.SerializerResult;
import org.apache.olingo.server.core.serializer.utils.ResultHelper;
@@ -28,6 +29,7 @@ import java.nio.channels.WritableByteChannel;
public class SerializerResultImpl implements SerializerResult {
private InputStream content;
+ private ODataContent oDataContent;
@Override
public InputStream getContent() {
@@ -35,37 +37,43 @@ public class SerializerResultImpl implements SerializerResult {
}
@Override
- public ReadableByteChannel getChannel() {
- return Channels.newChannel(getContent());
+ public ODataContent getODataContent() {
+ return oDataContent;
}
- @Override
- public void writeContent(WritableByteChannel channel) {
- ResultHelper.copy(Channels.newChannel(content), channel);
- }
-
- @Override
- public boolean isWriteSupported() {
- return false;
- }
+ // @Override
+// public ReadableByteChannel getChannel() {
+// return Channels.newChannel(getContent());
+// }
+//
+// @Override
+// public void write(WritableByteChannel channel) {
+// ResultHelper.copy(Channels.newChannel(content), channel);
+// }
+//
+// @Override
+// public boolean isWriteSupported() {
+// return false;
+// }
public static SerializerResultBuilder with() {
return new SerializerResultBuilder();
}
public static class SerializerResultBuilder {
- private InputStream content;
+ private SerializerResultImpl result = new SerializerResultImpl();
public SerializerResultBuilder content(final InputStream input) {
- content = input;
+ result.content = input;
+ return this;
+ }
+ public SerializerResultBuilder content(final ODataContent input) {
+ result.oDataContent = input;
return this;
}
public SerializerResult build() {
- SerializerResultImpl result = new SerializerResultImpl();
- result.content = content;
-
return result;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/StreamSerializerResult.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/StreamSerializerResult.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/StreamSerializerResult.java
deleted file mode 100644
index 9a9283f..0000000
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/StreamSerializerResult.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.server.core.serializer;
-
-import com.fasterxml.jackson.core.JsonFactory;
-import com.fasterxml.jackson.core.JsonGenerator;
-import org.apache.olingo.commons.api.data.Entity;
-import org.apache.olingo.commons.api.data.EntityIterator;
-import org.apache.olingo.commons.api.edm.EdmEntityType;
-import org.apache.olingo.server.api.ServiceMetadata;
-import org.apache.olingo.server.api.serializer.EntitySerializerOptions;
-import org.apache.olingo.server.api.serializer.SerializerException;
-import org.apache.olingo.server.api.serializer.SerializerResult;
-import org.apache.olingo.server.core.serializer.json.ODataJsonStreamSerializer;
-import org.apache.olingo.server.core.serializer.utils.CircleStreamBuffer;
-import org.apache.olingo.server.core.serializer.utils.ResultHelper;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.nio.channels.Channels;
-import java.nio.channels.ReadableByteChannel;
-import java.nio.channels.WritableByteChannel;
-
-public class StreamSerializerResult implements SerializerResult {
- private InputStream content;
-
- private static class StreamInputStream extends InputStream {
- private String head;
- private String tail;
- private int tailCount = 0;
- private int headCount = 0;
- private int entityCount = 0;
- private InputStream inputStream = null;
- private ODataJsonStreamSerializer jsonSerializer;
- private EntityIterator coll;
- private ServiceMetadata metadata;
- private EdmEntityType entityType;
- private EntitySerializerOptions options;
-
- public StreamInputStream(EntityIterator coll, EdmEntityType entityType, String head,
- ODataJsonStreamSerializer jsonSerializer, ServiceMetadata metadata,
- EntitySerializerOptions options, String tail) {
- this.coll = coll;
- this.entityType = entityType;
- this.head = head;
- this.jsonSerializer = jsonSerializer;
- this.metadata = metadata;
- this.options = options;
- this.tail = tail;
- }
-
- @Override
- public int read() throws IOException {
- if (headCount < head.length()) {
- return head.charAt(headCount++);
- }
- if (inputStream == null && coll.hasNext()) {
- try {
- inputStream = serEntity(coll.next());
- entityCount++;
- if (entityCount > 1) {
- return (int) ',';
- }
- } catch (SerializerException e) {
- inputStream = null;
- return read();
- }
- }
- if (inputStream != null) {
- int read = inputStream.read();
- if (read == -1) {
- inputStream = null;
- return read();
- }
- return read;
- }
- if (tailCount < tail.length()) {
- return tail.charAt(tailCount++);
- }
- return -1;
- }
-
- private InputStream serEntity(Entity entity) throws SerializerException {
- try {
- CircleStreamBuffer buffer = new CircleStreamBuffer();
- OutputStream outputStream = buffer.getOutputStream();
- JsonGenerator json = new JsonFactory().createGenerator(outputStream);
- jsonSerializer.writeEntity(metadata, entityType, entity, null,
- options == null ? null : options.getExpand(),
- options == null ? null : options.getSelect(),
- options != null && options.getWriteOnlyReferences(),
- json);
-
- json.close();
- outputStream.close();
- return buffer.getInputStream();
- } catch (final IOException e) {
- return new ByteArrayInputStream(("ERROR" + e.getMessage()).getBytes());
-// } catch (SerializerException e) {
-// return new ByteArrayInputStream(("ERROR" + e.getMessage()).getBytes());
- }
- }
- }
-
- @Override
- public InputStream getContent() {
- return content;
- }
-
- @Override
- public ReadableByteChannel getChannel() {
- return Channels.newChannel(getContent());
- }
-
- @Override
- public void writeContent(WritableByteChannel channel) {
- ResultHelper.copy(getChannel(), channel);
- }
-
- @Override
- public boolean isWriteSupported() {
- return true;
- }
-
- private StreamSerializerResult(InputStream content) {
- this.content = content;
- }
-
- public static SerializerResultBuilder with(EntityIterator coll, EdmEntityType entityType,
- ODataJsonStreamSerializer jsonSerializer,
- ServiceMetadata metadata, EntitySerializerOptions options) {
- return new SerializerResultBuilder(coll, entityType, jsonSerializer, metadata, options);
- }
-
- public static class SerializerResultBuilder {
- private ODataJsonStreamSerializer jsonSerializer;
- private EntityIterator coll;
- private ServiceMetadata metadata;
- private EdmEntityType entityType;
- private EntitySerializerOptions options;
- private String head;
- private String tail;
-
- public SerializerResultBuilder(EntityIterator coll, EdmEntityType entityType,
- ODataJsonStreamSerializer jsonSerializer, ServiceMetadata metadata,
- EntitySerializerOptions options) {
- this.coll = coll;
- this.entityType = entityType;
- this.jsonSerializer = jsonSerializer;
- this.metadata = metadata;
- this.options = options;
- }
-
- public SerializerResultBuilder addHead(String head) {
- this.head = head;
- return this;
- }
-
- public SerializerResultBuilder addTail(String tail) {
- this.tail = tail;
- return this;
- }
-
- public SerializerResult build() {
- InputStream input = new StreamInputStream(coll, entityType, head, jsonSerializer, metadata, options, tail);
- return new StreamSerializerResult(input);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/31dea712/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 4987ba3..2c3c766 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
@@ -541,7 +541,7 @@ public class TechnicalEntityProcessor extends TechnicalProcessor
// } else {
// response.setContent(serializerResult.getContent());
// }
- response.setSerializerResult(serializerResult);
+ response.setODataContent(serializerResult.getODataContent());
//
response.setStatusCode(HttpStatusCode.OK.getStatusCode());
response.setHeader(HttpHeader.CONTENT_TYPE, requestedContentType.toContentTypeString());