[OLINGO-337] javadoc
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/1a1c0614 Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/1a1c0614 Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/1a1c0614 Branch: refs/heads/olingo337 Commit: 1a1c0614636a8a49ef12f3e151e49baeea0318ec Parents: d784a04 Author: Stephan Klevenz <[email protected]> Authored: Thu Jul 3 10:45:37 2014 +0200 Committer: Stephan Klevenz <[email protected]> Committed: Thu Jul 3 10:45:37 2014 +0200 ---------------------------------------------------------------------- .../org/apache/olingo/server/api/OData.java | 18 +++++++++ .../olingo/server/api/ODataHttpHandler.java | 13 +++++++ .../apache/olingo/server/api/ODataRequest.java | 24 ++++++++++++ .../apache/olingo/server/api/ODataResponse.java | 3 ++ .../api/processor/CollectionProcessor.java | 10 +++++ .../api/processor/CustomContentTypeSupport.java | 28 ------------- .../CustomContentTypeSupportProcessor.java | 41 ++++++++++++++++++++ .../server/api/processor/DefaultProcessor.java | 8 +++- .../server/api/processor/EntityProcessor.java | 10 +++++ .../api/processor/FormatContentTypeMapping.java | 28 +++++++------ .../server/api/processor/MetadataProcessor.java | 10 +++++ .../olingo/server/api/processor/Processor.java | 9 +++++ .../api/processor/ServiceDocumentProcessor.java | 10 +++++ .../olingo/server/core/ContentNegotiator.java | 7 ++-- .../server/core/ContentNegotiatorTest.java | 4 +- 15 files changed, 176 insertions(+), 47 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/OData.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/OData.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/OData.java index 2fae3ac..85a6772 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/OData.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/OData.java @@ -24,6 +24,11 @@ import org.apache.olingo.commons.api.format.ODataFormat; import org.apache.olingo.server.api.edm.provider.EdmProvider; import org.apache.olingo.server.api.serializer.ODataSerializer; +/** + * Root object for serving factory tasks and support loosely coupling of implementation (core) from the api. This is not + * a singleton (static variables) to avoid issues with synchronization, OSGi, hot deployment and so on. Each thread + * (request) should keep its own instance. + */ public abstract class OData { private static final String IMPLEMENTATION = "org.apache.olingo.server.core.ODataImpl"; @@ -46,10 +51,23 @@ public abstract class OData { } } + /** + * Create a new serializer object for rendering content in the specified format. Serializers are used in Processor + * implementations. + * @param format - Any format supported by Olingo (XML, JSON ...) + */ public abstract ODataSerializer createSerializer(ODataFormat format); + /** + * Create a new ODataHttpHandler for handling OData requests in a http context. + * @param edm - metadata object required to handle an OData request + */ public abstract ODataHttpHandler createHandler(Edm edm); + /** + * Create an metadata object. + * @param edmProvider - A custom or default implementation for creating metadata + */ public abstract Edm createEdm(EdmProvider edmProvider); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataHttpHandler.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataHttpHandler.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataHttpHandler.java index 8372f80..1765d33 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataHttpHandler.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataHttpHandler.java @@ -23,10 +23,23 @@ import javax.servlet.http.HttpServletResponse; import org.apache.olingo.server.api.processor.Processor; +/** + * Handels http requests as OData requests. + */ public interface ODataHttpHandler { + /** + * Process an OData request. This includes uri parsing, content negotiation, dispatching the request to a specific + * custom processor implementation for handling data and creating the serialized content for the response object. + * @param request - must be a http OData request + * @param response - http OData response + */ void process(HttpServletRequest request, HttpServletResponse response); + /** + * Register additional custom processor implementations for handling OData requests. If a request processing requires + * a processor which is not registered then an not implemented exception will happen. + */ void register(Processor processor); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataRequest.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataRequest.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataRequest.java index 120b950..e91c657 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataRequest.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataRequest.java @@ -26,6 +26,9 @@ import java.util.Map; import org.apache.olingo.commons.api.http.HttpMethod; +/** + * Request object carry http information optimized and required to handle OData requests only. + */ public class ODataRequest { private HttpMethod method; private Map<String, List<String>> headers = new HashMap<String, List<String>>(); @@ -36,6 +39,9 @@ public class ODataRequest { private String rawBaseUri; private String rawServiceResolutionUri; + /** + * @return the http method (GET, PUT, POST ...) + */ public HttpMethod getMethod() { return method; } @@ -73,6 +79,9 @@ public class ODataRequest { return headers.get(name.toUpperCase()); } + /** + * @return the request payload or null + */ public InputStream getBody() { return body; } @@ -81,6 +90,9 @@ public class ODataRequest { this.body = body; } + /** + * @return decoded query options e.g. "$format=json" + */ public String getRawQueryPath() { return rawQueryPath; } @@ -89,14 +101,23 @@ public class ODataRequest { this.rawQueryPath = rawQueryPath; } + /** + * @return encoded base uri e.g. "http://localhost/my%20service" + */ public String getRawBaseUri() { return rawBaseUri; } + /** + * @return encoded request uri e.g. "http://localhost/my%20service/sys1/Employees?$format=json" + */ public String getRawRequestUri() { return rawRequestUri; } + /** + * @return encoded OData path segments e.g. "/Employees" + */ public String getRawODataPath() { return rawODataPath; } @@ -114,6 +135,9 @@ public class ODataRequest { this.rawBaseUri = rawBaseUri; } + /** + * @return a decoded path segment that does not belong to the OData url schema or null e.g. "sys1" + */ public String getRawServiceResolutionUri() { return rawServiceResolutionUri; } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/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 4de7aaa..c1a16c0 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 @@ -23,6 +23,9 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +/** + * Response object to carry OData relevant http information (statusCode, content & response headers) + */ public class ODataResponse { private int statusCode; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CollectionProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CollectionProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CollectionProcessor.java index 2d6f1f5..d61734c 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CollectionProcessor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CollectionProcessor.java @@ -23,8 +23,18 @@ import org.apache.olingo.server.api.ODataRequest; import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.uri.UriInfo; +/** + * Processor interface for handling collections of entities (collections, EntitySets or feeds). + */ public interface CollectionProcessor extends Processor { + /** + * Read entities data from persistency and puts serialized content and status into the response. + * @param request - OData request object containing raw http information. + * @param response - OData response object for collecting response data + * @param uriInfo - information of a parsed OData uri + * @param requestedContentType - requested content type after content negotiation + */ void readCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType requestedContentType); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupport.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupport.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupport.java deleted file mode 100644 index 75a57b1..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupport.java +++ /dev/null @@ -1,28 +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.api.processor; - -import java.util.List; - -public interface CustomContentTypeSupport { - - public List<FormatContentTypeMapping> modifySupportedContentTypes( - List<FormatContentTypeMapping> supportedContentTypes, Class<? extends Processor> processorClass); - -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupportProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupportProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupportProcessor.java new file mode 100644 index 0000000..edcad72 --- /dev/null +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CustomContentTypeSupportProcessor.java @@ -0,0 +1,41 @@ +/* + * 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.processor; + +import java.util.List; + +/** + * A processor which supports custom content types can implement this interface. The processor can also remove default + * content types if the default serializer of Olingo are not used. By default this interface is not implemented and + * a processor supports content types implemented by Olingos default serializer (e.g. application/xml for metadata and + * application/json for service document). + * Requesting a content type which is not supported results in a http error 406 (Not Acceptable). + */ +public interface CustomContentTypeSupportProcessor { + + /** + * Returns a list of supported content types. + * @param defaultContentTypes content types supported by Olingos serializer + * @return modified list of supported content types + * + */ + public List<FormatContentTypeMapping> modifySupportedContentTypes( + List<FormatContentTypeMapping> defaultContentTypes, Class<? extends Processor> processorClass); + +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java index 97821f1..49bdae0 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java @@ -30,6 +30,10 @@ import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.serializer.ODataSerializer; import org.apache.olingo.server.api.uri.UriInfo; +/** + * Processor implementation for handling of metadata and service document. This implementation is registerd in the + * ODataHandler by default. The default can be replaced by re-registering an custom implementation. + */ public class DefaultProcessor implements MetadataProcessor, ServiceDocumentProcessor { private OData odata; @@ -47,7 +51,7 @@ public class DefaultProcessor implements MetadataProcessor, ServiceDocumentProce ODataSerializer serializer; InputStream responseEntity; - serializer = odata.createSerializer(ODataFormat.JSON); + serializer = odata.createSerializer(ODataFormat.fromContentType(requestedContentType)); responseEntity = serializer.serviceDocument(edm, request.getRawBaseUri()); response.setStatusCode(200); @@ -62,7 +66,7 @@ public class DefaultProcessor implements MetadataProcessor, ServiceDocumentProce ODataSerializer serializer; InputStream responseEntity; - serializer = odata.createSerializer(ODataFormat.XML); + serializer = odata.createSerializer(ODataFormat.fromContentType(requestedContentType)); responseEntity = serializer.metadataDocument(edm); response.setStatusCode(200); response.setContent(responseEntity); http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java index a6ec6c2..7e00f22 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java @@ -23,8 +23,18 @@ import org.apache.olingo.server.api.ODataRequest; import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.uri.UriInfo; +/** + * Processor interface for handling a single entry (e.g. atom entry). + */ public interface EntityProcessor extends Processor { + /** + * Read entity data from persistency and puts serialized content and status into the response. + * @param request - OData request object containing raw http information. + * @param response - OData response object for collecting response data + * @param uriInfo - information of a parsed OData uri + * @param requestedContentType - requested content type after content negotiation + */ void readEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType format); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/FormatContentTypeMapping.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/FormatContentTypeMapping.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/FormatContentTypeMapping.java index e12c127..38ce7d6 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/FormatContentTypeMapping.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/FormatContentTypeMapping.java @@ -18,36 +18,40 @@ */ package org.apache.olingo.server.api.processor; +/** + * Mapping between an uri $format option value and a content types. For instance the $format option "xml" maps to + * content type "application/xml". + */ public class FormatContentTypeMapping { - private String formatAlias; - private String contentType; + private String formatOptionValue; + private String contentTypeValue; - public FormatContentTypeMapping(final String formatAlias, final String contentType) { + public FormatContentTypeMapping(final String formatOptionValue, final String contentTypeValue) { super(); - this.formatAlias = formatAlias; - this.contentType = contentType; + this.formatOptionValue = formatOptionValue; + this.contentTypeValue = contentTypeValue; } public String getFormatAlias() { - return formatAlias; + return formatOptionValue; } public String getContentType() { - return contentType; + return contentTypeValue; } - public void setFormatAlias(final String formatAlias) { - this.formatAlias = formatAlias; + public void setFormatAlias(final String formatOptionValue) { + this.formatOptionValue = formatOptionValue; } - public void setContentType(final String contentType) { - this.contentType = contentType; + public void setContentType(final String contentTypeValue) { + this.contentTypeValue = contentTypeValue; } @Override public String toString() { - return "('" + formatAlias + "', '" + contentType + "')"; + return "('" + formatOptionValue + "', '" + contentTypeValue + "')"; } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java index ed187ea..b1caebd 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java @@ -23,7 +23,17 @@ import org.apache.olingo.server.api.ODataRequest; import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.uri.UriInfo; +/** + * Processor interface for handling the metadata document. + */ public interface MetadataProcessor extends Processor { + /** + * Read data from persistency and puts serialized content and status into the response. + * @param request - OData request object containing raw http information. + * @param response - OData response object for collecting response data + * @param uriInfo - information of a parsed OData uri + * @param requestedContentType - requested content type after content negotiation + */ void readMetadata(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType requestedContentType); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java index 014fba7..5d27ec8 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java @@ -21,8 +21,17 @@ package org.apache.olingo.server.api.processor; import org.apache.olingo.commons.api.edm.Edm; import org.apache.olingo.server.api.OData; +/** + * Base interface for all processor types. Processors are responsible to read and write data and marshaling content + * within a request - response cycle. + */ public interface Processor { + /** + * Initialize processor for each http request - response cycle. + * @param odata - Olingos root object which acts as a factory for various object types + * @param edm - the edm which needs to be created before the OData request handling takes place + */ void init(OData odata, Edm edm); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java index dd90b38..4deba80 100644 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java +++ b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java @@ -23,8 +23,18 @@ import org.apache.olingo.server.api.ODataRequest; import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.uri.UriInfo; +/** + * Processor interface for handling the service document. + */ public interface ServiceDocumentProcessor extends Processor { + /** + * Read service document information from persistency and puts serialized content and status into the response. + * @param request - OData request object containing raw http information. + * @param response - OData response object for collecting response data + * @param uriInfo - information of a parsed OData uri + * @param requestedContentType - requested content type after content negotiation + */ void readServiceDocument(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType requestedContentType); http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-core/src/main/java/org/apache/olingo/server/core/ContentNegotiator.java ---------------------------------------------------------------------- diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/ContentNegotiator.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/ContentNegotiator.java index 9405007..749fd27 100644 --- a/lib/server-core/src/main/java/org/apache/olingo/server/core/ContentNegotiator.java +++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/ContentNegotiator.java @@ -25,7 +25,7 @@ import org.apache.olingo.commons.api.format.AcceptType; import org.apache.olingo.commons.api.format.ContentType; import org.apache.olingo.commons.api.http.HttpHeader; import org.apache.olingo.server.api.ODataRequest; -import org.apache.olingo.server.api.processor.CustomContentTypeSupport; +import org.apache.olingo.server.api.processor.CustomContentTypeSupportProcessor; import org.apache.olingo.server.api.processor.FormatContentTypeMapping; import org.apache.olingo.server.api.processor.MetadataProcessor; import org.apache.olingo.server.api.processor.Processor; @@ -59,9 +59,10 @@ public class ContentNegotiator { List<FormatContentTypeMapping> supportedContentTypes = getDefaultSupportedContentTypes(processorClass); - if (processor instanceof CustomContentTypeSupport) { + if (processor instanceof CustomContentTypeSupportProcessor) { supportedContentTypes = - ((CustomContentTypeSupport) processor).modifySupportedContentTypes(supportedContentTypes, processorClass); + ((CustomContentTypeSupportProcessor) processor).modifySupportedContentTypes(supportedContentTypes, + processorClass); } return supportedContentTypes; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/1a1c0614/lib/server-core/src/test/java/org/apache/olingo/server/core/ContentNegotiatorTest.java ---------------------------------------------------------------------- diff --git a/lib/server-core/src/test/java/org/apache/olingo/server/core/ContentNegotiatorTest.java b/lib/server-core/src/test/java/org/apache/olingo/server/core/ContentNegotiatorTest.java index cc766f4..88896da 100644 --- a/lib/server-core/src/test/java/org/apache/olingo/server/core/ContentNegotiatorTest.java +++ b/lib/server-core/src/test/java/org/apache/olingo/server/core/ContentNegotiatorTest.java @@ -37,7 +37,7 @@ import org.apache.olingo.server.api.OData; import org.apache.olingo.server.api.ODataRequest; import org.apache.olingo.server.api.ODataResponse; import org.apache.olingo.server.api.processor.CollectionProcessor; -import org.apache.olingo.server.api.processor.CustomContentTypeSupport; +import org.apache.olingo.server.api.processor.CustomContentTypeSupportProcessor; import org.apache.olingo.server.api.processor.FormatContentTypeMapping; import org.apache.olingo.server.api.processor.MetadataProcessor; import org.apache.olingo.server.api.processor.Processor; @@ -191,7 +191,7 @@ public class ContentNegotiatorTest { private class ProcessorStub implements ServiceDocumentProcessor, MetadataProcessor, CollectionProcessor, - CustomContentTypeSupport { + CustomContentTypeSupportProcessor { List<FormatContentTypeMapping> customMapping;
