You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by il...@apache.org on 2014/03/24 09:45:44 UTC

[7/9] git commit: [OLINGO-200] Moving Atom and JSON (de)serializer to commons

[OLINGO-200] Moving Atom and JSON (de)serializer to commons


Project: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/commit/fac84b3e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/tree/fac84b3e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/diff/fac84b3e

Branch: refs/heads/olingo200
Commit: fac84b3eb6a9c84c6133095dfb0d3cd73da6b579
Parents: fa7a9ab
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Mon Mar 24 09:36:44 2014 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Mon Mar 24 09:36:44 2014 +0100

----------------------------------------------------------------------
 .../org/apache/olingo/client/api/Constants.java | 241 ------------
 .../olingo/client/api/data/CollectionValue.java |  27 --
 .../olingo/client/api/data/ComplexValue.java    |  27 --
 .../apache/olingo/client/api/data/Entry.java    | 167 ---------
 .../org/apache/olingo/client/api/data/Feed.java |  75 ----
 .../apache/olingo/client/api/data/GeoUtils.java |  90 -----
 .../olingo/client/api/data/GeospatialValue.java |  28 --
 .../org/apache/olingo/client/api/data/Link.java | 121 ------
 .../olingo/client/api/data/NullValue.java       |  26 --
 .../olingo/client/api/data/PrimitiveValue.java  |  25 --
 .../apache/olingo/client/api/data/Property.java |  34 --
 .../apache/olingo/client/api/data/Value.java    |  44 ---
 .../client/api/data/v3/LinkCollection.java      |  52 ---
 .../api/domain/ODataEntitySetIterator.java      |   4 +-
 .../olingo/client/api/op/CommonODataBinder.java |   8 +-
 .../client/api/op/CommonODataDeserializer.java  |   6 +-
 .../olingo/client/api/op/ODataSerializer.java   |   8 +-
 .../olingo/client/api/op/v3/ODataBinder.java    |   2 +-
 .../client/api/op/v3/ODataDeserializer.java     |   2 +-
 lib/client-core/pom.xml                         |  21 --
 .../olingo/client/core/AbstractODataClient.java |   2 +-
 .../communication/request/ODataRequestImpl.java |   4 +-
 .../request/batch/ODataBatchUtilities.java      |   2 +-
 .../batch/ODataBatchResponseManager.java        |   2 +-
 .../client/core/data/AbstractAtomDealer.java    |  87 -----
 .../client/core/data/AbstractAtomObject.java    |  78 ----
 .../olingo/client/core/data/AbstractEntry.java  | 159 --------
 .../core/data/AbstractJsonDeserializer.java     | 176 ---------
 .../core/data/AbstractJsonSerializer.java       |  94 -----
 .../client/core/data/AbstractPayloadObject.java |  48 ---
 .../client/core/data/AbstractPropertyImpl.java  |  80 ----
 .../olingo/client/core/data/AbstractValue.java  |  98 -----
 .../client/core/data/AtomDeserializer.java      | 370 -------------------
 .../olingo/client/core/data/AtomEntryImpl.java  |  25 --
 .../olingo/client/core/data/AtomFeedImpl.java   |  66 ----
 .../core/data/AtomGeoValueDeserializer.java     | 261 -------------
 .../core/data/AtomGeoValueSerializer.java       | 221 -----------
 .../core/data/AtomPropertyDeserializer.java     | 214 -----------
 .../client/core/data/AtomPropertyImpl.java      |  25 --
 .../core/data/AtomPropertySerializer.java       |  88 -----
 .../olingo/client/core/data/AtomSerializer.java | 264 -------------
 .../client/core/data/CollectionValueImpl.java   |  40 --
 .../client/core/data/ComplexValueImpl.java      |  40 --
 .../client/core/data/GeospatialValueImpl.java   |  42 ---
 .../client/core/data/JSONEntryDeserializer.java | 244 ------------
 .../olingo/client/core/data/JSONEntryImpl.java  |  92 -----
 .../client/core/data/JSONEntrySerializer.java   | 120 ------
 .../client/core/data/JSONErrorBundle.java       |  50 ---
 .../olingo/client/core/data/JSONErrorImpl.java  | 237 ------------
 .../client/core/data/JSONFeedDeserializer.java  |  68 ----
 .../olingo/client/core/data/JSONFeedImpl.java   | 113 ------
 .../client/core/data/JSONFeedSerializer.java    |  57 ---
 .../core/data/JSONGeoValueDeserializer.java     | 274 --------------
 .../core/data/JSONGeoValueSerializer.java       | 183 ---------
 .../core/data/JSONPropertyDeserializer.java     |  71 ----
 .../client/core/data/JSONPropertyImpl.java      |  53 ---
 .../core/data/JSONPropertySerializer.java       |  59 ---
 .../data/JSONServiceDocumentDeserializer.java   |   5 +-
 .../olingo/client/core/data/LinkImpl.java       | 112 ------
 .../olingo/client/core/data/NullValueImpl.java  |  35 --
 .../core/data/ODataJacksonDeserializer.java     |  45 ---
 .../core/data/ODataJacksonSerializer.java       |  45 ---
 .../client/core/data/PrimitiveValueImpl.java    |  41 --
 .../olingo/client/core/data/XMLErrorImpl.java   | 213 -----------
 .../data/XMLServiceDocumentDeserializer.java    |   3 +-
 .../core/data/v3/JSONLinkCollectionImpl.java    | 118 ------
 .../core/data/v3/JSONServiceDocumentImpl.java   |   4 +-
 .../core/data/v3/XMLLinkCollectionImpl.java     |  70 ----
 .../core/data/v4/JSONServiceDocumentImpl.java   |   4 +-
 .../core/domain/ODataPrimitiveValueImpl.java    |   2 +-
 .../client/core/edm/EdmActionImportImpl.java    |   2 +-
 .../olingo/client/core/edm/EdmClientImpl.java   |   1 +
 .../client/core/edm/EdmComplexTypeImpl.java     |   1 +
 .../client/core/edm/EdmEntityContainerImpl.java |   1 +
 .../client/core/edm/EdmEntityTypeImpl.java      |   1 +
 .../client/core/edm/EdmFunctionImportImpl.java  |   1 +
 .../core/edm/EdmNavigationPropertyImpl.java     |   1 +
 .../client/core/edm/EdmParameterImpl.java       |   1 +
 .../olingo/client/core/edm/EdmPropertyImpl.java |   1 +
 .../client/core/edm/EdmReturnTypeImpl.java      |   1 +
 .../olingo/client/core/edm/EdmTypeInfo.java     | 172 ---------
 .../core/edm/v3/EdmActionImportProxy.java       |   2 +-
 .../core/edm/v3/EdmFunctionImportProxy.java     |   2 +-
 .../core/edm/xml/AbstractEdmDeserializer.java   |   8 +-
 .../core/edm/xml/ComplexTypeDeserializer.java   |   2 +-
 .../core/edm/xml/DataServicesDeserializer.java  |   2 +-
 .../client/core/edm/xml/EdmxDeserializer.java   |   2 +-
 .../edm/xml/EntityContainerDeserializer.java    |   2 +-
 .../core/edm/xml/EntitySetDeserializer.java     |   2 +-
 .../core/edm/xml/EntityTypeDeserializer.java    |   2 +-
 .../core/edm/xml/EnumTypeDeserializer.java      |   2 +-
 .../core/edm/xml/ParameterDeserializer.java     |   2 +-
 .../core/edm/xml/PropertyDeserializer.java      |   2 +-
 .../client/core/edm/xml/SchemaDeserializer.java |  20 +-
 .../client/core/op/AbstractJacksonTool.java     |  16 +-
 .../client/core/op/AbstractODataBinder.java     |  26 +-
 .../core/op/AbstractODataDeserializer.java      |  32 +-
 .../client/core/op/AbstractODataReader.java     |   2 +-
 .../client/core/op/AbstractODataSerializer.java |  32 +-
 .../client/core/op/ODataObjectFactoryImpl.java  |  35 +-
 .../olingo/client/core/op/ResourceFactory.java  |  18 +-
 .../client/core/op/impl/v3/ODataBinderImpl.java |   2 +-
 .../core/op/impl/v3/ODataDeserializerImpl.java  |  12 +-
 .../core/op/impl/v3/ODataSerializerImpl.java    |   6 +-
 .../core/op/impl/v4/ODataDeserializerImpl.java  |   6 +-
 .../core/op/impl/v4/ODataSerializerImpl.java    |   6 +-
 .../apache/olingo/client/core/uri/URIUtils.java |   2 +-
 .../olingo/client/core/v3/ODataClientImpl.java  |   4 +-
 .../olingo/client/core/v4/ODataClientImpl.java  |   4 +-
 .../client/core/AbstractPrimitiveTest.java      |   2 +-
 .../olingo/client/core/AtomLinksQualifier.java  |   2 +-
 .../client/core/it/AbstractTestITCase.java      |   8 +-
 .../core/it/v3/QueryOptionsTestITCase.java      |   4 +-
 .../apache/olingo/client/core/v3/JSONTest.java  |   2 +-
 .../apache/olingo/commons/api/Constants.java    | 243 ++++++++++++
 .../commons/api/data/CollectionValue.java       |  27 ++
 .../olingo/commons/api/data/ComplexValue.java   |  27 ++
 .../apache/olingo/commons/api/data/Entry.java   | 167 +++++++++
 .../apache/olingo/commons/api/data/Feed.java    |  75 ++++
 .../olingo/commons/api/data/GeoUtils.java       |  90 +++++
 .../commons/api/data/GeospatialValue.java       |  28 ++
 .../apache/olingo/commons/api/data/Link.java    | 121 ++++++
 .../olingo/commons/api/data/NullValue.java      |  26 ++
 .../olingo/commons/api/data/PrimitiveValue.java |  25 ++
 .../olingo/commons/api/data/Property.java       |  34 ++
 .../apache/olingo/commons/api/data/Value.java   |  44 +++
 .../commons/api/data/v3/LinkCollection.java     |  52 +++
 lib/commons-core/pom.xml                        |  21 ++
 .../commons/core/data/AbstractAtomDealer.java   |  87 +++++
 .../commons/core/data/AbstractAtomObject.java   |  78 ++++
 .../olingo/commons/core/data/AbstractEntry.java | 159 ++++++++
 .../core/data/AbstractJsonDeserializer.java     | 176 +++++++++
 .../core/data/AbstractJsonSerializer.java       |  94 +++++
 .../core/data/AbstractPayloadObject.java        |  48 +++
 .../commons/core/data/AbstractPropertyImpl.java |  80 ++++
 .../olingo/commons/core/data/AbstractValue.java |  98 +++++
 .../commons/core/data/AtomDeserializer.java     | 370 +++++++++++++++++++
 .../olingo/commons/core/data/AtomEntryImpl.java |  25 ++
 .../olingo/commons/core/data/AtomFeedImpl.java  |  66 ++++
 .../core/data/AtomGeoValueDeserializer.java     | 261 +++++++++++++
 .../core/data/AtomGeoValueSerializer.java       | 221 +++++++++++
 .../core/data/AtomPropertyDeserializer.java     | 214 +++++++++++
 .../commons/core/data/AtomPropertyImpl.java     |  25 ++
 .../core/data/AtomPropertySerializer.java       |  88 +++++
 .../commons/core/data/AtomSerializer.java       | 264 +++++++++++++
 .../commons/core/data/CollectionValueImpl.java  |  40 ++
 .../commons/core/data/ComplexValueImpl.java     |  40 ++
 .../commons/core/data/GeospatialValueImpl.java  |  42 +++
 .../core/data/JSONEntryDeserializer.java        | 241 ++++++++++++
 .../olingo/commons/core/data/JSONEntryImpl.java |  92 +++++
 .../commons/core/data/JSONEntrySerializer.java  | 120 ++++++
 .../commons/core/data/JSONErrorBundle.java      |  50 +++
 .../olingo/commons/core/data/JSONErrorImpl.java | 237 ++++++++++++
 .../commons/core/data/JSONFeedDeserializer.java |  68 ++++
 .../olingo/commons/core/data/JSONFeedImpl.java  | 113 ++++++
 .../commons/core/data/JSONFeedSerializer.java   |  57 +++
 .../core/data/JSONGeoValueDeserializer.java     | 274 ++++++++++++++
 .../core/data/JSONGeoValueSerializer.java       | 183 +++++++++
 .../core/data/JSONPropertyDeserializer.java     |  71 ++++
 .../commons/core/data/JSONPropertyImpl.java     |  53 +++
 .../core/data/JSONPropertySerializer.java       |  59 +++
 .../olingo/commons/core/data/LinkImpl.java      | 112 ++++++
 .../olingo/commons/core/data/NullValueImpl.java |  35 ++
 .../core/data/ODataJacksonDeserializer.java     |  44 +++
 .../core/data/ODataJacksonSerializer.java       |  45 +++
 .../commons/core/data/PrimitiveValueImpl.java   |  41 ++
 .../olingo/commons/core/data/XMLErrorImpl.java  | 213 +++++++++++
 .../core/data/v3/JSONLinkCollectionImpl.java    | 118 ++++++
 .../core/data/v3/XMLLinkCollectionImpl.java     |  70 ++++
 .../olingo/commons/core/edm/EdmTypeInfo.java    | 172 +++++++++
 170 files changed, 6097 insertions(+), 6093 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/Constants.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/Constants.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/Constants.java
