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/06 10:39:03 UTC
[3/3] git commit: Merge from master
Merge from master
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/c4239fc9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/tree/c4239fc9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/diff/c4239fc9
Branch: refs/heads/olingo169
Commit: c4239fc939e96b702c76de78b6af9f664800d1c6
Parents: a97fd2d 6553b58
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Thu Mar 6 10:38:50 2014 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Thu Mar 6 10:38:50 2014 +0100
----------------------------------------------------------------------
.../client/api/edm/xml/v4/TypeDefinition.java | 1 -
.../odata4/client/api/op/ODataSerializer.java | 2 -
.../olingo/odata4/server/api/uri/UriInfo.java | 10 ++-
.../odata4/server/api/uri/UriInfoAll.java | 5 ++
.../odata4/server/api/uri/UriInfoBatch.java | 4 +
.../odata4/server/api/uri/UriInfoCrossjoin.java | 7 ++
.../odata4/server/api/uri/UriInfoEntityId.java | 23 ++++-
.../odata4/server/api/uri/UriInfoKind.java | 46 +++++++++-
.../odata4/server/api/uri/UriInfoMetadata.java | 10 +++
.../odata4/server/api/uri/UriInfoResource.java | 60 ++++++++++++-
.../odata4/server/api/uri/UriInfoService.java | 4 +
.../odata4/server/api/uri/UriParameter.java | 20 ++++-
.../odata4/server/api/uri/UriResource.java | 7 ++
.../server/api/uri/UriResourceAction.java | 7 ++
.../api/uri/UriResourceComplexProperty.java | 12 +++
.../odata4/server/api/uri/UriResourceCount.java | 4 +
.../server/api/uri/UriResourceEntitySet.java | 21 ++++-
.../server/api/uri/UriResourceFunction.java | 20 +++++
.../odata4/server/api/uri/UriResourceIt.java | 12 ++-
.../odata4/server/api/uri/UriResourceKind.java | 95 +++++++++++++++++++-
.../server/api/uri/UriResourceLambdaAll.java | 12 ++-
.../server/api/uri/UriResourceLambdaAny.java | 10 +++
.../server/api/uri/UriResourceLambdaRef.java | 25 ------
.../api/uri/UriResourceLambdaVariable.java | 33 +++++++
.../server/api/uri/UriResourceNavigation.java | 21 ++++-
.../server/api/uri/UriResourcePartTyped.java | 12 +++
.../api/uri/UriResourcePrimitiveProperty.java | 4 +
.../server/api/uri/UriResourceProperty.java | 6 ++
.../odata4/server/api/uri/UriResourceRef.java | 5 ++
.../odata4/server/api/uri/UriResourceRoot.java | 3 +-
.../server/api/uri/UriResourceSingleton.java | 14 +++
.../odata4/server/api/uri/UriResourceValue.java | 4 +
.../odata4/server/core/uri/UriInfoImpl.java | 2 +-
.../server/core/uri/UriParameterImpl.java | 2 +-
.../core/uri/UriResourceLambdaAllImpl.java | 10 +--
.../core/uri/UriResourceLambdaAnyImpl.java | 8 +-
.../core/uri/UriResourceLambdaVarImpl.java | 6 +-
.../uri/UriResourceStartingTypeFilterImpl.java | 2 +-
.../odata4/server/core/uri/UriInfoImplTest.java | 2 +-
.../server/core/uri/UriResourceImplTest.java | 7 +-
.../core/uri/testutil/FilterTreeToText.java | 2 +-
.../core/uri/testutil/ResourceValidator.java | 9 +-
42 files changed, 496 insertions(+), 73 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/edm/xml/v4/TypeDefinition.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/edm/xml/v4/TypeDefinition.java
index 531cf45,0000000..05e8514
mode 100644,000000..100644
--- a/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/edm/xml/v4/TypeDefinition.java
+++ b/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/edm/xml/v4/TypeDefinition.java
@@@ -1,52 -1,0 +1,51 @@@
+/*
+ * 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.odata4.client.api.edm.xml.v4;
+
- import java.math.BigInteger;
+import java.util.List;
+import org.apache.olingo.odata4.client.api.edm.xml.Named;
+
+public interface TypeDefinition extends Named {
+
+ List<? extends Annotation> getAnnotations();
+
+ Integer getMaxLength();
+
+ Integer getPrecision();
+
+ Integer getScale();
+
+ String getSrid();
+
+ String getUnderlyingType();
+
+ boolean isUnicode();
+
+ void setMaxLength(Integer maxLength);
+
+ void setPrecision(Integer precision);
+
+ void setScale(Integer scale);
+
+ void setSrid(String srid);
+
+ void setUnderlyingType(String underlyingType);
+
+ void setUnicode(boolean unicode);
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/op/ODataSerializer.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/op/ODataSerializer.java
index 8b8d5ac,0000000..61c3d68
mode 100644,000000..100644
--- a/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/op/ODataSerializer.java
+++ b/odata4-lib/odata4-client-api/src/main/java/org/apache/olingo/odata4/client/api/op/ODataSerializer.java
@@@ -1,120 -1,0 +1,118 @@@
+/**
+ * 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.odata4.client.api.op;
+
+import java.io.OutputStream;
+import java.io.Serializable;
+import java.io.Writer;
- import org.apache.olingo.odata4.client.api.format.ODataFormat;
- import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+
+/**
+ * Utility class for serialization.
+ */
+public interface ODataSerializer extends Serializable {
+
+ /**
+ * Writes <tt>FeedResource</tt> object onto the given stream.
+ *
+ * @param <T> feed resource type.
+ * @param obj object to be streamed.
+ * @param out output stream.
+ */
+// <T extends Feed> void feed(T obj, OutputStream out);
+
+ /**
+ * Writes <tt>FeedResource</tt> object by the given writer.
+ *
+ * @param <T> feed resource type.
+ * @param obj object to be streamed.
+ * @param writer writer.
+ */
+// <T extends Feed> void feed(T obj, Writer writer);
+
+ /**
+ * Writes <tt>EntryResource</tt> object onto the given stream.
+ *
+ * @param <T> entry resource type.
+ * @param obj object to be streamed.
+ * @param out output stream.
+ */
+// <T extends Entry> void entry(T obj, OutputStream out);
+
+ /**
+ * Writes <tt>EntryResource</tt> object by the given writer.
+ *
+ * @param <T> entry resource type.
+ * @param obj object to be streamed.
+ * @param writer writer.
+ */
+// <T extends Entry> void entry(T obj, Writer writer);
+
+ /**
+ * Writes entry content onto the given stream.
+ *
+ * @param element element to be streamed.
+ * @param format streaming format.
+ * @param out output stream.
+ */
+// void property(Element element, ODataFormat format, OutputStream out);
+
+ /**
+ * Writes entry content by the given writer.
+ *
+ * @param element element to be streamed.
+ * @param format streaming format.
+ * @param writer writer.
+ */
+// void property(Element element, ODataFormat format, Writer writer);
+
+ /**
+ * Writes OData link onto the given stream.
+ *
+ * @param link OData link to be streamed.
+ * @param format streaming format.
+ * @param out output stream.
+ */
+// void link(ODataLink link, ODataFormat format, OutputStream out);
+
+ /**
+ * Writes OData link by the given writer.
+ *
+ * @param link OData link to be streamed.
+ * @param format streaming format.
+ * @param writer writer.
+ */
+// void link(ODataLink link, ODataFormat format, Writer writer);
+
+ /**
+ * Writes DOM object onto the given stream.
+ *
+ * @param content DOM to be streamed.
+ * @param out output stream.
+ */
+ void dom(Node content, OutputStream out);
+
+ /**
+ * Writes DOM object by the given writer.
+ *
+ * @param content DOM to be streamed.
+ * @param writer writer.
+ */
+ void dom(Node content, Writer writer);
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfo.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfo.java
index f5426a5,4b91a93..9bca76a
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfo.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfo.java
@@@ -12,12 -12,19 +12,18 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
-
+ */
package org.apache.olingo.odata4.server.api.uri;
+
+ /**
+ * Object acting as general access to URI information extracted from the request URI. Depending on
+ * the URI info kind different interfaces are used to provide access to that information. </p>
+ * Use method {@link #getKind()} to obtain URI info kind information and to perform an appropriate cast.
+ */
public interface UriInfo extends
UriInfoService, UriInfoAll, UriInfoBatch, UriInfoCrossjoin,
UriInfoEntityId, UriInfoMetadata, UriInfoResource {
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoAll.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoAll.java
index 4cad9ae,95f3266..5a1e0c7
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoAll.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoAll.java
@@@ -12,12 -12,18 +12,17 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
-
+ */
package org.apache.olingo.odata4.server.api.uri;
+
+ /**
+ * Used for URI info kind {@link UriInfoKind#all} to describe URIs like
+ * http://.../serviceroot/$all
+ */
public interface UriInfoAll {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoBatch.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoBatch.java
index e0e8b27,e6db379..4e3142e
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoBatch.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoBatch.java
@@@ -12,12 -12,17 +12,16 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
-
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Used for URI info kind {@link UriInfoKind#batch} to describe URIs like
+ * http://.../serviceroot/$batch
+ */
public interface UriInfoBatch {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoCrossjoin.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoEntityId.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoKind.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoKind.java
index cfb48ab,7264238..7065edf
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoKind.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoKind.java
@@@ -12,12 -12,57 +12,56 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
-
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Defining the various info kinds
+ */
public enum UriInfoKind {
- all, batch, crossjoin, entityId, metadata, resource, service;
+
+ /**
+ * Class: {@link UriInfoAll}<br>
+ * URI: http://.../serviceroot/$all
+ */
+ all,
+
+ /**
+ * Class: {@link UriInfoBatch}<br>
+ * URI: http://.../serviceroot/$batch
+ */
+ batch,
+
+ /**
+ * Class: {@link UriInfoCrossjoin}<br>
+ * URI: http://.../serviceroot/$crossjoin
+ */
+ crossjoin,
+
+ /**
+ * Class: {@link UriInfoEntityId}<br>
+ * URI: http://.../serviceroot/$entity(...)
+ */
+ entityId,
+
+ /**
+ * Class: {@link UriInfoMetadata}<br>
+ * URI: http://.../serviceroot/$metadata...
+ */
+ metadata,
+
+ /**
+ * Class: {@link UriInfoResource}<br>
+ * URI: http://.../serviceroot/entitySet
+ */
+ resource,
+
+ /**
+ * Class: {@link UriInfoService}<br>
+ * URI: http://.../serviceroot
+ */
+ service;
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoMetadata.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoResource.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoService.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoService.java
index 751e224,934509d..a6c9eb9
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoService.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriInfoService.java
@@@ -12,12 -12,16 +12,16 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Used for URI info kind {@link UriInfoKind#service} to describe URIs like
+ * http://.../serviceroot
+ */
public interface UriInfoService {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriParameter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResource.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResource.java
index 80c433d,bd05d9c..a83c5da
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResource.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResource.java
@@@ -12,14 -12,21 +12,21 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Super interface for all objects representing resource parts.
+ * See {@link UriInfoResource} for details.
+ */
public interface UriResource {
+ /**
+ * @return Kind of the resource part
+ */
UriResourceKind getKind();
@Override
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceAction.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceComplexProperty.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceCount.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceCount.java
index 4572716,84722ae..96dc65a
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceCount.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceCount.java
@@@ -12,12 -12,16 +12,16 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Used to describe an $count used within an resource path
+ * For example: http://.../serviceroot/entityset(1)/$count
+ */
public interface UriResourceCount extends UriResource {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceEntitySet.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceFunction.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceIt.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceKind.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceKind.java
index 8577c55,7c087b5..ff25808
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceKind.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceKind.java
@@@ -12,13 -13,104 +12,104 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Defining the various resource part types
+ */
public enum UriResourceKind {
- action, complexProperty, count, entitySet, function, it, lambdaAll, lambdaAny,
- lambdaVariable, navigationProperty, ref, root, primitiveProperty, singleton, startingTypeFilter, value,
+
+ /**
+ * Class: {@link UriResourceAction}<br>
+ * URI: http://.../serviceroot/action()
+ */
+ action,
+
+ /**
+ * Class: {@link UriResourceComplexProperty}<br>
+ * URI: http://.../serviceroot/entityset(1)/complexproperty()
+ */
+ complexProperty,
+
+ /**
+ * Class: {@link UriResourceCount}<br>
+ * URI: http://.../serviceroot/entityset/$count
+ */
+ count,
+
+ /**
+ * Class: {@link UriResourceEntitySet}<br>
+ * URI: http://.../serviceroot/entityset
+ */
+ entitySet,
+
+ /**
+ * Class: {@link UriResourceFunction}<br>
+ * URI: http://.../serviceroot/functionimport(P1=1,P2='a')
+ */
+ function,
+
+ /**
+ * Class: {@link UriResourceIt}<br>
+ * URI: http://.../serviceroot/entityset?$filter=$it/property
+ */
+ it,
+
+ /**
+ * Class: {@link UriResourceLambdaAll}<br>
+ * URI: http://.../serviceroot/entityset/all(...)
+ */
+ lambdaAll,
+
+ /**
+ * Class: {@link UriResourceLambdaAny}<br>
+ * URI: http://.../serviceroot/entityset/any(...)
+ */
+ lambdaAny,
+
+ /**
+ * Class: {@link UriResourceLambdaVariable}<br>
+ * URI: http://.../serviceroot/entityset/listofstring/any(d: 'string' eq d)
+ */
+ lambdaVariable,
+
+ /**
+ * Class: {@link UriResourceNavigation}<br>
+ * URI: http://.../serviceroot/entityset(1)/navProperty
+ */
+ navigationProperty,
+
+ /**
+ * Class: {@link UriResourceRef}<br>
+ * URI: http://.../serviceroot/entityset/$ref
+ */
+ ref,
+
+ /**
+ * Class: {@link UriResourceRoot}<br>
+ * URI: http://.../serviceroot/entityset(1)?$filter=property eq $root/singleton/configstring
+ */
+ root,
+
+ /**
+ * Class: {@link UriResourceProperty}<br>
+ * URI: http://.../serviceroot/entityset(1)/property
+ */
+ primitiveProperty,
+
+ /**
+ * Class: {@link UriResourceSingleton}<br>
+ * URI: http://.../serviceroot/singleton
+ */
+ singleton,
+
+ /**
+ * Class: {@link UriResourceValue}<br>
+ * URI: http://.../serviceroot/entityset(1)/property/$value
+ */
+ value,
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaAll.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaAny.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaVariable.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaVariable.java
index 0000000,8c1ab93..dd71877
mode 000000,100644..100644
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaVariable.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceLambdaVariable.java
@@@ -1,0 -1,33 +1,33 @@@
-/*******************************************************************************
++/*
+ * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
++ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
++ * 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
- *
++ * 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
++ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
- ******************************************************************************/
++ */
+ package org.apache.olingo.odata4.server.api.uri;
+
+ /**
+ * Used to describe an lambda variable used within an resource path
+ * For example: http://.../serviceroot/entityset/listofstring/any(d: 'string' eq d)
+ */
+ public interface UriResourceLambdaVariable extends UriResourcePartTyped {
+
+
+ /**
+ * @return Name of the lambda variable
+ */
+ public String getVariableName();
+
+ }
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceNavigation.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourcePartTyped.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourcePrimitiveProperty.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourcePrimitiveProperty.java
index 4037565,64b0bc4..ce35335
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourcePrimitiveProperty.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourcePrimitiveProperty.java
@@@ -12,12 -12,16 +12,16 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Used to describe an primitive property used within an resource path
+ * For example: http://.../serviceroot/entityset(1)/property
+ */
public interface UriResourcePrimitiveProperty extends UriResourceProperty {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceProperty.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceRef.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceRef.java
index 2f761fa,4de993d..2d7a5ea
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceRef.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceRef.java
@@@ -12,12 -12,17 +12,17 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+
+ /**
+ * Used to describe an $ref used within an resource path
+ * For example: http://.../serviceroot/entityset/$ref
+ */
public interface UriResourceRef extends UriResource {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceRoot.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceSingleton.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceValue.java
----------------------------------------------------------------------
diff --cc odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceValue.java
index 6b622ea,f7e2912..4a6ede6
--- a/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceValue.java
+++ b/odata4-lib/odata4-server-api/src/main/java/org/apache/olingo/odata4/server/api/uri/UriResourceValue.java
@@@ -12,12 -12,16 +12,16 @@@
* 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
+ * KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- ******************************************************************************/
+ */
package org.apache.olingo.odata4.server.api.uri;
+ /**
+ * Used to describe an $value used within an resource path
+ * For example: http://.../serviceroot/entityset(1)/property/$value
+ */
public interface UriResourceValue extends UriResource {
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriInfoImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriParameterImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriResourceLambdaAllImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriResourceLambdaAnyImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriResourceLambdaVarImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/main/java/org/apache/olingo/odata4/server/core/uri/UriResourceStartingTypeFilterImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/test/java/org/apache/olingo/odata4/server/core/uri/UriInfoImplTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/test/java/org/apache/olingo/odata4/server/core/uri/UriResourceImplTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/test/java/org/apache/olingo/odata4/server/core/uri/testutil/FilterTreeToText.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/c4239fc9/odata4-lib/odata4-server-core/src/test/java/org/apache/olingo/odata4/server/core/uri/testutil/ResourceValidator.java
----------------------------------------------------------------------