http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/streamed/ODataStreamedEntityRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/streamed/ODataStreamedEntityRequest.java
 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/streamed/ODataStreamedEntityRequest.java
index a34e41c..0221285 100644
--- 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/streamed/ODataStreamedEntityRequest.java
+++ 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/streamed/ODataStreamedEntityRequest.java
@@ -21,7 +21,7 @@ package 
org.apache.olingo.client.api.communication.request.streamed;
 import org.apache.olingo.client.api.communication.request.ODataPayloadManager;
 import org.apache.olingo.client.api.communication.request.ODataStreamedRequest;
 import org.apache.olingo.client.api.communication.response.ODataResponse;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 
 /**
  * Abstract class representing a request concerning a streamed entity.
@@ -38,13 +38,12 @@ public interface ODataStreamedEntityRequest<V extends 
ODataResponse, T extends O
    * @return the configured format (or default if not specified).
    * @see org.apache.olingo.client.api.Configuration#getDefaultPubFormat()
    */
-  ODataFormat getFormat();
+  ContentType getFormat();
 
   /**
    * Override configured request format.
    *
    * @param format request format.
-   * @see ODataFormat
    */
-  void setFormat(final ODataFormat format);
+  void setFormat(final ContentType contentType);
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ClientEntitySetIterator.java
----------------------------------------------------------------------
diff --git 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ClientEntitySetIterator.java
 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ClientEntitySetIterator.java
index accfce6..cbcd7f8 100644
--- 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ClientEntitySetIterator.java
+++ 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ClientEntitySetIterator.java
@@ -33,7 +33,8 @@ import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.commons.api.Constants;
 import org.apache.olingo.commons.api.data.Entity;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -60,7 +61,7 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
 
   private final InputStream stream;
 
-  private final ODataFormat format;
+  private final ContentType contentType;
 
   private ES entitySet;
 
@@ -75,17 +76,17 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
    *
    * @param odataClient client instance getting this request
    * @param stream source stream.