deleted file mode 100644
index b4c3d6b..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/Constants.java
+++ /dev/null
@@ -1,241 +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.client.api;
-
-import javax.xml.XMLConstants;
-import javax.xml.namespace.QName;
-
-/**
- * Constant values related to the OData protocol.
- */
-public interface Constants {
-
-  // Other stuff
-  public final static String UTF8 = "UTF-8";
-
-  public final static Integer DEFAULT_PRECISION = 40;
-
-  public final static Integer DEFAULT_SCALE = 25;
-
-  // XML namespaces and prefixes
-  public final static String NS_ATOM = "http://www.w3.org/2005/Atom";
-
-  public static final String NS_GEORSS = "http://www.georss.org/georss";
-
-  public static final String NS_GML = "http://www.opengis.net/gml";
-
-  public static final String PREFIX_DATASERVICES = "d";
-
-  public static final String PREFIX_METADATA = "m";
-
-  public static final String PREFIX_GEORSS = "georss";
-
-  public static final String PREFIX_GML = "gml";
-
-  public final static String SRS_URLPREFIX = "http://www.opengis.net/def/crs/EPSG/0/";
-
-  // Link rel(s)
-  public static final String EDIT_LINK_REL = "edit";
-
-  public static final String SELF_LINK_REL = "self";
-
-  public static final String NEXT_LINK_REL = "next";
-
-  // XML elements and attributes
-  public static final String PROPERTIES = "properties";
-
-  public static final String ELEM_ELEMENT = "element";
-
-  public final static String ATTR_TYPE = "type";
-
-  public final static String ATTR_NULL = "null";
-
-  public static final String ATTR_XML_BASE = "base";
-
-  public static final QName QNAME_ATTR_XML_BASE = new QName(XMLConstants.XML_NS_URI, ATTR_XML_BASE);
-
-  public static final String ATTR_REL = "rel";
-
-  public static final String ATTR_TITLE = "title";
-
-  public static final String ATTR_METADATA = "metadata";
-
-  public static final String ATTR_HREF = "href";
-
-  public static final String ATTR_TARGET = "target";
-
-  public static final String ATTR_SRSNAME = "srsName";
-
-  public static final QName QNAME_ATTR_SRSNAME = new QName(NS_GML, ATTR_SRSNAME);
-
-  public static final String ELEM_POINT = "Point";
-
-  public static final String ELEM_MULTIPOINT = "MultiPoint";
-
-  public static final String ELEM_POINTMEMBERS = "pointMembers";
-
-  public static final QName QNAME_POINTMEMBERS = new QName(NS_GML, ELEM_POINTMEMBERS);
-
-  public static final String ELEM_LINESTRING = "LineString";
-
-  public static final QName QNAME_LINESTRING = new QName(NS_GML, ELEM_LINESTRING);
-
-  public static final String ELEM_MULTILINESTRING = "MultiCurve";
-
-  public static final String ELEM_LINESTRINGMEMBERS = "curveMembers";
-
-  public static final String ELEM_POLYGON = "Polygon";
-
-  public static final QName QNAME_POLYGON = new QName(NS_GML, ELEM_POLYGON);
-
-  public static final String ELEM_POLYGON_EXTERIOR = "exterior";
-
-  public static final QName QNAME_POLYGON_EXTERIOR = new QName(NS_GML, ELEM_POLYGON_EXTERIOR);
-
-  public static final String ELEM_POLYGON_INTERIOR = "interior";
-
-  public static final QName QNAME_POLYGON_INTERIOR = new QName(NS_GML, ELEM_POLYGON_INTERIOR);
-
-  public static final String ELEM_POLYGON_LINEARRING = "LinearRing";
-
-  public static final String ELEM_MULTIPOLYGON = "MultiSurface";
-
-  public static final String ELEM_SURFACEMEMBERS = "surfaceMembers";
-
-  public static final String ELEM_GEOCOLLECTION = "MultiGeometry";
-
-  public static final String ELEM_GEOMEMBERS = "geometryMembers";
-
-  public static final QName QNAME_GEOMEMBERS = new QName(NS_GML, ELEM_GEOMEMBERS);
-
-  public static final String ELEM_POS = "pos";
-
-  public static final String ELEM_PROPERTY = "property";
-
-  public static final String ELEM_LINKS = "links";
-
-  public static final String ELEM_URI = "uri";
-
-  // JSON stuff
-  public final static String JSON_CONTEXT = "@odata.context";
-
-  public final static String JSON_METADATA = "odata.metadata";
-
-  public final static String JSON_TYPE = "odata.type";
-
-  public final static String JSON_TYPE_SUFFIX = "@" + JSON_TYPE;
-
-  public final static String JSON_ETAG = "odata.etag";
-
-  public final static String JSON_MEDIA_ETAG = "odata.mediaETag";
-
-  public final static String JSON_MEDIA_ETAG_SUFFIX = "@" + JSON_MEDIA_ETAG;
-
-  public final static String JSON_ID = "odata.id";
-
-  public final static String JSON_READ_LINK = "odata.readLink";
-
-  public final static String JSON_EDIT_LINK = "odata.editLink";
-
-  public final static String JSON_MEDIAREAD_LINK = "odata.mediaReadLink";
-
-  public final static String JSON_MEDIAEDIT_LINK = "odata.mediaEditLink";
-
-  public final static String JSON_MEDIAEDIT_LINK_SUFFIX = "@" + JSON_MEDIAEDIT_LINK;
-
-  public final static String JSON_MEDIA_CONTENT_TYPE = "odata.mediaContentType";
-
-  public final static String JSON_MEDIA_CONTENT_TYPE_SUFFIX = "@" + JSON_MEDIA_CONTENT_TYPE;
-
-  public final static String JSON_NAVIGATION_LINK_SUFFIX = "@odata.navigationLinkUrl";
-
-  public final static String JSON_BIND_LINK_SUFFIX = "@odata.bind";
-
-  public final static String JSON_ASSOCIATION_LINK_SUFFIX = "@odata.associationLinkUrl";
-
-  public final static String JSON_NULL = "odata.null";
-
-  public final static String JSON_VALUE = "value";
-
-  public final static String JSON_URL = "url";
-
-  public final static String JSON_COORDINATES = "coordinates";
-
-  public final static String JSON_GEOMETRIES = "geometries";
-
-  public final static String JSON_CRS = "crs";
-
-  public final static String JSON_COUNT = "odata.count";
-
-  public final static String JSON_NEXT_LINK = "odata.nextLink";
-
-  public final static String JSON_NAME = "name";
-
-  // Atom stuff
-  public final static String ATOM_ELEM_ENTRY = "entry";
-
-  public static final QName QNAME_ATOM_ELEM_ENTRY = new QName(NS_ATOM, ATOM_ELEM_ENTRY);
-
-  public final static String ATOM_ELEM_FEED = "feed";
-
-  public static final QName QNAME_ATOM_ELEM_FEED = new QName(NS_ATOM, ATOM_ELEM_FEED);
-
-  public final static String ATOM_ELEM_CATEGORY = "category";
-
-  public static final QName QNAME_ATOM_ELEM_CATEGORY = new QName(NS_ATOM, ATOM_ELEM_CATEGORY);
-
-  public static final String ATOM_ELEM_COUNT = "count";
-
-  public final static String ATOM_ELEM_ID = "id";
-
-  public static final QName QNAME_ATOM_ELEM_ID = new QName(NS_ATOM, ATOM_ELEM_ID);
-
-  public static final String ATOM_ELEM_TITLE = "title";
-
-  public static final QName QNAME_ATOM_ELEM_TITLE = new QName(NS_ATOM, ATOM_ELEM_TITLE);
-
-  public static final String ATOM_ELEM_SUMMARY = "summary";
-
-  public static final QName QNAME_ATOM_ELEM_SUMMARY = new QName(NS_ATOM, ATOM_ELEM_SUMMARY);
-
-  public static final String ATOM_ELEM_UPDATED = "updated";
-
-  public static final QName QNAME_ATOM_ELEM_UPDATED = new QName(NS_ATOM, ATOM_ELEM_UPDATED);
-
-  public final static String ATOM_ELEM_LINK = "link";
-
-  public static final QName QNAME_ATOM_ELEM_LINK = new QName(NS_ATOM, ATOM_ELEM_LINK);
-
-  public final static String ATOM_ELEM_CONTENT = "content";
-
-  public static final QName QNAME_ATOM_ELEM_CONTENT = new QName(NS_ATOM, ATOM_ELEM_CONTENT);
-
-  public static final String ATOM_ELEM_ACTION = "action";
-
-  public static final String ATOM_ELEM_INLINE = "inline";
-
-  public static final String ATOM_ATTR_TERM = "term";
-
-  public static final String ATOM_ATTR_SCHEME = "scheme";
-
-  public static final String ATOM_ATTR_SRC = "src";
-
-  public static final String ATOM_ATTR_ETAG = "etag";
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/CollectionValue.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/CollectionValue.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/CollectionValue.java
deleted file mode 100644
index 072890d..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/CollectionValue.java
+++ /dev/null
@@ -1,27 +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.client.api.data;
-
-import java.util.List;
-
-public interface CollectionValue extends Value {
-
-  @Override
-  List<Value> get();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/ComplexValue.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/ComplexValue.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/ComplexValue.java
deleted file mode 100644
index 80e9c8f..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/ComplexValue.java
+++ /dev/null
@@ -1,27 +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.client.api.data;
-
-import java.util.List;
-
-public interface ComplexValue extends Value {
-
-  @Override
-  List<Property> get();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Entry.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Entry.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Entry.java
deleted file mode 100644
index 0fcf77c..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Entry.java
+++ /dev/null
@@ -1,167 +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.client.api.data;
-
-import org.apache.olingo.commons.api.domain.ODataOperation;
-import java.net.URI;
-import java.util.List;
-
-public interface Entry {
-
-  /**
-   * Gets ETag.
-   *
-   * @return ETag.
-   */
-  String getETag();
-
-  /**
-   * Gets base URI.
-   *
-   * @return base URI.
-   */
-  URI getBaseURI();
-
-  /**
-   * Gets entry type.
-   *
-   * @return entry type.
-   */
-  String getType();
-
-  /**
-   * Sets entry type.
-   *
-   * @param type entry type.
-   */
-  void setType(String type);
-
-  /**
-   * Gest entry ID.
-   *
-   * @return entry ID.
-   */
-  String getId();
-
-  /**
-   * Gets entry self link.
-   *
-   * @return self link.
-   */
-  Link getSelfLink();
-
-  /**
-   * Sets entry self link.
-   *
-   * @param selfLink self link.
-   */
-  void setSelfLink(Link selfLink);
-
-  /**
-   * Gets entry edit link.
-   *
-   * @return edit link.
-   */
-  Link getEditLink();
-
-  /**
-   * Sets entry edit link.
-   *
-   * @param editLink edit link.
-   */
-  void setEditLink(Link editLink);
-
-  /**
-   * Gets association links.
-   *
-   * @return association links.
-   */
-  List<Link> getAssociationLinks();
-
-  /**
-   * Gets navigation links.
-   *
-   * @return links.
-   */
-  List<Link> getNavigationLinks();
-
-  /**
-   * Gets media entity links.
-   *
-   * @return links.
-   */
-  List<Link> getMediaEditLinks();
-
-  /**
-   * Gets operations.
-   *
-   * @return operations.
-   */
-  List<ODataOperation> getOperations();
-
-  /**
-   * Gets properties.
-   *
-   * @return properties.
-   */
-  List<Property> getProperties();
-
-  /**
-   * Gets property with given name.
-   *
-   * @param name property name
-   * @return property with given name if found, null otherwise
-   */
-  Property getProperty(String name);
-
-  /**
-   * Gets media content type.
-   *
-   * @return media content type.
-   */
-  String getMediaContentType();
-
-  /**
-   * Gets media content resource.
-   *
-   * @return media content resource.
-   */
-  String getMediaContentSource();
-
-  /**
-   * Set media content source.
-   *
-   * @param mediaContentSource media content source.
-   */
-  void setMediaContentSource(String mediaContentSource);
-
-  /**
-   * Set media content type.
-   *
-   * @param mediaContentType media content type.
-   */
-  void setMediaContentType(String mediaContentType);
-
-  /**
-   * Checks if the current entry is a media entry.
-   *
-   * @return 'TRUE' if is a media entry; 'FALSE' otherwise.
-   */
-  boolean isMediaEntry();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Feed.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Feed.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Feed.java
deleted file mode 100644
index 6c4e2f9..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Feed.java
+++ /dev/null
@@ -1,75 +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.client.api.data;
-
-import java.net.URI;
-import java.util.List;
-
-public interface Feed {
-
-  /**
-   * Gets base URI.
-   *
-   * @return base URI.
-   */
-  URI getBaseURI();
-
-  /**
-   * Sets number of entries.
-   *
-   * @param count number of entries
-   */
-  void setCount(Integer count);
-
-  /**
-   * Gets number of entries - if it was required.
-   *
-   * @return number of entries into the feed.
-   */
-  Integer getCount();
-
-  /**
-   * Gest feed ID.
-   *
-   * @return feed ID.
-   */
-  String getId();
-
-  /**
-   * Gets entries.
-   *
-   * @return entries.
-   */
-  List<Entry> getEntries();
-
-  /**
-   * Gets next link if exists.
-   *
-   * @return next link if exists; null otherwise.
-   */
-  URI getNext();
-
-  /**
-   * Sets next link.
-   *
-   * @param next next link.
-   */
-  void setNext(URI next);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeoUtils.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeoUtils.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeoUtils.java
deleted file mode 100644
index 083b4e0..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeoUtils.java
+++ /dev/null
@@ -1,90 +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.client.api.data;
-
-import org.apache.olingo.client.api.Constants;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.edm.geo.Geospatial;
-
-public final class GeoUtils {
-
-  private GeoUtils() {
-    // Empty private constructor for static utility classes       
-  }
-
-  public static Geospatial.Dimension getDimension(final EdmPrimitiveTypeKind type) {
-    Geospatial.Dimension dimension;
-
-    switch (type) {
-      case Geography:
-      case GeographyCollection:
-      case GeographyLineString:
-      case GeographyMultiLineString:
-      case GeographyPoint:
-      case GeographyMultiPoint:
-      case GeographyPolygon:
-      case GeographyMultiPolygon:
-        dimension = Geospatial.Dimension.GEOGRAPHY;
-        break;
-
-      default:
-        dimension = Geospatial.Dimension.GEOMETRY;
-    }
-
-    return dimension;
-  }
-
-  public static EdmPrimitiveTypeKind getType(final Geospatial.Dimension dimension, final String elementName) {
-    EdmPrimitiveTypeKind type = null;
-
-    if (Constants.ELEM_POINT.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyPoint
-              : EdmPrimitiveTypeKind.GeometryPoint;
-    } else if (Constants.ELEM_MULTIPOINT.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyMultiPoint
-              : EdmPrimitiveTypeKind.GeometryMultiPoint;
-    } else if (Constants.ELEM_LINESTRING.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyLineString
-              : EdmPrimitiveTypeKind.GeometryLineString;
-    } else if (Constants.ELEM_MULTILINESTRING.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyMultiLineString
-              : EdmPrimitiveTypeKind.GeometryMultiLineString;
-    } else if (Constants.ELEM_POLYGON.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyPolygon
-              : EdmPrimitiveTypeKind.GeometryPolygon;
-    } else if (Constants.ELEM_MULTIPOLYGON.equals(elementName)) {
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyMultiPolygon
-              : EdmPrimitiveTypeKind.GeometryMultiPolygon;
-    } else if (Constants.ELEM_GEOCOLLECTION.equals(elementName)
-            || Constants.ELEM_GEOMEMBERS.equals(elementName)) {
-
-      type = dimension == Geospatial.Dimension.GEOGRAPHY
-              ? EdmPrimitiveTypeKind.GeographyCollection
-              : EdmPrimitiveTypeKind.GeometryCollection;
-    }
-
-    return type;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeospatialValue.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeospatialValue.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeospatialValue.java
deleted file mode 100644
index c5d4d2a..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/GeospatialValue.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.client.api.data;
-
-import org.apache.olingo.commons.api.edm.geo.Geospatial;
-
-public interface GeospatialValue extends Value {
-
-  @Override
-  Geospatial get();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Link.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Link.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Link.java
deleted file mode 100644
index b707c8b..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Link.java
+++ /dev/null
@@ -1,121 +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.client.api.data;
-
-public interface Link {
-
-  /**
-   * Gets rel info.
-   *
-   * @return rel info.
-   */
-  String getRel();
-
-  /**
-   * Sets rel info.
-   *
-   * @param rel rel info.
-   */
-  void setRel(String rel);
-
-  /**
-   * Gets type.
-   *
-   * @return type.
-   */
-  String getType();
-
-  /**
-   * Sets type.
-   *
-   * @param type type.
-   */
-  void setType(String type);
-
-  /**
-   * Gets title.
-   *
-   * @return title.
-   */
-  String getTitle();
-
-  /**
-   * Sets title.
-   *
-   * @param title title.
-   */
-  void setTitle(String title);
-
-  /**
-   * Gets href.
-   *
-   * @return href.
-   */
-  String getHref();
-
-  /**
-   * Sets href.
-   *
-   * @param href href.
-   */
-  void setHref(String href);
-
-  /**
-   * Gets Media ETag.
-   *
-   * @return media ETag
-   */
-  String getMediaETag();
-
-  /**
-   * Sets Media ETag.
-   *
-   * @param etag media ETag
-   */
-  void setMediaETag(String etag);
-
-  /**
-   * Gets in-line entry.
-   *
-   * @return in-line entry.
-   */
-  Entry getInlineEntry();
-
-  /**
-   * Sets in-line entry.
-   *
-   * @param entry entry.
-   */
-  void setInlineEntry(Entry entry);
-
-  /**
-   * Gets in-line feed.
-   *
-   * @return in-line feed.
-   */
-  Feed getInlineFeed();
-
-  /**
-   * Sets in-line feed.
-   *
-   * @param feed feed.
-   */
-  void setInlineFeed(Feed feed);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/NullValue.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/NullValue.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/NullValue.java
deleted file mode 100644
index 5df0509..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/NullValue.java
+++ /dev/null
@@ -1,26 +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.client.api.data;
-
-public interface NullValue extends Value {
-
-  @Override
-  Void get();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/PrimitiveValue.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/PrimitiveValue.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/PrimitiveValue.java
deleted file mode 100644
index 6d0636b..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/PrimitiveValue.java
+++ /dev/null
@@ -1,25 +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.client.api.data;
-
-public interface PrimitiveValue extends Value {
-
-  @Override
-  String get();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Property.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Property.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Property.java
deleted file mode 100644
index d4112d9..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Property.java
+++ /dev/null
@@ -1,34 +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.client.api.data;
-
-public interface Property {
-
-  String getName();
-
-  void setName(String name);
-
-  String getType();
-
-  void setType(String type);
-
-  Value getValue();
-
-  void setValue(Value value);
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Value.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Value.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Value.java
deleted file mode 100644
index 275fd9d..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/Value.java
+++ /dev/null
@@ -1,44 +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.client.api.data;
-
-public interface Value {
-
-  boolean isNull();
-
-  boolean isSimple();
-
-  boolean isGeospatial();
-
-  boolean isComplex();
-
-  boolean isCollection();
-
-  Object get();
-
-  NullValue asNull();
-
-  PrimitiveValue asSimple();
-
-  GeospatialValue asGeospatial();
-
-  ComplexValue asComplex();
-
-  CollectionValue asCollection();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/data/v3/LinkCollection.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/v3/LinkCollection.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/data/v3/LinkCollection.java
deleted file mode 100644
index dfcaa35..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/data/v3/LinkCollection.java
+++ /dev/null
@@ -1,52 +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.client.api.data.v3;
-
-import java.net.URI;
-import java.util.List;
-
-/**
- * REST resource for an <tt>ODataLinkCollection</tt>.
- *
- * @see org.apache.olingo.client.api.domain.ODataLinkCollection
- */
-public interface LinkCollection {
-
-  /**
-   * Smart management of different JSON format produced by OData services when
-   * <tt>$links</tt> is a single or a collection property.
-   *
-   * @return list of URIs for <tt>$links</tt>
-   */
-  List<URI> getLinks();
-
-  /**
-   * Sets next link.
-   *
-   * @param next next link.
-   */
-  void setNext(final URI next);
-
-  /**
-   * Gets next link if exists.
-   *
-   * @return next link if exists; null otherwise.
-   */
-  URI getNext();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
index 8c1db4d..9d720bf 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
@@ -29,8 +29,8 @@ import java.util.NoSuchElementException;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.olingo.client.api.CommonODataClient;
-import org.apache.olingo.client.api.Constants;
-import org.apache.olingo.client.api.data.Entry;
+import org.apache.olingo.commons.api.Constants;
+import org.apache.olingo.commons.api.data.Entry;
 import org.apache.olingo.commons.api.format.ODataPubFormat;
 import org.apache.olingo.commons.api.domain.ODataEntity;
 import org.apache.olingo.commons.api.domain.ODataEntitySet;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataBinder.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataBinder.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataBinder.java
index 8dd7232..38fe16f 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataBinder.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataBinder.java
@@ -20,10 +20,10 @@ package org.apache.olingo.client.api.op;
 
 import java.io.Serializable;
 import java.net.URI;
-import org.apache.olingo.client.api.data.Entry;
-import org.apache.olingo.client.api.data.Feed;
-import org.apache.olingo.client.api.data.Link;
-import org.apache.olingo.client.api.data.Property;
+import org.apache.olingo.commons.api.data.Entry;
+import org.apache.olingo.commons.api.data.Feed;
+import org.apache.olingo.commons.api.data.Link;
+import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.client.api.data.ServiceDocument;
 import org.apache.olingo.commons.api.domain.ODataEntity;
 import org.apache.olingo.commons.api.domain.ODataEntitySet;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataDeserializer.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataDeserializer.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataDeserializer.java
index 6828b44..5b01fa3 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataDeserializer.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/CommonODataDeserializer.java
@@ -20,10 +20,10 @@ package org.apache.olingo.client.api.op;
 
 import java.io.InputStream;
 import java.io.Serializable;
-import org.apache.olingo.client.api.data.Entry;
+import org.apache.olingo.commons.api.data.Entry;
 import org.apache.olingo.commons.api.domain.ODataError;
-import org.apache.olingo.client.api.data.Feed;
-import org.apache.olingo.client.api.data.Property;
+import org.apache.olingo.commons.api.data.Feed;
+import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.client.api.data.ServiceDocument;
 import org.apache.olingo.client.api.edm.xml.XMLMetadata;
 import org.apache.olingo.commons.api.format.ODataFormat;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/op/ODataSerializer.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/ODataSerializer.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/ODataSerializer.java
index 0734586..811a07b 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/ODataSerializer.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/ODataSerializer.java
@@ -21,10 +21,10 @@ package org.apache.olingo.client.api.op;
 import java.io.OutputStream;
 import java.io.Serializable;
 import java.io.Writer;
-import org.apache.olingo.client.api.data.Entry;
-import org.apache.olingo.client.api.data.Feed;
-import org.apache.olingo.client.api.data.Link;
-import org.apache.olingo.client.api.data.Property;
+import org.apache.olingo.commons.api.data.Entry;
+import org.apache.olingo.commons.api.data.Feed;
+import org.apache.olingo.commons.api.data.Link;
+import org.apache.olingo.commons.api.data.Property;
 import org.apache.olingo.commons.api.format.ODataFormat;
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataBinder.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataBinder.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataBinder.java
index 118a002..6ea90ba 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataBinder.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataBinder.java
@@ -18,7 +18,7 @@
  */
 package org.apache.olingo.client.api.op.v3;
 
-import org.apache.olingo.client.api.data.v3.LinkCollection;
+import org.apache.olingo.commons.api.data.v3.LinkCollection;
 import org.apache.olingo.client.api.domain.v3.ODataLinkCollection;
 import org.apache.olingo.client.api.op.CommonODataBinder;
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataDeserializer.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataDeserializer.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataDeserializer.java
index 99d840d..6c7a2bb 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataDeserializer.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/op/v3/ODataDeserializer.java
@@ -19,7 +19,7 @@
 package org.apache.olingo.client.api.op.v3;
 
 import java.io.InputStream;
-import org.apache.olingo.client.api.data.v3.LinkCollection;
+import org.apache.olingo.commons.api.data.v3.LinkCollection;
 import org.apache.olingo.commons.api.format.ODataFormat;
 import org.apache.olingo.client.api.op.CommonODataDeserializer;
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/pom.xml
----------------------------------------------------------------------
diff --git a/lib/client-core/pom.xml b/lib/client-core/pom.xml
index 9c52285..6039cfd 100644
--- a/lib/client-core/pom.xml
+++ b/lib/client-core/pom.xml
@@ -45,27 +45,6 @@
       <artifactId>olingo-commons-core-incubating</artifactId>
       <version>${project.version}</version>
     </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-databind</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-annotations</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml.jackson.dataformat</groupId>
-      <artifactId>jackson-dataformat-xml</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml</groupId>
-      <artifactId>aalto-xml</artifactId>
-    </dependency>
       
     <dependency>
       <groupId>junit</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
index 6c889e8..b5603fc 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
@@ -32,7 +32,7 @@ public abstract class AbstractODataClient implements CommonODataClient {
 
   private final ODataWriter writer = new ODataWriterImpl(this);
 
-  private final ODataObjectFactory objectFactory = new ODataObjectFactoryImpl(this);
+  private final ODataObjectFactory objectFactory = new ODataObjectFactoryImpl(getServiceVersion());
 
   @Override
   public ODataPrimitiveValueImpl.BuilderImpl getPrimitiveValueBuilder() {

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/ODataRequestImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/ODataRequestImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/ODataRequestImpl.java
index b77b1b7..bec2f65 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/ODataRequestImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/ODataRequestImpl.java
@@ -48,8 +48,8 @@ import org.apache.olingo.commons.api.format.ODataPubFormat;
 import org.apache.olingo.commons.api.format.ODataValueFormat;
 import org.apache.olingo.client.api.http.HttpClientException;
 import org.apache.olingo.client.api.http.HttpMethod;
-import org.apache.olingo.client.core.data.JSONErrorImpl;
-import org.apache.olingo.client.core.data.XMLErrorImpl;
+import org.apache.olingo.commons.core.data.JSONErrorImpl;
+import org.apache.olingo.commons.core.data.XMLErrorImpl;
 import org.apache.olingo.commons.api.domain.ODataError;
 import org.apache.olingo.client.core.communication.header.ODataHeadersImpl;
 import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/ODataBatchUtilities.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/ODataBatchUtilities.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/ODataBatchUtilities.java
index a33f7cb..7474e13 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/ODataBatchUtilities.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/ODataBatchUtilities.java
@@ -32,7 +32,7 @@ import java.util.regex.Pattern;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.LineIterator;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.olingo.client.api.Constants;
+import org.apache.olingo.commons.api.Constants;
 import org.apache.olingo.client.api.ODataBatchConstants;
 import org.apache.olingo.client.api.communication.header.HeaderName;
 import org.apache.olingo.client.api.communication.request.ODataStreamer;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/response/batch/ODataBatchResponseManager.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/response/batch/ODataBatchResponseManager.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/response/batch/ODataBatchResponseManager.java
index a8cfd2d..136e1c1 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/response/batch/ODataBatchResponseManager.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/response/batch/ODataBatchResponseManager.java
@@ -25,7 +25,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.NoSuchElementException;
 import org.apache.commons.io.IOUtils;
-import org.apache.olingo.client.api.Constants;
+import org.apache.olingo.commons.api.Constants;
 import org.apache.olingo.client.api.communication.header.HeaderName;
 import org.apache.olingo.client.api.communication.request.batch.ODataBatchLineIterator;
 import org.apache.olingo.client.api.communication.request.batch.ODataBatchResponseItem;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomDealer.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomDealer.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomDealer.java
deleted file mode 100644
index eb62b44..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomDealer.java
+++ /dev/null
@@ -1,87 +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.client.core.data;
-
-import javax.xml.XMLConstants;
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamWriter;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.olingo.client.api.Constants;
-import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
-
-abstract class AbstractAtomDealer {
-
-  protected static final String TYPE_TEXT = "text";
-
-  protected final ODataServiceVersion version;
-
-  protected final QName etagQName;
-
-  protected final QName inlineQName;
-
-  protected final QName actionQName;
-
-  protected final QName propertiesQName;
-
-  protected final QName typeQName;
-
-  protected final QName nullQName;
-
-  protected final QName elementQName;
-
-  protected final QName countQName;
-
-  protected final QName uriQName;
-  protected final QName nextQName;
-
-  public AbstractAtomDealer(final ODataServiceVersion version) {
-    this.version = version;
-
-    this.etagQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATOM_ATTR_ETAG);
-    this.inlineQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATOM_ELEM_INLINE);
-    this.actionQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATOM_ELEM_ACTION);
-    this.propertiesQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.PROPERTIES);
-    this.typeQName = new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATTR_TYPE);
-    this.nullQName = new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATTR_NULL);
-    this.elementQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_DATASERVICES), Constants.ELEM_ELEMENT);
-    this.countQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA), Constants.ATOM_ELEM_COUNT);
-    this.uriQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_DATASERVICES), Constants.ELEM_URI);
-    this.nextQName =
-            new QName(version.getNamespaceMap().get(ODataServiceVersion.NS_DATASERVICES), Constants.NEXT_LINK_REL);
-  }
-
-  protected void namespaces(final XMLStreamWriter writer) throws XMLStreamException {
-    writer.writeNamespace(StringUtils.EMPTY, Constants.NS_ATOM);
-    writer.writeNamespace(XMLConstants.XML_NS_PREFIX, XMLConstants.XML_NS_URI);
-    writer.writeNamespace(Constants.PREFIX_METADATA, version.getNamespaceMap().get(ODataServiceVersion.NS_METADATA));
-    writer.writeNamespace(
-            Constants.PREFIX_DATASERVICES, version.getNamespaceMap().get(ODataServiceVersion.NS_DATASERVICES));
-    writer.writeNamespace(Constants.PREFIX_GML, Constants.NS_GML);
-    writer.writeNamespace(Constants.PREFIX_GEORSS, Constants.NS_GEORSS);
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomObject.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomObject.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomObject.java
deleted file mode 100644
index 76004d1..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractAtomObject.java
+++ /dev/null
@@ -1,78 +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.client.core.data;
-
-import com.fasterxml.jackson.databind.util.ISO8601DateFormat;
-import java.net.URI;
-import java.text.ParseException;
-import java.util.Date;
-
-abstract class AbstractAtomObject extends AbstractPayloadObject {
-
-  private static final long serialVersionUID = -4391162864875546927L;
-
-  private static final ISO8601DateFormat ISO_DATEFORMAT = new ISO8601DateFormat();
-
-  private URI baseURI;
-
-  private String id;
-
-  private String title;
-
-  private String summary;
-
-  private Date updated;
-
-  public URI getBaseURI() {
-    return baseURI;
-  }
-
-  public void setBaseURI(final String baseURI) {
-    this.baseURI = URI.create(baseURI);
-  }
-
-  public String getId() {
-    return id;
-  }
-
-  public String getTitle() {
-    return title;
-  }
-
-  public String getSummary() {
-    return summary;
-  }
-
-  public Date getUpdated() {
-    return updated;
-  }
-
-  public void setCommonProperty(final String key, final String value) throws ParseException {
-    if ("id".equals(key)) {
-      this.id = value;
-    } else if ("title".equals(key)) {
-      this.title = value;
-    } else if ("summary".equals(key)) {
-      this.summary = value;
-    } else if ("updated".equals(key)) {
-      this.updated = ISO_DATEFORMAT.parse(value);
-    }
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractEntry.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractEntry.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractEntry.java
deleted file mode 100644
index 8b513bf..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractEntry.java
+++ /dev/null
@@ -1,159 +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.client.core.data;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.olingo.client.api.data.Entry;
-import org.apache.olingo.client.api.data.Link;
-import org.apache.olingo.client.api.data.Property;
-import org.apache.olingo.commons.api.domain.ODataOperation;
-
-/**
- * Abstract base for classes implementing an OData entry in Atom and JSON.
- */
-public abstract class AbstractEntry extends AbstractAtomObject implements Entry {
-
-  private static final long serialVersionUID = 2127764552600969783L;
-
-  private String eTag;
-
-  private String type;
-
-  private Link readLink;
-
-  private Link editLink;
-
-  private final List<Link> associationLinks = new ArrayList<Link>();
-
-  private final List<Link> navigationLinks = new ArrayList<Link>();
-
-  private final List<Link> mediaEditLinks = new ArrayList<Link>();
-
-  private final List<ODataOperation> operations = new ArrayList<ODataOperation>();
-
-  private final List<Property> properties = new ArrayList<Property>();
-
-  private String mediaContentSource;
-
-  private String mediaContentType;
-
-  @Override
-  public String getETag() {
-    return eTag;
-  }
-
-  public void setETag(final String eTag) {
-    this.eTag = eTag;
-  }
-
-  @Override
-  public String getType() {
-    return type;
-  }
-
-  @Override
-  public void setType(final String type) {
-    this.type = type;
-  }
-
-  @Override
-  public Link getSelfLink() {
-    return readLink;
-  }
-
-  @Override
-  public void setSelfLink(final Link readLink) {
-    this.readLink = readLink;
-  }
-
-  @Override
-  public Link getEditLink() {
-    return editLink;
-  }
-
-  @Override
-  public void setEditLink(final Link editLink) {
-    this.editLink = editLink;
-  }
-
-  @Override
-  public List<Link> getAssociationLinks() {
-    return associationLinks;
-  }
-
-  @Override
-  public List<Link> getNavigationLinks() {
-    return navigationLinks;
-  }
-
-  @Override
-  public List<Link> getMediaEditLinks() {
-    return mediaEditLinks;
-  }
-
-  @Override
-  public List<ODataOperation> getOperations() {
-    return operations;
-  }
-
-  @Override
-  public List<Property> getProperties() {
-    return properties;
-  }
-
-  @Override
-  public Property getProperty(final String name) {
-    Property result = null;
-
-    for (Property property : properties) {
-      if (name.equals(property.getName())) {
-        result = property;
-      }
-    }
-
-    return result;
-  }
-
-  @Override
-  public String getMediaContentType() {
-    return this.mediaContentType;
-  }
-
-  @Override
-  public void setMediaContentType(final String mediaContentType) {
-    this.mediaContentType = mediaContentType;
-  }
-
-  @Override
-  public String getMediaContentSource() {
-    return this.mediaContentSource;
-  }
-
-  @Override
-  public void setMediaContentSource(final String mediaContentSource) {
-    this.mediaContentSource = mediaContentSource;
-  }
-
-  @Override
-  public boolean isMediaEntry() {
-    return StringUtils.isNotBlank(this.mediaContentSource);
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonDeserializer.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonDeserializer.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonDeserializer.java
deleted file mode 100644
index 4b0ee0e..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonDeserializer.java
+++ /dev/null
@@ -1,176 +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.client.core.data;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import java.util.Iterator;
-import java.util.Map;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.olingo.client.api.Constants;
-import org.apache.olingo.client.api.data.CollectionValue;
-import org.apache.olingo.client.api.data.ComplexValue;
-import org.apache.olingo.client.api.data.Value;
-import org.apache.olingo.commons.api.domain.ODataPropertyType;
-import org.apache.olingo.client.core.edm.EdmTypeInfo;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-
-abstract class AbstractJsonDeserializer<T> extends ODataJacksonDeserializer<T> {
-
-  private JSONGeoValueDeserializer geoDeserializer;
-
-  private JSONGeoValueDeserializer getGeoDeserializer() {
-    if (geoDeserializer == null) {
-      geoDeserializer = new JSONGeoValueDeserializer(client.getServiceVersion());
-    }
-    return geoDeserializer;
-  }
-
-  protected EdmPrimitiveTypeKind getPrimitiveType(final JsonNode node) {
-    EdmPrimitiveTypeKind result = EdmPrimitiveTypeKind.String;
-
-    if (node.isIntegralNumber()) {
-      result = EdmPrimitiveTypeKind.Int32;
-    } else if (node.isBoolean()) {
-      result = EdmPrimitiveTypeKind.Boolean;
-    } else if (node.isFloatingPointNumber()) {
-      result = EdmPrimitiveTypeKind.Double;
-    }
-
-    return result;
-  }
-
-  private ODataPropertyType guessPropertyType(final JsonNode node) {
-    ODataPropertyType type = null;
-
-    if (node.isValueNode() || node.isNull()) {
-      type = ODataPropertyType.PRIMITIVE;
-    } else if (node.isArray()) {
-      type = ODataPropertyType.COLLECTION;
-    } else if (node.isObject()) {
-      type = ODataPropertyType.COMPLEX;
-    } else {
-      type = ODataPropertyType.EMPTY;
-    }
-
-    return type;
-  }
-
-  private Value fromPrimitive(final JsonNode node, final EdmTypeInfo typeInfo) {
-    Value value = null;
-
-    if (node.isNull()) {
-      value = new NullValueImpl();
-    } else {
-      if (typeInfo != null && typeInfo.getPrimitiveTypeKind().isGeospatial()) {
-        value = new GeospatialValueImpl(getGeoDeserializer().deserialize(node, typeInfo));
-      } else {
-        value = new PrimitiveValueImpl(node.asText());
-      }
-    }
-
-    return value;
-  }
-
-  private ComplexValue fromComplex(final JsonNode node) {
-    final ComplexValue value = new ComplexValueImpl();
-
-    String type = null;
-    for (final Iterator<Map.Entry<String, JsonNode>> itor = node.fields(); itor.hasNext();) {
-      final Map.Entry<String, JsonNode> field = itor.next();
-
-      if (type == null && field.getKey().endsWith(Constants.JSON_TYPE_SUFFIX)) {
-        type = field.getValue().asText();
-      } else {
-        final JSONPropertyImpl property = new JSONPropertyImpl();
-        property.setName(field.getKey());
-        property.setType(type);
-        type = null;
-
-        value(property, field.getValue());
-        value.get().add(property);
-      }
-    }
-
-    return value;
-  }
-
-  private CollectionValue fromCollection(final Iterator<JsonNode> nodeItor, final EdmTypeInfo typeInfo) {
-    final CollectionValueImpl value = new CollectionValueImpl();
-
-    final EdmTypeInfo type = typeInfo == null
-            ? null
-            : new EdmTypeInfo.Builder().setTypeExpression(typeInfo.getFullQualifiedName().toString()).build();
-
-    while (nodeItor.hasNext()) {
-      final JsonNode child = nodeItor.next();
-
-      if (child.isValueNode()) {
-        value.get().add(fromPrimitive(child, type));
-      } else if (child.isContainerNode()) {
-        if (child.has(Constants.JSON_TYPE)) {
-          ((ObjectNode) child).remove(Constants.JSON_TYPE);
-        }
-        value.get().add(fromComplex(child));
-      }
-    }
-
-    return value;
-  }
-
-  protected void value(final JSONPropertyImpl property, final JsonNode node) {
-    final EdmTypeInfo typeInfo = StringUtils.isBlank(property.getType())
-            ? null
-            : new EdmTypeInfo.Builder().setTypeExpression(property.getType()).build();
-
-    final ODataPropertyType propType = typeInfo == null
-            ? guessPropertyType(node)
-            : typeInfo.isCollection()
-            ? ODataPropertyType.COLLECTION
-            : typeInfo.isPrimitiveType()
-            ? ODataPropertyType.PRIMITIVE
-            : ODataPropertyType.COMPLEX;
-
-    switch (propType) {
-      case COLLECTION:
-        property.setValue(fromCollection(node.elements(), typeInfo));
-        break;
-
-      case COMPLEX:
-        if (node.has(Constants.JSON_TYPE)) {
-          property.setType(node.get(Constants.JSON_TYPE).asText());
-          ((ObjectNode) node).remove(Constants.JSON_TYPE);
-        }
-        property.setValue(fromComplex(node));
-        break;
-
-      case PRIMITIVE:
-        if (property.getType() == null) {
-          property.setType(getPrimitiveType(node).getFullQualifiedName().toString());
-        }
-        property.setValue(fromPrimitive(node, typeInfo));
-        break;
-
-      case EMPTY:
-      default:
-        property.setValue(new PrimitiveValueImpl(StringUtils.EMPTY));
-    }
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonSerializer.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonSerializer.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonSerializer.java
deleted file mode 100644
index 7427845..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractJsonSerializer.java
+++ /dev/null
@@ -1,94 +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.client.core.data;
-
-import com.fasterxml.jackson.core.JsonGenerator;
-import java.io.IOException;
-import org.apache.commons.lang3.ArrayUtils;
-import org.apache.commons.lang3.BooleanUtils;
-import org.apache.commons.lang3.math.NumberUtils;
-import org.apache.olingo.client.api.data.CollectionValue;
-import org.apache.olingo.client.api.data.Property;
-import org.apache.olingo.client.api.data.Value;
-import org.apache.olingo.client.core.edm.EdmTypeInfo;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-
-abstract class AbstractJsonSerializer<T> extends ODataJacksonSerializer<T> {
-
-  private static final EdmPrimitiveTypeKind[] NUMBER_TYPES = {
-    EdmPrimitiveTypeKind.Byte, EdmPrimitiveTypeKind.SByte,
-    EdmPrimitiveTypeKind.Single, EdmPrimitiveTypeKind.Double,
-    EdmPrimitiveTypeKind.Int16, EdmPrimitiveTypeKind.Int32, EdmPrimitiveTypeKind.Int64
-  };
-
-  private final JSONGeoValueSerializer geoSerializer = new JSONGeoValueSerializer();
-
-  private void collection(final JsonGenerator jgen, final String itemType, final CollectionValue value)
-          throws IOException {
-
-    jgen.writeStartArray();
-    for (Value item : value.get()) {
-      value(jgen, itemType, item);
-    }
-    jgen.writeEndArray();
-  }
-
-  private void value(final JsonGenerator jgen, final String type, final Value value) throws IOException {
-    final EdmTypeInfo typeInfo = type == null
-            ? null
-            : new EdmTypeInfo.Builder().setTypeExpression(type).build();
-
-    if (value.isNull()) {
-      jgen.writeNull();
-    } else if (value.isSimple()) {
-      final boolean isNumber = typeInfo == null
-              ? NumberUtils.isNumber(value.asSimple().get())
-              : ArrayUtils.contains(NUMBER_TYPES, typeInfo.getPrimitiveTypeKind());
-      final boolean isBoolean = typeInfo == null
-              ? (value.asSimple().get().equalsIgnoreCase(Boolean.TRUE.toString())
-              || value.asSimple().get().equalsIgnoreCase(Boolean.FALSE.toString()))
-              : typeInfo.getPrimitiveTypeKind() == EdmPrimitiveTypeKind.Boolean;
-
-      if (isNumber) {
-        jgen.writeNumber(value.asSimple().get());
-      } else if (isBoolean) {
-        jgen.writeBoolean(BooleanUtils.toBoolean(value.asSimple().get()));
-      } else {
-        jgen.writeString(value.asSimple().get());
-      }
-    } else if (value.isGeospatial()) {
-      jgen.writeStartObject();
-      geoSerializer.serialize(jgen, value.asGeospatial().get());
-      jgen.writeEndObject();
-    } else if (value.isCollection()) {
-      collection(jgen, typeInfo == null ? null : typeInfo.getFullQualifiedName().toString(), value.asCollection());
-    } else if (value.isComplex()) {
-      jgen.writeStartObject();
-      for (Property property : value.asComplex().get()) {
-        property(jgen, property, property.getName());
-      }
-      jgen.writeEndObject();
-    }
-  }
-
-  protected void property(final JsonGenerator jgen, final Property property, final String name) throws IOException {
-    jgen.writeFieldName(name);
-    value(jgen, property.getType(), property.getValue());
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPayloadObject.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPayloadObject.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPayloadObject.java
deleted file mode 100644
index b707c49..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPayloadObject.java
+++ /dev/null
@@ -1,48 +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.client.core.data;
-
-import java.io.Serializable;
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-
-/**
- * Abstract representation of a payload (Atom, JSON) object.
- */
-public abstract class AbstractPayloadObject implements Serializable {
-
-  private static final long serialVersionUID = 1634654241914156675L;
-
-  @Override
-  public boolean equals(final Object obj) {
-    return EqualsBuilder.reflectionEquals(this, obj);
-  }
-
-  @Override
-  public int hashCode() {
-    return HashCodeBuilder.reflectionHashCode(this);
-  }
-
-  @Override
-  public String toString() {
-    return ReflectionToStringBuilder.toString(this, ToStringStyle.MULTI_LINE_STYLE);
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/fac84b3e/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPropertyImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPropertyImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPropertyImpl.java
deleted file mode 100644
index 3e92ac4..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/data/AbstractPropertyImpl.java
+++ /dev/null
@@ -1,80 +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.client.core.data;
-
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import org.apache.olingo.client.api.data.Property;
-import org.apache.olingo.client.api.data.Value;
-
-public abstract class AbstractPropertyImpl implements Property {
-
-  private String name;
-
-  private String type;
-
-  private Value value;
-
-  @Override
-  public String getName() {
-    return name;
-  }
-
-  @Override
-  public void setName(final String name) {
-    this.name = name;
-  }
-
-  @Override
-  public String getType() {
-    return type;
-  }
-
-  @Override
-  public void setType(final String type) {
-    this.type = type;
-  }
-
-  @Override
-  public Value getValue() {
-    return value;
-  }
-
-  @Override
-  public void setValue(final Value value) {
-    this.value = value;
-  }
-
-  @Override
-  public boolean equals(final Object obj) {
-    return EqualsBuilder.reflectionEquals(this, obj);
-  }
-
-  @Override
-  public int hashCode() {
-    return HashCodeBuilder.reflectionHashCode(this);
-  }
-
-  @Override
-  public String toString() {
-    return ReflectionToStringBuilder.toString(this, ToStringStyle.MULTI_LINE_STYLE);
-  }
-}