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/04/01 16:18:30 UTC
[03/51] [abbrv] git commit: [OLINGO-194] geospatial literals
[OLINGO-194] geospatial literals
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/76513508
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/76513508
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/76513508
Branch: refs/heads/master
Commit: 7651350846cca10d3a03655d95da4acdb8ee8af5
Parents: c1b8976
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Wed Mar 26 16:44:36 2014 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Wed Mar 26 16:44:36 2014 +0100
----------------------------------------------------------------------
.../olingo/client/api/CommonODataClient.java | 3 -
.../olingo/client/core/AbstractODataClient.java | 8 +-
.../cud/ODataValueUpdateRequestImpl.java | 2 +-
.../request/retrieve/ODataValueRequestImpl.java | 2 +-
.../core/domain/ODataGeospatialValueImpl.java | 130 -----
.../core/domain/ODataPrimitiveValueImpl.java | 177 ------
.../olingo/client/core/edm/EdmEnumTypeImpl.java | 4 +-
.../client/core/edm/EdmTypeDefinitionImpl.java | 2 +-
.../client/core/op/AbstractODataBinder.java | 31 +-
.../apache/olingo/client/core/uri/URIUtils.java | 42 +-
.../client/core/AbstractPrimitiveTest.java | 62 +--
.../client/core/it/v3/OpenTypeTestITCase.java | 14 +-
.../olingo/client/core/v3/EntityTest.java | 17 +-
.../olingo/client/core/v3/MetadataTest.java | 4 +-
.../client/core/v3/PrimitiveValueTest.java | 77 ++-
.../olingo/client/core/v4/MetadataTest.java | 4 +-
.../olingo/commons/api/data/GeoUtils.java | 9 +-
.../commons/api/domain/AbstractODataValue.java | 20 -
.../api/domain/ODataGeospatialValue.java | 57 --
.../commons/api/domain/ODataObjectFactory.java | 9 -
.../commons/api/domain/ODataProperty.java | 18 -
.../olingo/commons/api/domain/ODataValue.java | 14 -
.../commons/api/edm/EdmGeospatialType.java | 34 --
.../commons/api/edm/geo/ComposedGeospatial.java | 22 +-
.../olingo/commons/api/edm/geo/Geospatial.java | 36 +-
.../api/edm/geo/GeospatialCollection.java | 15 +-
.../olingo/commons/api/edm/geo/LineString.java | 4 +-
.../commons/api/edm/geo/MultiLineString.java | 8 +-
.../olingo/commons/api/edm/geo/MultiPoint.java | 4 +-
.../commons/api/edm/geo/MultiPolygon.java | 8 +-
.../olingo/commons/api/edm/geo/Point.java | 8 +-
.../olingo/commons/api/edm/geo/Polygon.java | 18 +-
.../core/data/AtomGeoValueDeserializer.java | 46 +-
.../core/data/AtomGeoValueSerializer.java | 4 +-
.../core/data/JSONGeoValueDeserializer.java | 73 ++-
.../core/data/JSONGeoValueSerializer.java | 8 +-
.../core/domain/ODataPrimitiveValueImpl.java | 171 ++++++
.../commons/core/edm/AbstractEdmParameter.java | 2 +-
.../AbstractEdmGeospatialType.java | 76 ---
.../primitivetype/AbstractGeospatialType.java | 539 +++++++++++++++++++
.../core/edm/primitivetype/EdmGeography.java | 19 +-
.../primitivetype/EdmGeographyCollection.java | 33 +-
.../primitivetype/EdmGeographyLineString.java | 32 +-
.../EdmGeographyMultiLineString.java | 33 +-
.../primitivetype/EdmGeographyMultiPoint.java | 33 +-
.../primitivetype/EdmGeographyMultiPolygon.java | 32 +-
.../edm/primitivetype/EdmGeographyPoint.java | 29 +-
.../edm/primitivetype/EdmGeographyPolygon.java | 32 +-
.../core/edm/primitivetype/EdmGeometry.java | 19 +-
.../primitivetype/EdmGeometryCollection.java | 32 +-
.../primitivetype/EdmGeometryLineString.java | 32 +-
.../EdmGeometryMultiLineString.java | 33 +-
.../primitivetype/EdmGeometryMultiPoint.java | 33 +-
.../primitivetype/EdmGeometryMultiPolygon.java | 33 +-
.../edm/primitivetype/EdmGeometryPoint.java | 28 +-
.../edm/primitivetype/EdmGeometryPolygon.java | 32 +-
.../primitivetype/EdmPrimitiveTypeFactory.java | 31 +-
.../commons/core/edm/primitivetype/EdmTime.java | 5 +
.../commons/core/op/ODataObjectFactoryImpl.java | 6 -
.../primitivetype/CommonPrimitiveTypeTest.java | 170 +++---
.../core/edm/primitivetype/EdmBinaryTest.java | 2 +-
.../core/edm/primitivetype/EdmBooleanTest.java | 2 +-
.../core/edm/primitivetype/EdmByteTest.java | 2 +-
.../core/edm/primitivetype/EdmDateTest.java | 2 +-
.../primitivetype/EdmDateTimeOffsetTest.java | 2 +-
.../core/edm/primitivetype/EdmDecimalTest.java | 16 +-
.../core/edm/primitivetype/EdmDoubleTest.java | 14 +-
.../core/edm/primitivetype/EdmDurationTest.java | 2 +-
.../core/edm/primitivetype/EdmGeoTest.java | 174 ++++++
.../core/edm/primitivetype/EdmGuidTest.java | 2 +-
.../core/edm/primitivetype/EdmInt16Test.java | 6 +-
.../core/edm/primitivetype/EdmInt32Test.java | 8 +-
.../core/edm/primitivetype/EdmInt64Test.java | 10 +-
.../core/edm/primitivetype/EdmNullTest.java | 20 +-
.../core/edm/primitivetype/EdmSByteTest.java | 2 +-
.../core/edm/primitivetype/EdmSingleTest.java | 12 +-
.../core/edm/primitivetype/EdmStringTest.java | 2 +-
.../edm/primitivetype/EdmTimeOfDayTest.java | 2 +-
.../core/edm/primitivetype/UInt7Test.java | 2 +-
.../core/edm/provider/EdmEnumTypeImpl.java | 4 +-
.../edm/provider/EdmTypeDefinitionImpl.java | 2 +-
.../core/uri/parser/UriParseTreeVisitor.java | 6 +-
.../server/core/edm/provider/EdmEnumTest.java | 2 +-
.../edm/provider/EdmFunctionImportImplTest.java | 2 +-
.../edm/provider/EdmReturnTypeImplTest.java | 4 +-
.../edm/provider/EdmTypeDefinitionImplTest.java | 2 +-
.../server/core/uri/UriResourceImplTest.java | 4 +-
87 files changed, 1692 insertions(+), 1095 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
index e863d0d..e811744 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
@@ -26,7 +26,6 @@ import org.apache.olingo.client.api.communication.request.retrieve.CommonRetriev
import org.apache.olingo.client.api.communication.request.streamed.CommonStreamedRequestFactory;
import org.apache.olingo.client.api.op.ClientODataDeserializer;
import org.apache.olingo.commons.api.domain.ODataObjectFactory;
-import org.apache.olingo.commons.api.domain.ODataGeospatialValue;
import org.apache.olingo.commons.api.domain.ODataPrimitiveValue;
import org.apache.olingo.client.api.op.CommonODataBinder;
import org.apache.olingo.client.api.op.CommonODataReader;
@@ -50,8 +49,6 @@ public interface CommonODataClient {
ODataPrimitiveValue.Builder getPrimitiveValueBuilder();
- ODataGeospatialValue.Builder getGeospatialValueBuilder();
-
ODataSerializer getSerializer();
ClientODataDeserializer getDeserializer();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/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 4197094..80c8d16 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
@@ -21,8 +21,7 @@ package org.apache.olingo.client.core;
import org.apache.olingo.client.api.CommonODataClient;
import org.apache.olingo.commons.api.domain.ODataObjectFactory;
import org.apache.olingo.client.api.op.ODataWriter;
-import org.apache.olingo.client.core.domain.ODataGeospatialValueImpl;
-import org.apache.olingo.client.core.domain.ODataPrimitiveValueImpl;
+import org.apache.olingo.commons.core.domain.ODataPrimitiveValueImpl;
import org.apache.olingo.commons.core.op.ODataObjectFactoryImpl;
import org.apache.olingo.client.core.op.ODataWriterImpl;
@@ -40,11 +39,6 @@ public abstract class AbstractODataClient implements CommonODataClient {
}
@Override
- public ODataGeospatialValueImpl.BuilderImpl getGeospatialValueBuilder() {
- return new ODataGeospatialValueImpl.BuilderImpl();
- }
-
- @Override
public ODataWriter getWriter() {
return writer;
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/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 d424d62..5876f49 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
@@ -35,7 +35,7 @@ import org.apache.olingo.client.api.http.HttpMethod;
import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
import org.apache.olingo.client.core.communication.response.AbstractODataResponse;
-import org.apache.olingo.client.core.domain.ODataPrimitiveValueImpl;
+import org.apache.olingo.commons.core.domain.ODataPrimitiveValueImpl;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
/**
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/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 345bc58..2d7feed 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
@@ -28,7 +28,7 @@ import org.apache.olingo.client.api.communication.response.ODataRetrieveResponse
import org.apache.olingo.commons.api.domain.ODataPrimitiveValue;
import org.apache.olingo.commons.api.format.ODataValueFormat;
import org.apache.olingo.client.api.http.HttpClientException;
-import org.apache.olingo.client.core.domain.ODataPrimitiveValueImpl;
+import org.apache.olingo.commons.core.domain.ODataPrimitiveValueImpl;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
/**
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataGeospatialValueImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataGeospatialValueImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataGeospatialValueImpl.java
deleted file mode 100644
index daa63a3..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataGeospatialValueImpl.java
+++ /dev/null
@@ -1,130 +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.domain;
-
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.olingo.commons.api.domain.AbstractODataValue;
-import org.apache.olingo.commons.api.domain.ODataGeospatialValue;
-import org.apache.olingo.commons.api.edm.EdmGeospatialType;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.edm.geo.Geospatial;
-import org.apache.olingo.commons.core.edm.primitivetype.EdmPrimitiveTypeFactory;
-
-public class ODataGeospatialValueImpl extends AbstractODataValue implements ODataGeospatialValue {
-
- private static final long serialVersionUID = 8277433906326348952L;
-
- public static class BuilderImpl implements Builder {
-
- private final ODataGeospatialValueImpl instance;
-
- public BuilderImpl() {
- this.instance = new ODataGeospatialValueImpl();
- }
-
- @Override
- public BuilderImpl setType(final EdmPrimitiveTypeKind type) {
- if (type != null && !type.isGeospatial()) {
- throw new IllegalArgumentException("Don't use this for non-geospatial types");
- }
- if (type == EdmPrimitiveTypeKind.Geography || type == EdmPrimitiveTypeKind.Geometry) {
- throw new IllegalArgumentException(
- type + "is not an instantiable type. "
- + "An entity can declare a property to be of type Geometry. "
- + "An instance of an entity MUST NOT have a value of type Geometry. "
- + "Each value MUST be of some subtype.");
- }
-
- if (type != null) {
- this.instance.typeKind = type;
- this.instance.type = EdmPrimitiveTypeFactory.getGeoInstance(type);
- }
-
- return this;
- }
-
- @Override
- public BuilderImpl setValue(final Geospatial value) {
- this.instance.value = value;
- if (value != null) {
- setType(value.getEdmPrimitiveTypeKind());
- }
- return this;
- }
-
- @Override
- public ODataGeospatialValueImpl build() {
- if (this.instance.type == null) {
- throw new IllegalArgumentException("Must provide geospatial type");
- }
- if (this.instance.value == null) {
- throw new IllegalArgumentException("Must provide geospatial value");
- }
-
- return this.instance;
- }
- }
-
- /**
- * Type kind.
- */
- private EdmPrimitiveTypeKind typeKind;
-
- /**
- * Type.
- */
- private EdmGeospatialType type;
-
- /**
- * Value.
- */
- private Geospatial value;
-
- @Override
- public EdmPrimitiveTypeKind getTypeKind() {
- return typeKind;
- }
-
- @Override
- public EdmGeospatialType getType() {
- return type;
- }
-
- @Override
- public Geospatial toValue() {
- return value;
- }
-
- @Override
- public <T extends Geospatial> T toCastValue(final Class<T> reference) {
- return reference.cast(this.value);
- }
-
- @Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
- }
-
- @Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataPrimitiveValueImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataPrimitiveValueImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataPrimitiveValueImpl.java
deleted file mode 100644
index a15dd76..0000000
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/domain/ODataPrimitiveValueImpl.java
+++ /dev/null
@@ -1,177 +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.domain;
-
-import java.sql.Timestamp;
-import java.util.Calendar;
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.olingo.commons.api.Constants;
-import org.apache.olingo.commons.api.domain.AbstractODataValue;
-import org.apache.olingo.commons.api.domain.ODataPrimitiveValue;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveType;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
-import org.apache.olingo.commons.core.edm.primitivetype.EdmPrimitiveTypeFactory;
-
-public class ODataPrimitiveValueImpl extends AbstractODataValue implements ODataPrimitiveValue {
-
- private static final long serialVersionUID = 8889282662298376036L;
-
- public static class BuilderImpl implements Builder {
-
- private final ODataServiceVersion version;
-
- private final ODataPrimitiveValueImpl instance;
-
- public BuilderImpl(final ODataServiceVersion version) {
- this.version = version;
- this.instance = new ODataPrimitiveValueImpl();
- }
-
- @Override
- public BuilderImpl setType(final EdmPrimitiveTypeKind type) {
- if (type != null && !type.getSupportedVersions().contains(version)) {
- throw new IllegalArgumentException(String.format(
- "Type %s not supported by OData version %s", type.toString(), version));
- }
- if (type == EdmPrimitiveTypeKind.Stream) {
- throw new IllegalArgumentException(String.format(
- "Cannot build a primitive value for %s", EdmPrimitiveTypeKind.Stream.toString()));
- }
- if (type != null && type.isGeospatial()) {
- throw new IllegalArgumentException("Don't use this for geospatial types");
- }
-
- this.instance.typeKind = type == null ? EdmPrimitiveTypeKind.String : type;
- this.instance.type = EdmPrimitiveTypeFactory.getNonGeoInstance(this.instance.typeKind);
-
- return this;
- }
-
- @Override
- public BuilderImpl setText(final String text) {
- this.instance.text = text;
- return this;
- }
-
- @Override
- public BuilderImpl setValue(final Object value) {
- this.instance.value = value;
- return this;
- }
-
- @Override
- public ODataPrimitiveValueImpl build() {
- if (this.instance.text == null && this.instance.value == null) {
- throw new IllegalArgumentException("Must provide either text or value");
- }
- if (this.instance.text != null && this.instance.value != null) {
- throw new IllegalArgumentException("Cannot provide both text and value");
- }
-
- if (this.instance.type == null) {
- setType(EdmPrimitiveTypeKind.String);
- }
-
- if (this.instance.text != null) {
- final Class<?> returnType = this.instance.type.getDefaultType().isAssignableFrom(Calendar.class)
- ? Timestamp.class : this.instance.type.getDefaultType();
- try {
- // TODO: when Edm is available, set facets when calling this method
- this.instance.value = this.instance.type.valueOfString(
- this.instance.text, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null,
- returnType);
- } catch (EdmPrimitiveTypeException e) {
- throw new IllegalArgumentException(e);
- }
- }
- if (this.instance.value != null) {
- try {
- // TODO: when Edm is available, set facets when calling this method
- this.instance.text = this.instance.type.valueToString(
- this.instance.value, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null);
- } catch (EdmPrimitiveTypeException e) {
- throw new IllegalArgumentException(e);
- }
- }
-
- return this.instance;
- }
- }
-
- /**
- * Type kind.
- */
- private EdmPrimitiveTypeKind typeKind;
-
- /**
- * Type.
- */
- private EdmPrimitiveType type;
-
- /**
- * Text value.
- */
- private String text;
-
- /**
- * Actual value.
- */
- private Object value;
-
- @Override
- public EdmPrimitiveTypeKind getTypeKind() {
- return typeKind;
- }
-
- @Override
- public EdmPrimitiveType getType() {
- return type;
- }
-
- @Override
- public Object toValue() {
- return this.value;
- }
-
- @Override
- public <T> T toCastValue(final Class<T> reference) throws EdmPrimitiveTypeException {
- // TODO: when Edm is available, set facets when calling this method
- return type.valueOfString(this.text, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null,
- reference);
- }
-
- @Override
- public String toString() {
- return this.text;
- }
-
- @Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
- }
-
- @Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmEnumTypeImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmEnumTypeImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmEnumTypeImpl.java
index 05cfa27..bba016b 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmEnumTypeImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmEnumTypeImpl.java
@@ -62,9 +62,9 @@ public class EdmEnumTypeImpl extends AbstractEdmEnumType implements EdmEnumType
super(edm, fqn, xmlEnumType.isFlags());
if (xmlEnumType.getUnderlyingType() == null) {
- this.underlyingType = EdmPrimitiveTypeFactory.getNonGeoInstance(EdmPrimitiveTypeKind.Int32);
+ this.underlyingType = EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Int32);
} else {
- this.underlyingType = EdmPrimitiveTypeFactory.getNonGeoInstance(
+ this.underlyingType = EdmPrimitiveTypeFactory.getInstance(
EdmPrimitiveTypeKind.valueOfFQN(version, xmlEnumType.getUnderlyingType()));
if (!ArrayUtils.contains(VALID_UNDERLYING_TYPES, this.underlyingType.getKind())) {
throw new EdmException("Not allowed as underlying type: " + this.underlyingType.getKind());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmTypeDefinitionImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmTypeDefinitionImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmTypeDefinitionImpl.java
index 199d61e..3c146ec 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmTypeDefinitionImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/EdmTypeDefinitionImpl.java
@@ -41,7 +41,7 @@ public class EdmTypeDefinitionImpl extends AbstractEdmTypeDefinition implements
super(edm, typeDefinitionName);
this.typeDefinition = typeDefinition;
try {
- this.edmPrimitiveTypeInstance = EdmPrimitiveTypeFactory.getNonGeoInstance(
+ this.edmPrimitiveTypeInstance = EdmPrimitiveTypeFactory.getInstance(
EdmPrimitiveTypeKind.valueOfFQN(version, typeDefinition.getUnderlyingType()));
} catch (IllegalArgumentException e) {
throw new EdmException("Invalid underlying type: " + typeDefinition.getUnderlyingType(), e);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/op/AbstractODataBinder.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/op/AbstractODataBinder.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/op/AbstractODataBinder.java
index 44e7ad4..746b016 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/op/AbstractODataBinder.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/op/AbstractODataBinder.java
@@ -18,19 +18,20 @@
*/
package org.apache.olingo.client.core.op;
-import org.apache.olingo.commons.core.op.ResourceFactory;
import java.io.StringWriter;
import java.net.URI;
import java.util.Iterator;
import org.apache.commons.lang3.StringUtils;
import org.apache.olingo.client.api.CommonODataClient;
+import org.apache.olingo.client.api.data.ServiceDocument;
+import org.apache.olingo.client.api.data.ServiceDocumentItem;
+import org.apache.olingo.client.api.op.CommonODataBinder;
+import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.commons.api.Constants;
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.client.api.data.ServiceDocumentItem;
import org.apache.olingo.commons.api.data.Value;
import org.apache.olingo.commons.api.domain.ODataCollectionValue;
import org.apache.olingo.commons.api.domain.ODataComplexValue;
@@ -43,8 +44,9 @@ import org.apache.olingo.commons.api.domain.ODataOperation;
import org.apache.olingo.commons.api.domain.ODataProperty;
import org.apache.olingo.commons.api.domain.ODataServiceDocument;
import org.apache.olingo.commons.api.domain.ODataValue;
+import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
+import org.apache.olingo.commons.api.edm.geo.Geospatial;
import org.apache.olingo.commons.api.format.ODataPubFormat;
-import org.apache.olingo.client.api.op.CommonODataBinder;
import org.apache.olingo.commons.core.data.CollectionValueImpl;
import org.apache.olingo.commons.core.data.ComplexValueImpl;
import org.apache.olingo.commons.core.data.GeospatialValueImpl;
@@ -52,8 +54,7 @@ import org.apache.olingo.commons.core.data.JSONPropertyImpl;
import org.apache.olingo.commons.core.data.LinkImpl;
import org.apache.olingo.commons.core.data.NullValueImpl;
import org.apache.olingo.commons.core.data.PrimitiveValueImpl;
-import org.apache.olingo.client.core.uri.URIUtils;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
+import org.apache.olingo.commons.core.op.ResourceFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -232,9 +233,9 @@ public abstract class AbstractODataBinder implements CommonODataBinder {
if (value == null) {
valueResource = new NullValueImpl();
} else if (value.isPrimitive()) {
- valueResource = new PrimitiveValueImpl(value.asPrimitive().toString());
- } else if (value.isGeospatial()) {
- valueResource = new GeospatialValueImpl(value.asGeospatial().toValue());
+ valueResource = value.asPrimitive().getTypeKind().isGeospatial()
+ ? new GeospatialValueImpl((Geospatial) value.asPrimitive().toValue())
+ : new PrimitiveValueImpl(value.asPrimitive().toString());
} else if (value.isComplex()) {
final ODataComplexValue _value = value.asComplex();
valueResource = new ComplexValueImpl();
@@ -269,7 +270,7 @@ public abstract class AbstractODataBinder implements CommonODataBinder {
}
final URI base = defaultBaseURI == null ? resource.getBaseURI() : defaultBaseURI;
-
+
final URI next = resource.getNext();
final ODataEntitySet entitySet = next == null
@@ -283,7 +284,7 @@ public abstract class AbstractODataBinder implements CommonODataBinder {
for (Entry entryResource : resource.getEntries()) {
entitySet.addEntity(getODataEntity(entryResource));
}
-
+
return entitySet;
}
@@ -311,11 +312,11 @@ public abstract class AbstractODataBinder implements CommonODataBinder {
if (StringUtils.isNotBlank(resource.getETag())) {
entity.setETag(resource.getETag());
}
-
+
if (resource.getEditLink() != null) {
entity.setEditLink(URIUtils.getURI(base, resource.getEditLink().getHref()));
}
-
+
for (Link link : resource.getAssociationLinks()) {
entity.addLink(client.getObjectFactory().newAssociationLink(link.getTitle(), base, link.getHref()));
}
@@ -377,12 +378,12 @@ public abstract class AbstractODataBinder implements CommonODataBinder {
? null
: EdmPrimitiveTypeKind.valueOfFQN(client.getServiceVersion(), resource.getType())).build();
} else if (resource.getValue().isGeospatial()) {
- value = client.getGeospatialValueBuilder().
+ value = client.getPrimitiveValueBuilder().
setValue(resource.getValue().asGeospatial().get()).
setType(resource.getType() == null
|| EdmPrimitiveTypeKind.Geography.getFullQualifiedName().toString().equals(resource.getType())
|| EdmPrimitiveTypeKind.Geometry.getFullQualifiedName().toString().equals(resource.getType())
- ? null
+ ? resource.getValue().asGeospatial().get().getEdmPrimitiveTypeKind()
: EdmPrimitiveTypeKind.valueOfFQN(client.getServiceVersion(), resource.getType())).build();
} else if (resource.getValue().isComplex()) {
value = new ODataComplexValue(resource.getType());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
index 831d0b1..1e0dd5b 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
@@ -41,6 +41,8 @@ import org.apache.olingo.commons.api.edm.EdmFunctionImport;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
+import org.apache.olingo.commons.api.edm.geo.Geospatial;
+import org.apache.olingo.commons.core.edm.primitivetype.EdmBinary;
import org.apache.olingo.commons.core.edm.primitivetype.EdmDate;
import org.apache.olingo.commons.core.edm.primitivetype.EdmDateTime;
import org.apache.olingo.commons.core.edm.primitivetype.EdmDateTimeOffset;
@@ -48,6 +50,7 @@ import org.apache.olingo.commons.core.edm.primitivetype.EdmDecimal;
import org.apache.olingo.commons.core.edm.primitivetype.EdmDouble;
import org.apache.olingo.commons.core.edm.primitivetype.EdmDuration;
import org.apache.olingo.commons.core.edm.primitivetype.EdmInt64;
+import org.apache.olingo.commons.core.edm.primitivetype.EdmPrimitiveTypeFactory;
import org.apache.olingo.commons.core.edm.primitivetype.EdmSingle;
import org.apache.olingo.commons.core.edm.primitivetype.EdmTime;
import org.apache.olingo.commons.core.edm.primitivetype.EdmTimeOfDay;
@@ -172,14 +175,6 @@ public final class URIUtils {
default:
}
- } else {
- switch (typeKind) {
- case Binary:
- result = "binary'";
- break;
-
- default:
- }
}
return result;
@@ -192,7 +187,6 @@ public final class URIUtils {
case Guid:
case DateTime:
case DateTimeOffset:
- case Binary:
result = "'";
break;
@@ -214,14 +208,6 @@ public final class URIUtils {
default:
}
- } else {
- switch (typeKind) {
- case Binary:
- result = "'";
- break;
-
- default:
- }
}
return result;
@@ -280,12 +266,12 @@ public final class URIUtils {
throws UnsupportedEncodingException, EdmPrimitiveTypeException {
return version == ODataServiceVersion.V30
- ? "time'" + URLEncoder.encode(EdmTime.getInstance().
- valueToString(duration, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null),
- Constants.UTF8) + "'"
- : "duration'" + URLEncoder.encode(EdmDuration.getInstance().
- valueToString(duration, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null),
- Constants.UTF8) + "'";
+ ? EdmTime.getInstance().toUriLiteral(URLEncoder.encode(EdmTime.getInstance().
+ valueToString(duration, null, null,
+ Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null), Constants.UTF8))
+ : EdmDuration.getInstance().toUriLiteral(URLEncoder.encode(EdmDuration.getInstance().
+ valueToString(duration, null, null,
+ Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null), Constants.UTF8));
}
/**
@@ -305,9 +291,7 @@ public final class URIUtils {
+ obj.toString()
+ suffix(version, EdmPrimitiveTypeKind.Guid)
: (obj instanceof byte[])
- ? prefix(version, EdmPrimitiveTypeKind.Binary)
- + Hex.encodeHexString((byte[]) obj)
- + suffix(version, EdmPrimitiveTypeKind.Binary)
+ ? EdmBinary.getInstance().toUriLiteral(Hex.encodeHexString((byte[]) obj))
: (obj instanceof Timestamp)
? timestamp(version, (Timestamp) obj)
: (obj instanceof Calendar)
@@ -330,6 +314,10 @@ public final class URIUtils {
? EdmInt64.getInstance().valueToString(obj, null, null,
Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null)
+ suffix(version, EdmPrimitiveTypeKind.Int64)
+ : (obj instanceof Geospatial)
+ ? URLEncoder.encode(EdmPrimitiveTypeFactory.getInstance(((Geospatial) obj).getEdmPrimitiveTypeKind()).
+ valueToString(obj, null, null, Constants.DEFAULT_PRECISION, Constants.DEFAULT_SCALE, null),
+ Constants.UTF8)
: (obj instanceof String)
? "'" + URLEncoder.encode((String) obj, Constants.UTF8) + "'"
: obj.toString();
@@ -340,7 +328,7 @@ public final class URIUtils {
return value;
}
-
+
public static InputStreamEntity buildInputStreamEntity(final CommonODataClient client, final InputStream input) {
InputStreamEntity entity;
if (client.getConfiguration().isUseChuncked()) {
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/AbstractPrimitiveTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/AbstractPrimitiveTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/AbstractPrimitiveTest.java
index 21d8c5d..04eb893 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/AbstractPrimitiveTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/AbstractPrimitiveTest.java
@@ -29,7 +29,6 @@ import java.util.List;
import java.util.UUID;
import org.apache.commons.codec.binary.Base64;
import org.apache.olingo.commons.api.Constants;
-import org.apache.olingo.commons.api.domain.ODataGeospatialValue;
import org.apache.olingo.commons.api.domain.ODataPrimitiveValue;
import org.apache.olingo.commons.api.domain.ODataProperty;
import org.apache.olingo.commons.api.format.ODataFormat;
@@ -93,35 +92,6 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
return value;
}
- protected ODataGeospatialValue writeGeospatialValue(final ODataGeospatialValue value) {
- final ODataGeospatialValue newValue = getClient().getGeospatialValueBuilder().
- setType(value.getTypeKind()).
- setValue(value.toValue()).
- build();
- final InputStream written = getClient().getWriter().writeProperty(
- getClient().getObjectFactory().newPrimitiveProperty(Constants.ELEM_PROPERTY, newValue),
- getFormat());
- return readGeospatialValue(written);
- }
-
- protected ODataGeospatialValue readGeospatialValue(final InputStream input) {
- final ODataProperty property = getClient().getReader().readProperty(input, getFormat());
- assertNotNull(property);
- assertTrue(property.hasGeospatialValue());
- assertNotNull(property.getGeospatialValue());
-
- return property.getGeospatialValue();
- }
-
- protected ODataGeospatialValue readGeospatialValue(final String entity, final String propertyName) {
- final ODataGeospatialValue value =
- readGeospatialValue(getClass().getResourceAsStream(getFilename(entity, propertyName)));
-
- assertEquals(value.toValue(), writeGeospatialValue(value).toValue());
-
- return value;
- }
-
protected void int32(final String entity, final String propertyName, final int check)
throws EdmPrimitiveTypeException {
@@ -200,9 +170,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String propertyName,
final Point expectedValues,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final Point point = opv.toCastValue(Point.class);
@@ -231,9 +201,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String propertyName,
final List<Point> check,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final LineString lineString = opv.toCastValue(LineString.class);
@@ -248,9 +218,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String propertyName,
final List<Point> check,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final MultiPoint multiPoint = opv.toCastValue(MultiPoint.class);
@@ -275,9 +245,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String propertyName,
final List<List<Point>> check,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final MultiLineString multiLine = opv.toCastValue(MultiLineString.class);
@@ -330,9 +300,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final List<Point> checkInterior,
final List<Point> checkExterior,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final Polygon polygon = opv.toCastValue(Polygon.class);
@@ -350,9 +320,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final List<List<Point>> checkInterior,
final List<List<Point>> checkExterior,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final MultiPolygon multiPolygon = opv.toCastValue(MultiPolygon.class);
@@ -373,9 +343,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String entity,
final String propertyName,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final GeospatialCollection collection = opv.toCastValue(GeospatialCollection.class);
@@ -402,9 +372,9 @@ public abstract class AbstractPrimitiveTest extends AbstractTest {
final String entity,
final String propertyName,
final EdmPrimitiveTypeKind expectedType,
- final Dimension expectedDimension) {
+ final Dimension expectedDimension) throws EdmPrimitiveTypeException {
- final ODataGeospatialValue opv = readGeospatialValue(entity, propertyName);
+ final ODataPrimitiveValue opv = readPrimitiveValue(entity, propertyName);
assertEquals(expectedType, opv.getTypeKind());
final GeospatialCollection collection = opv.toCastValue(GeospatialCollection.class);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/OpenTypeTestITCase.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/OpenTypeTestITCase.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/OpenTypeTestITCase.java
index 091d0af..bb507e4 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/OpenTypeTestITCase.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/OpenTypeTestITCase.java
@@ -118,25 +118,25 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
point.setX(1.2);
point.setY(2.1);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aPoint",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPoint).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPoint).
setValue(point).build()));
final List<Point> points = new ArrayList<Point>();
points.add(point);
points.add(point);
final MultiPoint multipoint = new MultiPoint(Geospatial.Dimension.GEOMETRY, null, points);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aMultiPoint",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiPoint).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiPoint).
setValue(multipoint).build()));
final LineString lineString = new LineString(Geospatial.Dimension.GEOMETRY, null, points);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aLineString",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryLineString).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryLineString).
setValue(lineString).build()));
final List<LineString> lineStrings = new ArrayList<LineString>();
lineStrings.add(lineString);
lineStrings.add(lineString);
final MultiLineString multiLineString = new MultiLineString(Geospatial.Dimension.GEOGRAPHY, null, lineStrings);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aMultiLineString",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiLineString).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiLineString).
setValue(multiLineString).build()));
final Point otherPoint = new Point(Geospatial.Dimension.GEOGRAPHY, null);
otherPoint.setX(3.4);
@@ -146,14 +146,14 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
points.add(point);
final Polygon polygon = new Polygon(Geospatial.Dimension.GEOGRAPHY, null, points, points);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aPolygon",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPolygon).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPolygon).
setValue(polygon).build()));
final List<Polygon> polygons = new ArrayList<Polygon>();
polygons.add(polygon);
polygons.add(polygon);
final MultiPolygon multiPolygon = new MultiPolygon(Geospatial.Dimension.GEOGRAPHY, null, polygons);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aMultiPolygon",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyMultiPolygon).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyMultiPolygon).
setValue(multiPolygon).build()));
final List<Geospatial> geospatials = new ArrayList<Geospatial>();
geospatials.add(otherPoint);
@@ -162,7 +162,7 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
geospatials.add(multiPolygon);
final GeospatialCollection geoColl = new GeospatialCollection(Geospatial.Dimension.GEOGRAPHY, null, geospatials);
row.getProperties().add(client.getObjectFactory().newPrimitiveProperty("aCollection",
- client.getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyCollection).
+ client.getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyCollection).
setValue(geoColl).build()));
final ODataComplexValue contactDetails =
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/EntityTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/EntityTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/EntityTest.java
index b615988..151478a 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/EntityTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/EntityTest.java
@@ -29,6 +29,7 @@ import org.apache.olingo.commons.api.domain.ODataLink;
import org.apache.olingo.commons.api.domain.ODataProperty;
import org.apache.olingo.commons.api.format.ODataPubFormat;
import org.apache.olingo.client.core.AbstractTest;
+import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.core.op.ResourceFactory;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
import org.apache.olingo.commons.api.edm.geo.Geospatial;
@@ -88,8 +89,8 @@ public class EntityTest extends AbstractTest {
for (ODataProperty property : entity.getProperties()) {
if ("GeogMultiLine".equals(property.getName())) {
found = true;
- assertTrue(property.hasGeospatialValue());
- assertEquals(EdmPrimitiveTypeKind.GeographyMultiLineString, property.getGeospatialValue().getTypeKind());
+ assertTrue(property.hasPrimitiveValue());
+ assertEquals(EdmPrimitiveTypeKind.GeographyMultiLineString, property.getPrimitiveValue().getTypeKind());
}
}
assertTrue(found);
@@ -160,30 +161,30 @@ public class EntityTest extends AbstractTest {
mediaEntity(ODataPubFormat.JSON_FULL_METADATA);
}
- private void issue128(final ODataPubFormat format) {
+ private void issue128(final ODataPubFormat format) throws EdmPrimitiveTypeException {
final InputStream input = getClass().getResourceAsStream("AllGeoTypesSet_-5." + getSuffix(format));
final ODataEntity entity = getClient().getBinder().getODataEntity(
getClient().getDeserializer().toEntry(input, format));
assertNotNull(entity);
final ODataProperty geogCollection = entity.getProperty("GeogCollection");
- assertEquals(EdmPrimitiveTypeKind.GeographyCollection, geogCollection.getGeospatialValue().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeographyCollection, geogCollection.getPrimitiveValue().getTypeKind());
int count = 0;
- for (Geospatial g : geogCollection.getGeospatialValue().toCastValue(GeospatialCollection.class)) {
- assertNotNull(g);
+ for (Geospatial geo : geogCollection.getPrimitiveValue().toCastValue(GeospatialCollection.class)) {
+ assertNotNull(geo);
count++;
}
assertEquals(2, count);
}
@Test
- public void issue128FromAtom() {
+ public void issue128FromAtom() throws EdmPrimitiveTypeException {
issue128(ODataPubFormat.ATOM);
}
@Test
- public void issue128FromJSON() {
+ public void issue128FromJSON() throws EdmPrimitiveTypeException {
issue128(ODataPubFormat.JSON_FULL_METADATA);
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/MetadataTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/MetadataTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/MetadataTest.java
index 5dca101..a4d1ba8 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/MetadataTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/MetadataTest.java
@@ -134,7 +134,7 @@ public class MetadataTest extends AbstractTest {
new FullQualifiedName("Microsoft.Test.OData.Services.AstoriaDefaultService", "ProductReview"));
assertNotNull(entity);
assertFalse(entity.getPropertyNames().isEmpty());
- assertEquals(EdmPrimitiveTypeFactory.getNonGeoInstance(EdmPrimitiveTypeKind.Int32),
+ assertEquals(EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Int32),
entity.getProperty("ProductId").getType());
assertFalse(entity.getKeyPropertyRefs().isEmpty());
@@ -178,7 +178,7 @@ public class MetadataTest extends AbstractTest {
final EdmFunctionImport getArgumentPlusOne = container.getFunctionImport("GetArgumentPlusOne");
assertNotNull(getArgumentPlusOne);
- assertEquals(EdmPrimitiveTypeFactory.getNonGeoInstance(EdmPrimitiveTypeKind.Int32),
+ assertEquals(EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Int32),
getArgumentPlusOne.getFunction(null).getReturnType().getType());
final EdmActionImport resetDataSource = container.getActionImport("ResetDataSource");
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/PrimitiveValueTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/PrimitiveValueTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/PrimitiveValueTest.java
index e3cbd7e..04f392a 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/PrimitiveValueTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/v3/PrimitiveValueTest.java
@@ -20,7 +20,6 @@ package org.apache.olingo.client.core.v3;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
import java.math.BigDecimal;
import java.sql.Timestamp;
@@ -182,32 +181,24 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void managePoint() {
+ public void managePoint() throws EdmPrimitiveTypeException {
final Point primitive = new Point(Geospatial.Dimension.GEOGRAPHY, null);
primitive.setX(52.8606);
primitive.setY(173.334);
- try {
- getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPoint).
- setValue(primitive).build();
- fail();
- } catch (IllegalArgumentException iae) {
- // nothing top do
- }
-
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPoint).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPoint).
setValue(primitive).
build();
- assertEquals(EdmPrimitiveTypeKind.GeographyPoint, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeographyPoint, value.asPrimitive().getTypeKind());
assertEquals(Double.valueOf(primitive.getX()),
- Double.valueOf(value.asGeospatial().toCastValue(Point.class).getX()));
+ Double.valueOf(value.asPrimitive().toCastValue(Point.class).getX()));
assertEquals(Double.valueOf(primitive.getY()),
- Double.valueOf(value.asGeospatial().toCastValue(Point.class).getY()));
+ Double.valueOf(value.asPrimitive().toCastValue(Point.class).getY()));
}
@Test
- public void manageLineString() {
+ public void manageLineString() throws EdmPrimitiveTypeException {
final List<Point> points = new ArrayList<Point>();
Point point = new Point(Geospatial.Dimension.GEOGRAPHY, null);
point.setX(40.5);
@@ -231,11 +222,11 @@ public class PrimitiveValueTest extends AbstractTest {
final LineString primitive = new LineString(Geospatial.Dimension.GEOGRAPHY, null, points);
- final ODataValue value = getClient().getGeospatialValueBuilder().
+ final ODataValue value = getClient().getPrimitiveValueBuilder().
setType(EdmPrimitiveTypeKind.GeographyLineString).setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeographyLineString, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeographyLineString, value.asPrimitive().getTypeKind());
- final Iterator<Point> iter = value.asGeospatial().toCastValue(LineString.class).iterator();
+ final Iterator<Point> iter = value.asPrimitive().toCastValue(LineString.class).iterator();
// take the third one and check the point value ...
iter.next();
@@ -247,7 +238,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void manageMultiPoint() {
+ public void manageMultiPoint() throws EdmPrimitiveTypeException {
final List<Point> points = new ArrayList<Point>();
Point point = new Point(Geospatial.Dimension.GEOMETRY, null);
point.setX(0);
@@ -256,11 +247,11 @@ public class PrimitiveValueTest extends AbstractTest {
final MultiPoint primitive = new MultiPoint(Geospatial.Dimension.GEOMETRY, null, points);
- final ODataValue value = getClient().getGeospatialValueBuilder().
+ final ODataValue value = getClient().getPrimitiveValueBuilder().
setType(EdmPrimitiveTypeKind.GeometryMultiPoint).setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeometryMultiPoint, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeometryMultiPoint, value.asPrimitive().getTypeKind());
- final Iterator<Point> iter = value.asGeospatial().toCastValue(MultiPoint.class).iterator();
+ final Iterator<Point> iter = value.asPrimitive().toCastValue(MultiPoint.class).iterator();
point = iter.next();
assertEquals(Double.valueOf(points.get(0).getX()), Double.valueOf(point.getX()));
@@ -268,7 +259,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void manageMultiLine() {
+ public void manageMultiLine() throws EdmPrimitiveTypeException {
final List<LineString> lines = new ArrayList<LineString>();
// line one ...
@@ -317,11 +308,11 @@ public class PrimitiveValueTest extends AbstractTest {
final MultiLineString primitive = new MultiLineString(Geospatial.Dimension.GEOMETRY, null, lines);
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiLineString).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiLineString).
setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeometryMultiLineString, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeometryMultiLineString, value.asPrimitive().getTypeKind());
- final Iterator<LineString> lineIter = value.asGeospatial().toCastValue(MultiLineString.class).iterator();
+ final Iterator<LineString> lineIter = value.asPrimitive().toCastValue(MultiLineString.class).iterator();
// take the second line and check the third point value ...
lineIter.next();
@@ -337,7 +328,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void managePolygon() {
+ public void managePolygon() throws EdmPrimitiveTypeException {
final List<Point> interior = new ArrayList<Point>();
final List<Point> exterior = new ArrayList<Point>();
@@ -370,12 +361,12 @@ public class PrimitiveValueTest extends AbstractTest {
final Polygon primitive = new Polygon(Geospatial.Dimension.GEOGRAPHY, null, interior, exterior);
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPolygon).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyPolygon).
setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeographyPolygon, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeographyPolygon, value.asPrimitive().getTypeKind());
- assertTrue(value.asGeospatial().toCastValue(Polygon.class).getInterior().isEmpty());
- final Iterator<Point> iter = value.asGeospatial().toCastValue(Polygon.class).getExterior().iterator();
+ assertTrue(value.asPrimitive().toCastValue(Polygon.class).getInterior().isEmpty());
+ final Iterator<Point> iter = value.asPrimitive().toCastValue(Polygon.class).getExterior().iterator();
// take the third one ...
iter.next();
@@ -387,7 +378,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void manageMultiPolygon() {
+ public void manageMultiPolygon() throws EdmPrimitiveTypeException {
final List<Polygon> polygons = new ArrayList<Polygon>();
List<Point> interior = new ArrayList<Point>();
@@ -476,11 +467,11 @@ public class PrimitiveValueTest extends AbstractTest {
final MultiPolygon primitive = new MultiPolygon(Geospatial.Dimension.GEOMETRY, null, polygons);
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiPolygon).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryMultiPolygon).
setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeometryMultiPolygon, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeometryMultiPolygon, value.asPrimitive().getTypeKind());
- final Iterator<Polygon> iter = value.asGeospatial().toCastValue(MultiPolygon.class).iterator();
+ final Iterator<Polygon> iter = value.asPrimitive().toCastValue(MultiPolygon.class).iterator();
// second one polygon
iter.next();
@@ -504,7 +495,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void manageGeomCollection() {
+ public void manageGeomCollection() throws EdmPrimitiveTypeException {
final List<Geospatial> collection = new ArrayList<Geospatial>();
Point point = new Point(Geospatial.Dimension.GEOMETRY, null);
@@ -522,11 +513,11 @@ public class PrimitiveValueTest extends AbstractTest {
final GeospatialCollection primitive = new GeospatialCollection(Geospatial.Dimension.GEOMETRY, null, collection);
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeometryCollection).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeometryCollection).
setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeometryCollection, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeometryCollection, value.asPrimitive().getTypeKind());
- final Iterator<Geospatial> iter = value.asGeospatial().toCastValue(GeospatialCollection.class).iterator();
+ final Iterator<Geospatial> iter = value.asPrimitive().toCastValue(GeospatialCollection.class).iterator();
iter.next();
final Point collectedPoint = (Point) iter.next();
@@ -536,7 +527,7 @@ public class PrimitiveValueTest extends AbstractTest {
}
@Test
- public void manageGeogCollection() {
+ public void manageGeogCollection() throws EdmPrimitiveTypeException {
final List<Geospatial> collection = new ArrayList<Geospatial>();
Point point = new Point(Geospatial.Dimension.GEOGRAPHY, null);
@@ -554,11 +545,11 @@ public class PrimitiveValueTest extends AbstractTest {
final GeospatialCollection primitive = new GeospatialCollection(Geospatial.Dimension.GEOGRAPHY, null, collection);
final ODataValue value =
- getClient().getGeospatialValueBuilder().setType(EdmPrimitiveTypeKind.GeographyCollection).
+ getClient().getPrimitiveValueBuilder().setType(EdmPrimitiveTypeKind.GeographyCollection).
setValue(primitive).build();
- assertEquals(EdmPrimitiveTypeKind.GeographyCollection, value.asGeospatial().getTypeKind());
+ assertEquals(EdmPrimitiveTypeKind.GeographyCollection, value.asPrimitive().getTypeKind());
- final Iterator<Geospatial> iter = value.asGeospatial().toCastValue(GeospatialCollection.class).iterator();
+ final Iterator<Geospatial> iter = value.asPrimitive().toCastValue(GeospatialCollection.class).iterator();
iter.next();
final Point collectedPoint = (Point) iter.next();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/client-core/src/test/java/org/apache/olingo/client/core/v4/MetadataTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/v4/MetadataTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/v4/MetadataTest.java
index fb2ba5c..c8cfc59 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/v4/MetadataTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/v4/MetadataTest.java
@@ -83,7 +83,7 @@ public class MetadataTest extends AbstractTest {
assertNotNull(responseStatus);
assertTrue(responseStatus.getNavigationPropertyNames().isEmpty());
assertEquals("Recipient", responseStatus.getBaseType().getName());
- assertEquals(EdmPrimitiveTypeFactory.getNonGeoInstance(EdmPrimitiveTypeKind.DateTimeOffset),
+ assertEquals(EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.DateTimeOffset),
responseStatus.getProperty("Time").getType());
// 3. Entity
@@ -107,7 +107,7 @@ public class MetadataTest extends AbstractTest {
assertNotNull(move);
assertTrue(move.isBound());
assertEquals(2, move.getParameterNames().size());
- assertEquals(EdmPrimitiveTypeFactory.getNonGeoInstance(EdmPrimitiveTypeKind.String),
+ assertEquals(EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.String),
move.getParameter("DestinationId").getType());
// 5. EntityContainer
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/GeoUtils.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/GeoUtils.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/GeoUtils.java
index fa7538d..c1ceef0 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/GeoUtils.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/GeoUtils.java
@@ -24,10 +24,6 @@ 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;
@@ -87,4 +83,9 @@ public final class GeoUtils {
return type;
}
+
+ private GeoUtils() {
+ // Empty private constructor for static utility classes
+ }
+
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/AbstractODataValue.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/AbstractODataValue.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/AbstractODataValue.java
index ab77d7f..3eb664b 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/AbstractODataValue.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/AbstractODataValue.java
@@ -51,26 +51,6 @@ public abstract class AbstractODataValue implements ODataValue {
}
/**
- * Check is is a geospatail value.
- *
- * @return 'TRUE' if geospatail; 'FALSE' otherwise.
- */
- @Override
- public boolean isGeospatial() {
- return (this instanceof ODataGeospatialValue);
- }
-
- /**
- * Casts to geospatail value.
- *
- * @return geospatail value.
- */
- @Override
- public ODataGeospatialValue asGeospatial() {
- return isGeospatial() ? (ODataGeospatialValue) this : null;
- }
-
- /**
* Check is is a complex value.
*
* @return 'TRUE' if complex; 'FALSE' otherwise.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataGeospatialValue.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataGeospatialValue.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataGeospatialValue.java
deleted file mode 100644
index 7563907..0000000
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataGeospatialValue.java
+++ /dev/null
@@ -1,57 +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.commons.api.domain;
-
-import org.apache.olingo.commons.api.edm.EdmGeospatialType;
-import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
-import org.apache.olingo.commons.api.edm.geo.Geospatial;
-
-public interface ODataGeospatialValue extends ODataValue {
-
- interface Builder {
-
- Builder setType(EdmPrimitiveTypeKind type);
-
- Builder setValue(Geospatial value);
-
- ODataGeospatialValue build();
-
- }
-
- EdmPrimitiveTypeKind getTypeKind();
-
- EdmGeospatialType getType();
-
- /**
- * Returns the current geospatial value.
- *
- * @return the current geospatial value.
- */
- Geospatial toValue();
-
- /**
- * Returns the current value casted to the given type.
- *
- * @param <T> cast type
- * @param reference class reference
- * @return the current value as typed java instance
- */
- <T extends Geospatial> T toCastValue(Class<T> reference);
-
-}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataObjectFactory.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataObjectFactory.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataObjectFactory.java
index b38a5e8..d8cbbbc 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataObjectFactory.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataObjectFactory.java
@@ -190,15 +190,6 @@ public interface ODataObjectFactory {
ODataProperty newPrimitiveProperty(String name, ODataPrimitiveValue value);
/**
- * Instantiates a new primitive property.
- *
- * @param name name.
- * @param value geospatial value.
- * @return primitive property.
- */
- ODataProperty newPrimitiveProperty(String name, ODataGeospatialValue value);
-
- /**
* Instantiates a new complex property.
*
* @param name name.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataProperty.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataProperty.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataProperty.java
index 7217282..24364d7 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataProperty.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataProperty.java
@@ -107,24 +107,6 @@ public class ODataProperty implements Serializable, ODataInvokeResult {
}
/**
- * Checks if has geospatial value.
- *
- * @return 'TRUE' if has geospatial value; 'FALSE' otherwise.
- */
- public boolean hasGeospatialValue() {
- return !hasNullValue() && this.value.isGeospatial();
- }
-
- /**
- * Gets geospatial value.
- *
- * @return geospatial value if exists; null otherwise.
- */
- public ODataGeospatialValue getGeospatialValue() {
- return hasGeospatialValue() ? this.value.asGeospatial() : null;
- }
-
- /**
* Checks if has complex value.
*
* @return 'TRUE' if has complex value; 'FALSE' otherwise.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataValue.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataValue.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataValue.java
index e1c9be9..b427e8f 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataValue.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/domain/ODataValue.java
@@ -40,20 +40,6 @@ public interface ODataValue extends Serializable {
ODataPrimitiveValue asPrimitive();
/**
- * Check is is a geospatail value.
- *
- * @return 'TRUE' if geospatail; 'FALSE' otherwise.
- */
- boolean isGeospatial();
-
- /**
- * Casts to geospatail value.
- *
- * @return geospatail value.
- */
- ODataGeospatialValue asGeospatial();
-
- /**
* Check is is a collection value.
*
* @return 'TRUE' if collection; 'FALSE' otherwise.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmGeospatialType.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmGeospatialType.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmGeospatialType.java
deleted file mode 100644
index 898b6b2..0000000
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmGeospatialType.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.commons.api.edm;
-
-import org.apache.olingo.commons.api.edm.geo.Geospatial;
-
-public interface EdmGeospatialType extends EdmType {
-
- String EDM_NAMESPACE = EdmPrimitiveType.EDM_NAMESPACE;
-
- /**
- * Returns the Java type for this EDM geospatial type.
- *
- * @return the geospatial Java type
- */
- Class<? extends Geospatial> getJavaType();
-
-}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/ComposedGeospatial.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/ComposedGeospatial.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/ComposedGeospatial.java
index 82a13fe..cbc5685 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/ComposedGeospatial.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/ComposedGeospatial.java
@@ -31,18 +31,10 @@ public abstract class ComposedGeospatial<T extends Geospatial> extends Geospatia
protected final List<T> geospatials;
- /**
- * Constructor.
- *
- * @param dimension dimension.
- * @param type type.
- * @param crs crs.
- * @param geospatials geospatials info.
- */
- protected ComposedGeospatial(final Dimension dimension, final Type type, final String crs,
+ protected ComposedGeospatial(final Dimension dimension, final Type type, final Integer srid,
final List<T> geospatials) {
- super(dimension, type, crs);
+ super(dimension, type, srid);
this.geospatials = new ArrayList<T>();
if (geospatials != null) {
this.geospatials.addAll(geospatials);
@@ -65,14 +57,4 @@ public abstract class ComposedGeospatial<T extends Geospatial> extends Geospatia
public boolean isEmpty() {
return geospatials.isEmpty();
}
-
- /**
- * {@inheritDoc }
- */
- @Override
- public void setSrid(final Integer srid) {
- for (Geospatial geospatial : this.geospatials) {
- geospatial.setSrid(srid);
- }
- }
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Geospatial.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Geospatial.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Geospatial.java
index 62de5ec..19b98dd 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Geospatial.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Geospatial.java
@@ -75,23 +75,22 @@ public abstract class Geospatial implements Serializable {
protected final Type type;
- protected String crs;
-
/**
* Null value means it is expected to vary per instance.
*/
- protected Integer srid;
+ protected final Integer srid;
/**
* Constructor.
*
* @param dimension dimension.
* @param type type.
+ * @param srid SRID
*/
- protected Geospatial(final Dimension dimension, final Type type, final String crs) {
+ protected Geospatial(final Dimension dimension, final Type type, final Integer srid) {
this.dimension = dimension;
this.type = type;
- this.crs = crs;
+ this.srid = srid;
}
/**
@@ -115,15 +114,6 @@ public abstract class Geospatial implements Serializable {
}
/**
- * Gets CRS.
- *
- * @return CRS
- */
- public String getCrs() {
- return crs;
- }
-
- /**
* Gets s-rid.
*
* @return s-rid.
@@ -132,36 +122,18 @@ public abstract class Geospatial implements Serializable {
return srid;
}
- /**
- * Sets s-rid.
- *
- * @param srid s-rid.
- */
- public void setSrid(final Integer srid) {
- this.srid = srid;
- }
-
public abstract EdmPrimitiveTypeKind getEdmPrimitiveTypeKind();
- /**
- * {@inheritDoc }
- */
@Override
public boolean equals(final Object obj) {
return EqualsBuilder.reflectionEquals(this, obj);
}
- /**
- * {@inheritDoc }
- */
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}
- /**
- * {@inheritDoc }
- */
@Override
public String toString() {
return ReflectionToStringBuilder.toString(this, ToStringStyle.MULTI_LINE_STYLE);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/GeospatialCollection.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/GeospatialCollection.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/GeospatialCollection.java
index b3e3f9f..5b0b857 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/GeospatialCollection.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/GeospatialCollection.java
@@ -28,21 +28,14 @@ public class GeospatialCollection extends ComposedGeospatial<Geospatial> {
private static final long serialVersionUID = -9181547636133878977L;
- /**
- * Constructor.
- *
- * @param dimension dimension.
- * @param crs crs.
- * @param geospatials geospatials info.
- */
- public GeospatialCollection(final Dimension dimension, final String crs, final List<Geospatial> geospatials) {
- super(dimension, Type.GEOSPATIALCOLLECTION, crs, geospatials);
+ public GeospatialCollection(final Dimension dimension, final Integer srid, final List<Geospatial> geospatials) {
+ super(dimension, Type.GEOSPATIALCOLLECTION, srid, geospatials);
}
@Override
public EdmPrimitiveTypeKind getEdmPrimitiveTypeKind() {
return dimension == Dimension.GEOGRAPHY
- ? EdmPrimitiveTypeKind.GeographyCollection
- : EdmPrimitiveTypeKind.GeometryCollection;
+ ? EdmPrimitiveTypeKind.GeographyCollection
+ : EdmPrimitiveTypeKind.GeometryCollection;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/LineString.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/LineString.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/LineString.java
index 297a962..bc6afaf 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/LineString.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/LineString.java
@@ -25,8 +25,8 @@ public class LineString extends ComposedGeospatial<Point> {
private static final long serialVersionUID = 3207958185407535907L;
- public LineString(final Dimension dimension, final String crs, final List<Point> points) {
- super(dimension, Type.LINESTRING, crs, points);
+ public LineString(final Dimension dimension, final Integer srid, final List<Point> points) {
+ super(dimension, Type.LINESTRING, srid, points);
}
@Override
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiLineString.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiLineString.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiLineString.java
index 2f98d63..d38f3b0 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiLineString.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiLineString.java
@@ -25,15 +25,15 @@ public class MultiLineString extends ComposedGeospatial<LineString> {
private static final long serialVersionUID = -5042414471218124125L;
- public MultiLineString(final Dimension dimension, final String crs, final List<LineString> lineStrings) {
- super(dimension, Type.MULTILINESTRING, crs, lineStrings);
+ public MultiLineString(final Dimension dimension, final Integer srid, final List<LineString> lineStrings) {
+ super(dimension, Type.MULTILINESTRING, srid, lineStrings);
}
@Override
public EdmPrimitiveTypeKind getEdmPrimitiveTypeKind() {
return dimension == Dimension.GEOGRAPHY
- ? EdmPrimitiveTypeKind.GeographyMultiLineString
- : EdmPrimitiveTypeKind.GeometryMultiLineString;
+ ? EdmPrimitiveTypeKind.GeographyMultiLineString
+ : EdmPrimitiveTypeKind.GeometryMultiLineString;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPoint.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPoint.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPoint.java
index 999f24b..7229d05 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPoint.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPoint.java
@@ -25,8 +25,8 @@ public class MultiPoint extends ComposedGeospatial<Point> {
private static final long serialVersionUID = 4951011255142116129L;
- public MultiPoint(final Dimension dimension, final String crs, final List<Point> points) {
- super(dimension, Type.MULTIPOINT, crs, points);
+ public MultiPoint(final Dimension dimension, final Integer srid, final List<Point> points) {
+ super(dimension, Type.MULTIPOINT, srid, points);
}
@Override
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPolygon.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPolygon.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPolygon.java
index fd0fdae..dbbfb24 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPolygon.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/MultiPolygon.java
@@ -25,14 +25,14 @@ public class MultiPolygon extends ComposedGeospatial<Polygon> {
private static final long serialVersionUID = -160184788048512883L;
- public MultiPolygon(final Dimension dimension, final String crs, final List<Polygon> polygons) {
- super(dimension, Type.MULTIPOLYGON, crs, polygons);
+ public MultiPolygon(final Dimension dimension, final Integer srid, final List<Polygon> polygons) {
+ super(dimension, Type.MULTIPOLYGON, srid, polygons);
}
@Override
public EdmPrimitiveTypeKind getEdmPrimitiveTypeKind() {
return dimension == Dimension.GEOGRAPHY
- ? EdmPrimitiveTypeKind.GeographyMultiPolygon
- : EdmPrimitiveTypeKind.GeometryMultiPolygon;
+ ? EdmPrimitiveTypeKind.GeographyMultiPolygon
+ : EdmPrimitiveTypeKind.GeometryMultiPolygon;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/76513508/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Point.java
----------------------------------------------------------------------
diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Point.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Point.java
index a9e0c39..c8c8a37 100644
--- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Point.java
+++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/geo/Point.java
@@ -40,8 +40,8 @@ public class Point extends Geospatial {
*/
private double z;
- public Point(final Dimension dimension, final String crs) {
- super(dimension, Type.POINT, crs);
+ public Point(final Dimension dimension, final Integer srid) {
+ super(dimension, Type.POINT, srid);
}
public double getX() {
@@ -71,7 +71,7 @@ public class Point extends Geospatial {
@Override
public EdmPrimitiveTypeKind getEdmPrimitiveTypeKind() {
return dimension == Dimension.GEOGRAPHY
- ? EdmPrimitiveTypeKind.GeographyPoint
- : EdmPrimitiveTypeKind.GeometryPoint;
+ ? EdmPrimitiveTypeKind.GeographyPoint
+ : EdmPrimitiveTypeKind.GeometryPoint;
}
}