-   * @param format OData format.
+   * @param contentType OData format.
    */
   public ClientEntitySetIterator(final ODataClient odataClient, final 
InputStream stream,
-                                 final ODataFormat format) {
+                                 final ContentType contentType) {
 
     this.odataClient = odataClient;
     this.stream = stream;
-    this.format = format;
+    this.contentType = contentType;
     this.osEntitySet = new ByteArrayOutputStream();
 
-    if (format == ODataFormat.ATOM) {
+    if (contentType.getODataFormat() == Format.ATOM) {
       namespaces = getAllElementAttributes(stream, "feed", osEntitySet);
     } else {
       namespaces = null;
@@ -110,7 +111,7 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
   @SuppressWarnings("unchecked")
   public boolean hasNext() {
     if (available && cached == null) {
-      if (format == ODataFormat.ATOM) {
+      if (contentType.getODataFormat() == Format.ATOM) {
         cached = nextAtomEntityFromEntitySet(stream, osEntitySet, namespaces);
       } else {
         cached = nextJSONEntityFromEntitySet(stream, osEntitySet);
@@ -120,7 +121,7 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
         available = false;
         try {
           entitySet = (ES) odataClient.getReader().
-                  readEntitySet(new 
ByteArrayInputStream(osEntitySet.toByteArray()), format);
+                  readEntitySet(new 
ByteArrayInputStream(osEntitySet.toByteArray()), contentType);
         } catch (final ODataDeserializerException e) {
           available = false;
         }
@@ -211,7 +212,7 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
         }
 
         if (c >= 0) {
-          jsonEntity = odataClient.getDeserializer(ODataFormat.JSON).toEntity(
+          jsonEntity = odataClient.getDeserializer(ContentType.JSON).toEntity(
                   new ByteArrayInputStream(entity.toByteArray()));
         }
       } else {
@@ -240,7 +241,7 @@ public class ClientEntitySetIterator<ES extends 
ClientEntitySet, E extends Clien
         entity.write(">".getBytes(Constants.UTF8));
 
         if (consume(input, "</entry>", entity, true) >= 0) {
-          atomEntity = odataClient.getDeserializer(ODataFormat.ATOM).
+          atomEntity = 
odataClient.getDeserializer(ContentType.APPLICATION_ATOM_XML).
                   toEntity(new ByteArrayInputStream(entity.toByteArray()));
         }
       }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataReader.java
----------------------------------------------------------------------
diff --git 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataReader.java
 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataReader.java
index 7e4aa96..746d697 100644
--- 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataReader.java
+++ 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataReader.java
@@ -21,15 +21,15 @@ package org.apache.olingo.client.api.serialization;
 import java.io.InputStream;
 import java.util.Map;
 
-import org.apache.olingo.commons.api.data.ResWrap;
 import org.apache.olingo.client.api.domain.ClientEntity;
 import org.apache.olingo.client.api.domain.ClientEntitySet;
-import org.apache.olingo.commons.api.ODataError;
 import org.apache.olingo.client.api.domain.ClientProperty;
 import org.apache.olingo.client.api.domain.ClientServiceDocument;
+import org.apache.olingo.commons.api.ODataError;
+import org.apache.olingo.commons.api.data.ResWrap;
 import org.apache.olingo.commons.api.edm.Edm;
 import org.apache.olingo.commons.api.edm.provider.CsdlSchema;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 /**
@@ -61,51 +61,52 @@ public interface ODataReader {
    * Parses an OData service document.
    *
    * @param input stream to de-serialize.
-   * @param format de-serialize as XML or JSON
+   * @param contentType de-serialize as XML or JSON
    * @return List of URIs.
    * @throws ODataDeserializerException
    */
-  ClientServiceDocument readServiceDocument(InputStream input, ODataFormat 
format) throws ODataDeserializerException;
+  ClientServiceDocument readServiceDocument(InputStream input, ContentType 
contentType) 
+      throws ODataDeserializerException;
 
   /**
    * De-Serializes a stream into an OData entity set.
    *
    * @param input stream to de-serialize.
-   * @param format de-serialize format
+   * @param contentType de-serialize format
    * @return de-serialized entity set.
    * @throws ODataDeserializerException
    */
-  ClientEntitySet readEntitySet(InputStream input, ODataFormat format) throws 
ODataDeserializerException;
+  ClientEntitySet readEntitySet(InputStream input, ContentType contentType) 
throws ODataDeserializerException;
 
   /**
    * Parses a stream taking care to de-serializes the first OData entity found.
    *
    * @param input stream to de-serialize.
-   * @param format de-serialize format
+   * @param contentType de-serialize format
    * @return entity de-serialized.
    * @throws ODataDeserializerException
    */
-  ClientEntity readEntity(InputStream input, ODataFormat format) throws 
ODataDeserializerException;
+  ClientEntity readEntity(InputStream input, ContentType contentType) throws 
ODataDeserializerException;
 
   /**
    * Parses a stream taking care to de-serialize the first OData entity 
property found.
    *
    * @param input stream to de-serialize.
-   * @param format de-serialize as XML or JSON
+   * @param contentType de-serialize as XML or JSON
    * @return OData entity property de-serialized.
    * @throws ODataDeserializerException
    */
-  ClientProperty readProperty(InputStream input, ODataFormat format) throws 
ODataDeserializerException;
+  ClientProperty readProperty(InputStream input, ContentType contentType) 
throws ODataDeserializerException;
 
   /**
    * Parses a stream into an OData error.
    *
    * @param inputStream stream to de-serialize.
-   * @param format format
+   * @param contentType format
    * @return OData error.
    * @throws ODataDeserializerException
    */
-  ODataError readError(InputStream inputStream, ODataFormat format) throws 
ODataDeserializerException;
+  ODataError readError(InputStream inputStream, ContentType contentType) 
throws ODataDeserializerException;
 
   /**
    * Parses a stream into the object type specified by the given reference.

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataWriter.java
----------------------------------------------------------------------
diff --git 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataWriter.java
 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataWriter.java
index 5287c94..4515cdf 100644
--- 
a/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataWriter.java
+++ 
b/lib/client-api/src/main/java/org/apache/olingo/client/api/serialization/ODataWriter.java
@@ -22,11 +22,11 @@ import java.io.InputStream;
 import java.net.URI;
 import java.util.Collection;
 
-import org.apache.olingo.commons.api.data.ResWrap;
 import org.apache.olingo.client.api.domain.ClientEntity;
-import org.apache.olingo.client.api.domain.ClientProperty;
 import org.apache.olingo.client.api.domain.ClientLink;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.client.api.domain.ClientProperty;
+import org.apache.olingo.commons.api.data.ResWrap;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
 
 /**
@@ -42,54 +42,54 @@ public interface ODataWriter {
    * Writes a collection of OData entities.
    *
    * @param entities entities to be serialized.
-   * @param format serialization format.
+   * @param contentType serialization format.
    * @return stream of serialized objects.
    * @throws ODataSerializerException
    */
-  InputStream writeEntities(Collection<ClientEntity> entities, ODataFormat 
format)
+  InputStream writeEntities(Collection<ClientEntity> entities, ContentType 
contentType)
       throws ODataSerializerException;
 
   /**
    * Serializes a single OData entity.
    *
    * @param entity entity to be serialized.
-   * @param format serialization format.
+   * @param contentType serialization format.
    * @return stream of serialized object.
    * @throws ODataSerializerException
    */
-  InputStream writeEntity(ClientEntity entity, ODataFormat format)
+  InputStream writeEntity(ClientEntity entity, ContentType format)
       throws ODataSerializerException;
 
   /**
    * Writes a single OData entity property.
    *
    * @param property entity property to be serialized.
-   * @param format serialization format.
+   * @param contentType serialization format.
    * @return stream of serialized object.
    * @throws ODataSerializerException
    */
-  InputStream writeProperty(ClientProperty property, ODataFormat format)
+  InputStream writeProperty(ClientProperty property, ContentType format)
       throws ODataSerializerException;
 
   /**
    * Writes an OData link.
    *
    * @param link link to be serialized.
-   * @param format serialization format.
+   * @param contentType serialization format.
    * @return stream of serialized object.
    * @throws ODataSerializerException
    */
-  InputStream writeLink(ClientLink link, ODataFormat format)
+  InputStream writeLink(ClientLink link, ContentType format)
       throws ODataSerializerException;
   
   /**
    * Writes a entity reference
    * 
    * @param reference reference to be serialized
-   * @param format  serialization format
+   * @param contentType  serialization format
    * @return stream of serialized objects 
    * @throws ODataSerializerException
    */
-  InputStream writeReference(ResWrap<URI> reference, ODataFormat format)
+  InputStream writeReference(ResWrap<URI> reference, ContentType format)
     throws ODataSerializerException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/ConfigurationImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ConfigurationImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ConfigurationImpl.java
index cd17ad0..14c59d6 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ConfigurationImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ConfigurationImpl.java
@@ -29,7 +29,6 @@ import 
org.apache.olingo.client.api.http.HttpUriRequestFactory;
 import org.apache.olingo.client.core.http.DefaultHttpClientFactory;
 import org.apache.olingo.client.core.http.DefaultHttpUriRequestFactory;
 import org.apache.olingo.commons.api.format.ContentType;
-import org.apache.olingo.commons.api.format.ODataFormat;
 
 public class ConfigurationImpl implements Configuration {
 
@@ -96,39 +95,39 @@ public class ConfigurationImpl implements Configuration {
   }
 
   @Override
-  public ODataFormat getDefaultPubFormat() {
-    return (ODataFormat) getProperty(DEFAULT_PUB_FORMAT, 
ODataFormat.JSON_FULL_METADATA);
+  public ContentType getDefaultPubFormat() {
+    return (ContentType) getProperty(DEFAULT_PUB_FORMAT, 
ContentType.JSON_FULL_METADATA);
   }
 
   @Override
-  public void setDefaultPubFormat(final ODataFormat format) {
-    setProperty(DEFAULT_PUB_FORMAT, format);
+  public void setDefaultPubFormat(final ContentType contentType) {
+    setProperty(DEFAULT_PUB_FORMAT, contentType);
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
-    final ODataFormat format = getDefaultPubFormat();
-    return format == ODataFormat.ATOM ? ODataFormat.XML : format;
+  public ContentType getDefaultFormat() {
+    final ContentType contenType = getDefaultPubFormat();
+    return contenType == ContentType.APPLICATION_ATOM_XML ? 
ContentType.APPLICATION_XML : contenType;
   }
 
   @Override
-  public ODataFormat getDefaultValueFormat() {
-    return (ODataFormat) getProperty(DEFAULT_VALUE_FORMAT, 
ODataFormat.TEXT_PLAIN);
+  public ContentType getDefaultValueFormat() {
+    return (ContentType) getProperty(DEFAULT_VALUE_FORMAT, 
ContentType.TEXT_PLAIN);
   }
 
   @Override
-  public void setDefaultValueFormat(final ODataFormat format) {
-    setProperty(DEFAULT_VALUE_FORMAT, format);
+  public void setDefaultValueFormat(final ContentType contentType) {
+    setProperty(DEFAULT_VALUE_FORMAT, contentType);
   }
 
   @Override
-  public ODataFormat getDefaultMediaFormat() {
-    return (ODataFormat) getProperty(DEFAULT_VALUE_FORMAT, 
ODataFormat.APPLICATION_OCTET_STREAM);
+  public ContentType getDefaultMediaFormat() {
+    return (ContentType) getProperty(DEFAULT_VALUE_FORMAT, 
ContentType.APPLICATION_OCTET_STREAM);
   }
 
   @Override
-  public void setDefaultMediaFormat(final ODataFormat format) {
-    setProperty(DEFAULT_MEDIA_FORMAT, format);
+  public void setDefaultMediaFormat(final ContentType contentType) {
+    setProperty(DEFAULT_MEDIA_FORMAT, contentType);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientFactory.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientFactory.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientFactory.java
index b9f18a8..d8b54e9 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientFactory.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientFactory.java
@@ -21,7 +21,7 @@ package org.apache.olingo.client.core;
 import org.apache.olingo.client.api.EdmEnabledODataClient;
 import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 
 public final class ODataClientFactory {
 
@@ -38,7 +38,7 @@ public final class ODataClientFactory {
 
     final EdmEnabledODataClient instance =
             new EdmEnabledODataClientImpl(serviceRoot, edm, metadataETag);
-    instance.getConfiguration().setDefaultPubFormat(ODataFormat.JSON);
+    instance.getConfiguration().setDefaultPubFormat(ContentType.JSON);
     return instance;
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientImpl.java
index a934e3e..6018c87 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/ODataClientImpl.java
@@ -28,6 +28,7 @@ import 
org.apache.olingo.client.api.communication.request.batch.BatchRequestFact
 import 
org.apache.olingo.client.api.communication.request.cud.CUDRequestFactory;
 import 
org.apache.olingo.client.api.communication.request.invoke.InvokeRequestFactory;
 import 
org.apache.olingo.client.api.communication.request.retrieve.RetrieveRequestFactory;
+import org.apache.olingo.client.api.domain.ClientObjectFactory;
 import org.apache.olingo.client.api.serialization.ClientODataDeserializer;
 import org.apache.olingo.client.api.serialization.ODataBinder;
 import org.apache.olingo.client.api.serialization.ODataReader;
@@ -41,17 +42,17 @@ import 
org.apache.olingo.client.core.communication.request.batch.BatchRequestFac
 import 
org.apache.olingo.client.core.communication.request.cud.CUDRequestFactoryImpl;
 import 
org.apache.olingo.client.core.communication.request.invoke.InvokeRequestFactoryImpl;
 import 
org.apache.olingo.client.core.communication.request.retrieve.RetrieveRequestFactoryImpl;
+import org.apache.olingo.client.core.domain.ClientObjectFactoryImpl;
 import org.apache.olingo.client.core.serialization.ClientODataDeserializerImpl;
 import org.apache.olingo.client.core.serialization.ODataBinderImpl;
 import org.apache.olingo.client.core.serialization.ODataReaderImpl;
 import org.apache.olingo.client.core.serialization.ODataWriterImpl;
 import org.apache.olingo.client.core.uri.FilterFactoryImpl;
 import org.apache.olingo.client.core.uri.URIBuilderImpl;
-import org.apache.olingo.client.api.domain.ClientObjectFactory;
 import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 import org.apache.olingo.commons.api.serialization.ODataSerializer;
-import org.apache.olingo.client.core.domain.ClientObjectFactoryImpl;
 import org.apache.olingo.commons.core.serialization.AtomSerializer;
 import org.apache.olingo.commons.core.serialization.JsonSerializer;
 
@@ -125,15 +126,15 @@ public class ODataClientImpl implements ODataClient {
   }
 
   @Override
-  public ClientODataDeserializer getDeserializer(final ODataFormat format) {
-    return new ClientODataDeserializerImpl(false, format);
+  public ClientODataDeserializer getDeserializer(final ContentType 
contentType) {
+    return new ClientODataDeserializerImpl(false, contentType);
   }
 
   @Override
-  public ODataSerializer getSerializer(final ODataFormat format) {
-    return format == ODataFormat.ATOM || format == ODataFormat.XML ?
+  public ODataSerializer getSerializer(final ContentType contentType) {
+    return contentType.getODataFormat() == Format.ATOM || 
contentType.getODataFormat() == Format.XML ?
         new AtomSerializer() :
-        new JsonSerializer(false, format);
+        new JsonSerializer(false, contentType);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataErrorResponseChecker.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataErrorResponseChecker.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataErrorResponseChecker.java
index 2008149..802e67e 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataErrorResponseChecker.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataErrorResponseChecker.java
@@ -24,9 +24,9 @@ import org.apache.http.StatusLine;
 import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.client.api.communication.ODataClientErrorException;
 import org.apache.olingo.client.api.communication.ODataServerErrorException;
-import org.apache.olingo.commons.api.ODataRuntimeException;
 import org.apache.olingo.commons.api.ODataError;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.ODataRuntimeException;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -51,11 +51,11 @@ public final class ODataErrorResponseChecker {
     if (entity == null) {
       result = new ODataClientErrorException(statusLine);
     } else {
-      final ODataFormat format = accept.contains("xml") ? ODataFormat.XML : 
ODataFormat.JSON;
+      final ContentType contentType = accept.contains("xml") ? 
ContentType.APPLICATION_ATOM_XML : ContentType.JSON;
 
       ODataError error;
       try {
-        error = odataClient.getReader().readError(entity, format);
+        error = odataClient.getReader().readError(entity, contentType);
       } catch (final RuntimeException e) {
         LOG.warn("Error deserializing error response", e);
         error = getGenericError(

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataBasicRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataBasicRequest.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataBasicRequest.java
index c5c313c..7a53468 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataBasicRequest.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataBasicRequest.java
@@ -32,7 +32,7 @@ import 
org.apache.olingo.client.api.communication.request.ODataBasicRequest;
 import org.apache.olingo.client.api.communication.request.ODataStreamer;
 import 
org.apache.olingo.client.api.communication.request.batch.ODataBatchRequest;
 import org.apache.olingo.client.api.communication.response.ODataResponse;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -55,9 +55,9 @@ public abstract class AbstractODataBasicRequest<T extends 
ODataResponse>
   }
 
   @Override
-  public void setFormat(final ODataFormat format) {
-    if (format != null) {
-      final String formatString = 
format.getContentType().toContentTypeString();
+  public void setFormat(final ContentType contentType) {
+    if (contentType != null) {
+      final String formatString = contentType.toContentTypeString();
       setAccept(formatString);
       setContentType(formatString);
     }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
index bdfd118..4037a6f 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
@@ -41,7 +41,7 @@ import 
org.apache.olingo.client.api.communication.request.ODataStreamer;
 import org.apache.olingo.client.api.communication.response.ODataResponse;
 import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.commons.api.ODataRuntimeException;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -102,7 +102,7 @@ public abstract class AbstractODataRequest extends 
AbstractRequest implements OD
     this.request = 
odataClient.getConfiguration().getHttpUriRequestFactory().create(this.method, 
uri);
   }
 
-  public abstract ODataFormat getDefaultFormat();
+  public abstract ContentType getDefaultFormat();
 
   @Override
   public URI getURI() {
@@ -178,7 +178,7 @@ public abstract class AbstractODataRequest extends 
AbstractRequest implements OD
   public String getAccept() {
     final String acceptHead = odataHeaders.getHeader(HeaderName.accept);
     return StringUtils.isBlank(acceptHead)
-            ? getDefaultFormat().getContentType().toContentTypeString()
+            ? getDefaultFormat().toContentTypeString()
             : acceptHead;
   }
 
@@ -201,7 +201,7 @@ public abstract class AbstractODataRequest extends 
AbstractRequest implements OD
   public String getContentType() {
     final String contentTypeHead = 
odataHeaders.getHeader(HeaderName.contentType);
     return StringUtils.isBlank(contentTypeHead)
-            ? getDefaultFormat().getContentType().toContentTypeString()
+            ? getDefaultFormat().toContentTypeString()
             : contentTypeHead;
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataDeleteRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataDeleteRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataDeleteRequestImpl.java
index 35f5118..245c9b5 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataDeleteRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataDeleteRequestImpl.java
@@ -28,7 +28,7 @@ import 
org.apache.olingo.client.api.communication.request.cud.ODataDeleteRequest
 import org.apache.olingo.client.api.communication.response.ODataDeleteResponse;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -42,7 +42,7 @@ public class ODataDeleteRequestImpl extends 
AbstractODataBasicRequest<ODataDelet
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityCreateRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityCreateRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityCreateRequestImpl.java
index b2aba3d..2d85032 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityCreateRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityCreateRequestImpl.java
@@ -28,13 +28,13 @@ import org.apache.http.client.methods.HttpPost;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.cud.ODataEntityCreateRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataEntityCreateResponse;
+import org.apache.olingo.client.api.domain.ClientEntity;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.data.Entity;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientEntity;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
@@ -66,14 +66,14 @@ public class ODataEntityCreateRequestImpl<E extends 
ClientEntity>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
   @Override
   protected InputStream getPayload() {
     try {
-      return odataClient.getWriter().writeEntity(entity, 
ODataFormat.fromString(getContentType()));
+      return odataClient.getWriter().writeEntity(entity, 
ContentType.parse(getContentType()));
     } catch (final ODataSerializerException e) {
       throw new IllegalArgumentException(e);
     }
@@ -112,7 +112,7 @@ public class ODataEntityCreateRequestImpl<E extends 
ClientEntity>
     public E getBody() {
       if (resEntity == null) {
         try {
-          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getAccept())).
+          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ContentType.parse(getAccept())).
                   toEntity(getRawResponse());
 
           resEntity = (E) odataClient.getBinder().getODataEntity(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityUpdateRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityUpdateRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityUpdateRequestImpl.java
index 195eaeb..e0b5d2c 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityUpdateRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataEntityUpdateRequestImpl.java
@@ -29,13 +29,13 @@ import 
org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.cud.ODataEntityUpdateRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataEntityUpdateResponse;
+import org.apache.olingo.client.api.domain.ClientEntity;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.data.Entity;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientEntity;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
@@ -70,14 +70,14 @@ public class ODataEntityUpdateRequestImpl<E extends 
ClientEntity>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
   @Override
   protected InputStream getPayload() {
     try {
-      return odataClient.getWriter().writeEntity(changes, 
ODataFormat.fromString(getContentType()));
+      return odataClient.getWriter().writeEntity(changes, 
ContentType.parse(getContentType()));
     } catch (final ODataSerializerException e) {
       throw new IllegalArgumentException(e);
     }
@@ -122,7 +122,7 @@ public class ODataEntityUpdateRequestImpl<E extends 
ClientEntity>
     public E getBody() {
       if (entity == null) {
         try {
-          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getAccept())).
+          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ContentType.parse(getAccept())).
                   toEntity(getRawResponse());
 
           entity = (E) odataClient.getBinder().getODataEntity(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataPropertyUpdateRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataPropertyUpdateRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataPropertyUpdateRequestImpl.java
index a88652f..9166a12 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataPropertyUpdateRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataPropertyUpdateRequestImpl.java
@@ -28,13 +28,13 @@ import 
org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.cud.ODataPropertyUpdateRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataPropertyUpdateResponse;
+import org.apache.olingo.client.api.domain.ClientProperty;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientProperty;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
@@ -67,7 +67,7 @@ public class ODataPropertyUpdateRequestImpl extends 
AbstractODataBasicRequest<OD
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultFormat();
   }
 
@@ -86,7 +86,7 @@ public class ODataPropertyUpdateRequestImpl extends 
AbstractODataBasicRequest<OD
   @Override
   protected InputStream getPayload() {
     try {
-      return odataClient.getWriter().writeProperty(property, 
ODataFormat.fromString(getContentType()));
+      return odataClient.getWriter().writeProperty(property, 
ContentType.parse(getContentType()));
     } catch (final ODataSerializerException e) {
       throw new IllegalArgumentException(e);
     }
@@ -109,7 +109,7 @@ public class ODataPropertyUpdateRequestImpl extends 
AbstractODataBasicRequest<OD
     public ClientProperty getBody() {
       if (resProperty == null) {
         try {
-          final ResWrap<Property> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getAccept())).
+          final ResWrap<Property> resource = 
odataClient.getDeserializer(ContentType.parse(getAccept())).
                   toProperty(getRawResponse());
 
           resProperty = odataClient.getBinder().getODataProperty(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataReferenceAddingRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataReferenceAddingRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataReferenceAddingRequestImpl.java
index 477a91a..592509e 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataReferenceAddingRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataReferenceAddingRequestImpl.java
@@ -33,7 +33,7 @@ import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicReq
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
 
@@ -54,7 +54,7 @@ public class ODataReferenceAddingRequestImpl extends 
AbstractODataBasicRequest<O
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
@@ -68,7 +68,7 @@ public class ODataReferenceAddingRequestImpl extends 
AbstractODataBasicRequest<O
     } else {
       ODataWriter writer = odataClient.getWriter();
       try {
-        return writer.writeReference(reference, 
ODataFormat.fromString(getContentType()));
+        return writer.writeReference(reference, 
ContentType.parse(getContentType()));
       } catch (ODataSerializerException e) {
         LOG.warn("Error serializing reference {}", reference);
         throw new IllegalArgumentException(e);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataValueUpdateRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataValueUpdateRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataValueUpdateRequestImpl.java
index 93f4b59..52e27fa 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataValueUpdateRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/cud/ODataValueUpdateRequestImpl.java
@@ -28,13 +28,14 @@ import 
org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.cud.ODataValueUpdateRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataValueUpdateResponse;
+import org.apache.olingo.client.api.domain.ClientPrimitiveValue;
 import org.apache.olingo.client.api.http.HttpClientException;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.client.core.uri.URIUtils;
-import org.apache.olingo.client.api.domain.ClientPrimitiveValue;
 import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -65,7 +66,7 @@ public class ODataValueUpdateRequestImpl extends 
AbstractODataBasicRequest<OData
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultValueFormat();
   }
 
@@ -105,11 +106,11 @@ public class ODataValueUpdateRequestImpl extends 
AbstractODataBasicRequest<OData
     @Override
     public ClientPrimitiveValue getBody() {
       if (resValue == null) {
-        final ODataFormat format = ODataFormat.fromString(getAccept());
-
+        final ContentType contentType = ContentType.parse(getAccept());
+        
         try {
           resValue = odataClient.getObjectFactory().newPrimitiveValueBuilder().
-                  setType(format == ODataFormat.TEXT_PLAIN
+                  setType(contentType.getODataFormat() == Format.TEXT_PLAIN
                           ? EdmPrimitiveTypeKind.String : 
EdmPrimitiveTypeKind.Stream).
                   setValue(getRawResponse()).
                   build();

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractODataInvokeRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractODataInvokeRequest.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractODataInvokeRequest.java
index 5bd259c..88fd2e2 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractODataInvokeRequest.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractODataInvokeRequest.java
@@ -31,19 +31,20 @@ import org.apache.http.client.methods.HttpPost;
 import org.apache.http.client.methods.HttpRequestBase;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.ODataBatchableRequest;
-import 
org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
 import 
org.apache.olingo.client.api.communication.request.invoke.ClientNoContent;
+import 
org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
 import org.apache.olingo.client.api.communication.response.ODataInvokeResponse;
-import org.apache.olingo.client.api.http.HttpClientException;
-import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
-import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
-import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.client.api.domain.ClientEntity;
 import org.apache.olingo.client.api.domain.ClientEntitySet;
 import org.apache.olingo.client.api.domain.ClientInvokeResult;
 import org.apache.olingo.client.api.domain.ClientProperty;
 import org.apache.olingo.client.api.domain.ClientValue;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.client.api.http.HttpClientException;
+import 
org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
+import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
+import org.apache.olingo.client.core.uri.URIUtils;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
@@ -91,23 +92,23 @@ public abstract class AbstractODataInvokeRequest<T extends 
ClientInvokeResult>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
-  private String getActualFormat(final ODataFormat format) {
-    return ((ClientProperty.class.isAssignableFrom(reference) && format == 
ODataFormat.ATOM)
-        ? ODataFormat.XML : format).getContentType().toContentTypeString();
+  private String getActualFormat(final ContentType contentType) {
+    return ((ClientProperty.class.isAssignableFrom(reference) && 
contentType.getODataFormat() == Format.ATOM)
+        ? ContentType.APPLICATION_XML : contentType).toContentTypeString();
   }
 
   @Override
-  public void setFormat(final ODataFormat format) {
-    final String _format = getActualFormat(format);
-    setAccept(_format);
-    setContentType(_format);
+  public void setFormat(final ContentType contentType) {
+    final String _contentType = getActualFormat(contentType);
+    setAccept(_contentType);
+    setContentType(_contentType);
   }
 
-  protected abstract ODataFormat getPOSTParameterFormat();
+  protected abstract ContentType getPOSTParameterFormat();
 
   @Override
   protected InputStream getPayload() {
@@ -197,13 +198,13 @@ public abstract class AbstractODataInvokeRequest<T 
extends ClientInvokeResult>
             final InputStream responseStream = this.payload == null ? 
res.getEntity().getContent() : this.payload;
             if (ClientEntitySet.class.isAssignableFrom(reference)) {
               invokeResult = 
reference.cast(odataClient.getReader().readEntitySet(responseStream,
-                  ODataFormat.fromString(getContentType())));
+                  ContentType.parse(getContentType())));
             } else if (ClientEntity.class.isAssignableFrom(reference)) {
               invokeResult = 
reference.cast(odataClient.getReader().readEntity(responseStream,
-                  ODataFormat.fromString(getContentType())));
+                  ContentType.parse(getContentType())));
             } else if (ClientProperty.class.isAssignableFrom(reference)) {
               invokeResult = 
reference.cast(odataClient.getReader().readProperty(responseStream,
-                  ODataFormat.fromString(getContentType())));
+                  ContentType.parse(getContentType())));
             }
           }
         } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/ODataInvokeRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/ODataInvokeRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/ODataInvokeRequestImpl.java
index 5e8736e..6d6cc01 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/ODataInvokeRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/ODataInvokeRequestImpl.java
@@ -22,12 +22,12 @@ import java.net.URI;
 
 import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.client.api.domain.ClientInvokeResult;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 public class ODataInvokeRequestImpl<T extends ClientInvokeResult> extends 
AbstractODataInvokeRequest<T> {
 
-  private ODataFormat format;
+  private ContentType contentType;
 
   public ODataInvokeRequestImpl(final ODataClient odataClient, final Class<T> 
reference,
           final HttpMethod method, final URI uri) {
@@ -36,13 +36,13 @@ public class ODataInvokeRequestImpl<T extends 
ClientInvokeResult> extends Abstra
   }
 
   @Override
-  public void setFormat(final ODataFormat format) {
-    super.setFormat(format);
-    this.format = format;
+  public void setFormat(final ContentType contentType) {
+    super.setFormat(contentType);
+    this.contentType = contentType;
   }
 
   @Override
-  protected ODataFormat getPOSTParameterFormat() {
-    return format == null ? getDefaultFormat() : format;
+  protected ContentType getPOSTParameterFormat() {
+    return contentType == null ? getDefaultFormat() : contentType;
   }
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractMetadataRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractMetadataRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractMetadataRequestImpl.java
index 3cdd349..201a662 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractMetadataRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractMetadataRequestImpl.java
@@ -23,7 +23,6 @@ import java.net.URI;
 import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.client.api.communication.request.ODataRequest;
 import org.apache.olingo.commons.api.format.ContentType;
-import org.apache.olingo.commons.api.format.ODataFormat;
 
 public abstract class AbstractMetadataRequestImpl<V> extends 
AbstractODataRetrieveRequest<V> {
 
@@ -34,8 +33,8 @@ public abstract class AbstractMetadataRequestImpl<V> extends 
AbstractODataRetrie
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
-    return ODataFormat.XML;
+  public ContentType getDefaultFormat() {
+    return ContentType.APPLICATION_XML;
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataDeltaRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataDeltaRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataDeltaRequestImpl.java
index 601e4ba..1680940 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataDeltaRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataDeltaRequestImpl.java
@@ -26,11 +26,11 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataDeltaRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
+import org.apache.olingo.client.api.domain.ClientDelta;
 import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.commons.api.data.Delta;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientDelta;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 public class ODataDeltaRequestImpl extends 
AbstractODataRetrieveRequest<ClientDelta>
@@ -41,7 +41,7 @@ public class ODataDeltaRequestImpl extends 
AbstractODataRetrieveRequest<ClientDe
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
@@ -65,7 +65,7 @@ public class ODataDeltaRequestImpl extends 
AbstractODataRetrieveRequest<ClientDe
     public ClientDelta getBody() {
       if (delta == null) {
         try {
-          final ResWrap<Delta> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getContentType())).
+          final ResWrap<Delta> resource = 
odataClient.getDeserializer(ContentType.parse(getContentType())).
               toDelta(res.getEntity().getContent());
 
           delta = odataClient.getBinder().getODataDelta(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntityRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntityRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntityRequestImpl.java
index 57acf2a..7e35189 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntityRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntityRequestImpl.java
@@ -25,10 +25,10 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataEntityRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
+import org.apache.olingo.client.api.domain.ClientEntity;
 import org.apache.olingo.commons.api.data.Entity;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientEntity;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 /**
@@ -48,7 +48,7 @@ public class ODataEntityRequestImpl<E extends ClientEntity>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
@@ -75,7 +75,7 @@ public class ODataEntityRequestImpl<E extends ClientEntity>
     public E getBody() {
       if (entity == null) {
         try {
-          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getContentType())).
+          final ResWrap<Entity> resource = 
odataClient.getDeserializer(ContentType.parse(getContentType())).
                   toEntity(getRawResponse());
 
           entity = (E) odataClient.getBinder().getODataEntity(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
index dcb31e9..db390a0 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
@@ -25,10 +25,10 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
-import org.apache.olingo.client.api.domain.ClientEntitySetIterator;
 import org.apache.olingo.client.api.domain.ClientEntity;
 import org.apache.olingo.client.api.domain.ClientEntitySet;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.client.api.domain.ClientEntitySetIterator;
+import org.apache.olingo.commons.api.format.ContentType;
 
 /**
  * This class implements an OData EntitySet query request.
@@ -50,7 +50,7 @@ public class ODataEntitySetIteratorRequestImpl<ES extends 
ClientEntitySet, E ext
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
@@ -75,7 +75,7 @@ public class ODataEntitySetIteratorRequestImpl<ES extends 
ClientEntitySet, E ext
     public ClientEntitySetIterator<ES, E> getBody() {
       if (entitySetIterator == null) {
         entitySetIterator = new ClientEntitySetIterator<ES, E>(
-                odataClient, getRawResponse(), 
ODataFormat.fromString(getContentType()));
+                odataClient, getRawResponse(), 
ContentType.parse(getContentType()));
       }
       return entitySetIterator;
     }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetRequestImpl.java
index 620a88d..6779f52 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetRequestImpl.java
@@ -25,10 +25,10 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
+import org.apache.olingo.client.api.domain.ClientEntitySet;
 import org.apache.olingo.commons.api.data.EntityCollection;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientEntitySet;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 /**
@@ -52,7 +52,7 @@ public class ODataEntitySetRequestImpl<ES extends 
ClientEntitySet>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 
@@ -79,7 +79,7 @@ public class ODataEntitySetRequestImpl<ES extends 
ClientEntitySet>
       if (entitySet == null) {
         try {
           final ResWrap<EntityCollection> resource =
-              
odataClient.getDeserializer(ODataFormat.fromString(getContentType())).
+              odataClient.getDeserializer(ContentType.parse(getContentType())).
                   toEntitySet(getRawResponse());
 
           entitySet = (ES) odataClient.getBinder().getODataEntitySet(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataMediaRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataMediaRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataMediaRequestImpl.java
index 7c7c34c..3f32f1b 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataMediaRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataMediaRequestImpl.java
@@ -28,7 +28,7 @@ import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataMediaRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
 import org.apache.olingo.client.api.http.HttpClientException;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 
 /**
  * This class implements an OData media query request.
@@ -44,12 +44,12 @@ public class ODataMediaRequestImpl extends 
AbstractODataRetrieveRequest<InputStr
   ODataMediaRequestImpl(final ODataClient odataClient, final URI query) {
     super(odataClient, query);
 
-    setAccept(ODataFormat.APPLICATION_OCTET_STREAM.toString());
-    setContentType(ODataFormat.APPLICATION_OCTET_STREAM.toString());
+    setAccept(ContentType.APPLICATION_OCTET_STREAM.toString());
+    setContentType(ContentType.APPLICATION_OCTET_STREAM.toString());
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultMediaFormat();
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataPropertyRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataPropertyRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataPropertyRequestImpl.java
index 36e9d0c..b48fb85 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataPropertyRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataPropertyRequestImpl.java
@@ -26,11 +26,11 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataPropertyRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
+import org.apache.olingo.client.api.domain.ClientProperty;
 import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.client.api.domain.ClientProperty;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 /**
@@ -50,7 +50,7 @@ public class ODataPropertyRequestImpl<T extends 
ClientProperty>
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultFormat();
   }
 
@@ -75,7 +75,7 @@ public class ODataPropertyRequestImpl<T extends 
ClientProperty>
     public T getBody() {
       if (property == null) {
         try {
-          final ResWrap<Property> resource = 
odataClient.getDeserializer(ODataFormat.fromString(getContentType()))
+          final ResWrap<Property> resource = 
odataClient.getDeserializer(ContentType.parse(getContentType()))
                   .toProperty(res.getEntity().getContent());
 
           property = (T) odataClient.getBinder().getODataProperty(resource);

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataRawRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataRawRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataRawRequestImpl.java
index 4c22c31..4ea6c61 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataRawRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataRawRequestImpl.java
@@ -31,7 +31,7 @@ import 
org.apache.olingo.client.api.communication.response.ODataRawResponse;
 import 
org.apache.olingo.client.core.communication.request.AbstractODataRequest;
 import 
org.apache.olingo.client.core.communication.response.AbstractODataResponse;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
@@ -51,7 +51,7 @@ public class ODataRawRequestImpl extends AbstractODataRequest 
implements ODataRa
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultPubFormat();
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataServiceDocumentRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataServiceDocumentRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataServiceDocumentRequestImpl.java
index 363ba87..e8fc2aa 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataServiceDocumentRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataServiceDocumentRequestImpl.java
@@ -26,9 +26,9 @@ import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataServiceDocumentRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
 import org.apache.olingo.client.api.data.ServiceDocument;
-import org.apache.olingo.commons.api.data.ResWrap;
 import org.apache.olingo.client.api.domain.ClientServiceDocument;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.data.ResWrap;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 
 /**
@@ -48,7 +48,7 @@ public class ODataServiceDocumentRequestImpl extends 
AbstractODataRetrieveReques
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultFormat();
   }
 
@@ -76,7 +76,7 @@ public class ODataServiceDocumentRequestImpl extends 
AbstractODataRetrieveReques
       if (serviceDocument == null) {
         try {
           final ResWrap<ServiceDocument> resource = odataClient.
-                  
getDeserializer(ODataFormat.fromString(getContentType())).toServiceDocument(getRawResponse());
+                  
getDeserializer(ContentType.parse(getContentType())).toServiceDocument(getRawResponse());
 
           serviceDocument = 
odataClient.getBinder().getODataServiceDocument(resource.getPayload());
         } catch (final ODataDeserializerException e) {

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataValueRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataValueRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataValueRequestImpl.java
index 9bbce7c..229ab1a 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataValueRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataValueRequestImpl.java
@@ -26,10 +26,11 @@ import org.apache.http.client.HttpClient;
 import org.apache.olingo.client.api.ODataClient;
 import 
org.apache.olingo.client.api.communication.request.retrieve.ODataValueRequest;
 import 
org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
-import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.client.api.domain.ClientPrimitiveValue;
+import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 
 /**
  * This class implements an OData entity property value query request.
@@ -48,7 +49,7 @@ public class ODataValueRequestImpl extends 
AbstractODataRetrieveRequest<ClientPr
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultValueFormat();
   }
 
@@ -74,11 +75,11 @@ public class ODataValueRequestImpl extends 
AbstractODataRetrieveRequest<ClientPr
     @Override
     public ClientPrimitiveValue getBody() {
       if (value == null) {
-        final ODataFormat format = ODataFormat.fromString(getContentType());
+        final ContentType contentType = ContentType.parse(getContentType());
 
         try {
           value = odataClient.getObjectFactory().newPrimitiveValueBuilder().
-                  setType(format == ODataFormat.TEXT_PLAIN
+                  setType(contentType.getODataFormat() == Format.TEXT_PLAIN
                           ? EdmPrimitiveTypeKind.String : 
EdmPrimitiveTypeKind.Stream).
                   setValue(IOUtils.toString(getRawResponse())).build();
         } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/XMLMetadataRequestImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/XMLMetadataRequestImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/XMLMetadataRequestImpl.java
index 2e432c8..b5248d4 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/XMLMetadataRequestImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/XMLMetadataRequestImpl.java
@@ -34,7 +34,7 @@ import org.apache.olingo.client.api.edm.xml.XMLMetadata;
 import org.apache.olingo.commons.api.edm.provider.CsdlAnnotation;
 import org.apache.olingo.commons.api.edm.provider.CsdlAnnotations;
 import org.apache.olingo.commons.api.edm.provider.CsdlSchema;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpStatusCode;
 
 public class XMLMetadataRequestImpl
@@ -170,7 +170,7 @@ public class XMLMetadataRequestImpl
         public XMLMetadata getBody() {
           if (metadata == null) {
             try {
-              metadata = 
odataClient.getDeserializer(ODataFormat.XML).toMetadata(getRawResponse());
+              metadata = 
odataClient.getDeserializer(ContentType.APPLICATION_XML).toMetadata(getRawResponse());
             } finally {
               this.close();
             }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedEntityRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedEntityRequest.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedEntityRequest.java
index c257803..99f1170 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedEntityRequest.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedEntityRequest.java
@@ -24,7 +24,7 @@ import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.client.api.communication.request.ODataPayloadManager;
 import 
org.apache.olingo.client.api.communication.request.streamed.ODataStreamedEntityRequest;
 import org.apache.olingo.client.api.communication.response.ODataResponse;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -37,7 +37,7 @@ public abstract class AbstractODataStreamedEntityRequest<V 
extends ODataResponse
     extends AbstractODataStreamedRequest<V, T>
     implements ODataStreamedEntityRequest<V, T> {
 
-  private ODataFormat format;
+  private ContentType contentType;
 
   /**
    * Constructor.
@@ -50,17 +50,17 @@ public abstract class AbstractODataStreamedEntityRequest<V 
extends ODataResponse
       final URI uri) {
 
     super(odataClient, method, uri);
-    setAccept(getFormat().getContentType().toContentTypeString());
+    setAccept(getFormat().toContentTypeString());
   }
 
   @Override
-  public final ODataFormat getFormat() {
-    return format == null ? 
odataClient.getConfiguration().getDefaultPubFormat() : format;
+  public final ContentType getFormat() {
+    return contentType == null ? 
odataClient.getConfiguration().getDefaultPubFormat() : contentType;
   }
 
   @Override
-  public final void setFormat(final ODataFormat format) {
-    this.format = format;
-    setAccept(format.getContentType().toContentTypeString());
+  public final void setFormat(final ContentType contentType) {
+    this.contentType = contentType;
+    setAccept(contentType.toContentTypeString());
   }
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedRequest.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedRequest.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedRequest.java
index e01e508..734762f 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedRequest.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/streamed/AbstractODataStreamedRequest.java
@@ -39,7 +39,6 @@ import 
org.apache.olingo.client.core.communication.request.AbstractODataRequest;
 import org.apache.olingo.client.core.communication.request.Wrapper;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.format.ContentType;
-import org.apache.olingo.commons.api.format.ODataFormat;
 import org.apache.olingo.commons.api.http.HttpMethod;
 
 /**
@@ -78,7 +77,7 @@ public abstract class AbstractODataStreamedRequest<V extends 
ODataResponse, T ex
   }
 
   @Override
-  public ODataFormat getDefaultFormat() {
+  public ContentType getDefaultFormat() {
     return odataClient.getConfiguration().getDefaultMediaFormat();
   }
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ClientODataDeserializerImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ClientODataDeserializerImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ClientODataDeserializerImpl.java
index 92bd57b..5c44372 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ClientODataDeserializerImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ClientODataDeserializerImpl.java
@@ -28,16 +28,17 @@ import org.apache.olingo.client.api.edm.xml.XMLMetadata;
 import org.apache.olingo.client.api.serialization.ClientODataDeserializer;
 import org.apache.olingo.client.core.data.JSONServiceDocumentDeserializer;
 import org.apache.olingo.client.core.data.XMLServiceDocumentDeserializer;
-import org.apache.olingo.client.core.edm.xml.ClientCsdlEdmx;
 import org.apache.olingo.client.core.edm.ClientCsdlXMLMetadata;
+import org.apache.olingo.client.core.edm.xml.ClientCsdlEdmx;
+import org.apache.olingo.commons.api.ODataError;
 import org.apache.olingo.commons.api.data.Delta;
 import org.apache.olingo.commons.api.data.Entity;
 import org.apache.olingo.commons.api.data.EntityCollection;
 import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.commons.api.ODataError;
 import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
+import org.apache.olingo.commons.api.format.Format;
 import org.apache.olingo.commons.api.serialization.ODataDeserializer;
 import org.apache.olingo.commons.api.serialization.ODataDeserializerException;
 import org.apache.olingo.commons.core.serialization.AtomDeserializer;
@@ -59,11 +60,11 @@ public class ClientODataDeserializerImpl implements 
ClientODataDeserializer {
 
   private final ODataDeserializer deserializer;
 
-  private final ODataFormat format;
+  private final ContentType contentType;
 
-  public ClientODataDeserializerImpl(final boolean serverMode, final 
ODataFormat format) {
-    this.format = format;
-    if (format == ODataFormat.XML || format == ODataFormat.ATOM) {
+  public ClientODataDeserializerImpl(final boolean serverMode, final 
ContentType contentType) {
+    this.contentType = contentType;
+    if (contentType.getODataFormat() == Format.XML || 
contentType.getODataFormat() == Format.ATOM) {
       deserializer = new AtomDeserializer();
     } else {
       deserializer = new JsonDeserializer(serverMode);
@@ -122,7 +123,7 @@ public class ClientODataDeserializerImpl implements 
ClientODataDeserializer {
 
   @Override
   public ResWrap<ServiceDocument> toServiceDocument(final InputStream input) 
throws ODataDeserializerException {
-    return format == ODataFormat.XML ?
+    return contentType.getODataFormat() == Format.XML ?
         new XMLServiceDocumentDeserializer(false).toServiceDocument(input) :
         new JSONServiceDocumentDeserializer(false).toServiceDocument(input);
   }
@@ -130,7 +131,7 @@ public class ClientODataDeserializerImpl implements 
ClientODataDeserializer {
   @Override
   public ResWrap<Delta> toDelta(final InputStream input) throws 
ODataDeserializerException {
     try {
-      return format == ODataFormat.ATOM ?
+      return contentType.getODataFormat() == Format.ATOM ?
           new AtomDeserializer().delta(input) :
           new JsonDeltaDeserializer(false).toDelta(input);
     } catch (XMLStreamException e) {

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/588df780/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataBinderImpl.java
----------------------------------------------------------------------
diff --git 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataBinderImpl.java
 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataBinderImpl.java
index adecc20..8a84d95 100644
--- 
a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataBinderImpl.java
+++ 
b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataBinderImpl.java
@@ -30,25 +30,6 @@ import org.apache.olingo.client.api.EdmEnabledODataClient;
 import org.apache.olingo.client.api.ODataClient;
 import org.apache.olingo.client.api.data.ServiceDocument;
 import org.apache.olingo.client.api.data.ServiceDocumentItem;
-import org.apache.olingo.client.api.serialization.ODataBinder;
-import org.apache.olingo.client.core.uri.URIUtils;
-import org.apache.olingo.commons.api.Constants;
-import org.apache.olingo.commons.api.data.Annotatable;
-import org.apache.olingo.commons.api.data.Annotation;
-import org.apache.olingo.commons.api.data.ComplexValue;
-import org.apache.olingo.commons.api.data.ContextURL;
-import org.apache.olingo.commons.api.data.DeletedEntity;
-import org.apache.olingo.commons.api.data.Delta;
-import org.apache.olingo.commons.api.data.DeltaLink;
-import org.apache.olingo.commons.api.data.Entity;
-import org.apache.olingo.commons.api.data.EntityCollection;
-import org.apache.olingo.commons.api.data.Link;
-import org.apache.olingo.commons.api.data.Linked;
-import org.apache.olingo.commons.api.data.Operation;
-import org.apache.olingo.commons.api.data.Property;
-import org.apache.olingo.commons.api.data.ResWrap;
-import org.apache.olingo.commons.api.data.Valuable;
-import org.apache.olingo.commons.api.data.ValueType;
 import org.apache.olingo.client.api.domain.ClientAnnotatable;
 import org.apache.olingo.client.api.domain.ClientAnnotation;
 import org.apache.olingo.client.api.domain.ClientCollectionValue;
@@ -68,6 +49,29 @@ import org.apache.olingo.client.api.domain.ClientProperty;
 import org.apache.olingo.client.api.domain.ClientServiceDocument;
 import org.apache.olingo.client.api.domain.ClientValuable;
 import org.apache.olingo.client.api.domain.ClientValue;
+import org.apache.olingo.client.api.serialization.ODataBinder;
+import org.apache.olingo.client.core.domain.ClientAnnotationImpl;
+import org.apache.olingo.client.core.domain.ClientDeletedEntityImpl;
+import org.apache.olingo.client.core.domain.ClientDeltaLinkImpl;
+import org.apache.olingo.client.core.domain.ClientPropertyImpl;
+import org.apache.olingo.client.core.uri.URIUtils;
+import org.apache.olingo.commons.api.Constants;
+import org.apache.olingo.commons.api.data.Annotatable;
+import org.apache.olingo.commons.api.data.Annotation;
+import org.apache.olingo.commons.api.data.ComplexValue;
+import org.apache.olingo.commons.api.data.ContextURL;
+import org.apache.olingo.commons.api.data.DeletedEntity;
+import org.apache.olingo.commons.api.data.Delta;
+import org.apache.olingo.commons.api.data.DeltaLink;
+import org.apache.olingo.commons.api.data.Entity;
+import org.apache.olingo.commons.api.data.EntityCollection;
+import org.apache.olingo.commons.api.data.Link;
+import org.apache.olingo.commons.api.data.Linked;
+import org.apache.olingo.commons.api.data.Operation;
+import org.apache.olingo.commons.api.data.Property;
+import org.apache.olingo.commons.api.data.ResWrap;
+import org.apache.olingo.commons.api.data.Valuable;
+import org.apache.olingo.commons.api.data.ValueType;
 import org.apache.olingo.commons.api.edm.Edm;
 import org.apache.olingo.commons.api.edm.EdmBindingTarget;
 import org.apache.olingo.commons.api.edm.EdmComplexType;
@@ -86,14 +90,10 @@ import org.apache.olingo.commons.api.edm.EdmTerm;
 import org.apache.olingo.commons.api.edm.EdmType;
 import org.apache.olingo.commons.api.edm.FullQualifiedName;
 import org.apache.olingo.commons.api.edm.geo.Geospatial;
-import org.apache.olingo.commons.api.format.ODataFormat;
+import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.serialization.ODataSerializerException;
-import org.apache.olingo.client.core.domain.ClientAnnotationImpl;
-import org.apache.olingo.client.core.domain.ClientDeletedEntityImpl;
-import org.apache.olingo.client.core.domain.ClientDeltaLinkImpl;
-import org.apache.olingo.client.core.domain.ClientPropertyImpl;
-import 
org.apache.olingo.commons.core.edm.primitivetype.EdmPrimitiveTypeFactory;
 import org.apache.olingo.commons.core.edm.EdmTypeInfo;
+import 
org.apache.olingo.commons.core.edm.primitivetype.EdmPrimitiveTypeFactory;
 import org.apache.olingo.commons.core.serialization.ContextURLParser;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -392,7 +392,7 @@ public class ODataBinderImpl implements ODataBinder {
     if (LOG.isDebugEnabled()) {
       final StringWriter writer = new StringWriter();
       try {
-        client.getSerializer(ODataFormat.JSON).write(writer, 
resource.getPayload());
+        client.getSerializer(ContentType.JSON).write(writer, 
resource.getPayload());
       } catch (final ODataSerializerException e) {
         LOG.debug("EntitySet -> ODataEntitySet:\n{}", writer.toString());
       }
@@ -589,7 +589,7 @@ public class ODataBinderImpl implements ODataBinder {
     if (LOG.isDebugEnabled()) {
       final StringWriter writer = new StringWriter();
       try {
-        client.getSerializer(ODataFormat.JSON).write(writer, 
resource.getPayload());
+        client.getSerializer(ContentType.JSON).write(writer, 
resource.getPayload());
       } catch (final ODataSerializerException e) {
         LOG.debug("EntityResource -> ODataEntity:\n{}", writer.toString());
       }

Reply via email to