http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotatableDynamicAnnotationExpression.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotatableDynamicAnnotationExpression.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotatableDynamicAnnotationExpression.java index da9691e..c530fc9 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotatableDynamicAnnotationExpression.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotatableDynamicAnnotationExpression.java @@ -21,8 +21,8 @@ package org.apache.olingo.client.core.edm.xml.annotation; import java.util.ArrayList; import java.util.List; -import org.apache.olingo.client.api.edm.xml.Annotatable; -import org.apache.olingo.client.api.edm.xml.Annotation; +import org.apache.olingo.commons.api.edm.provider.Annotatable; +import org.apache.olingo.commons.api.edm.provider.Annotation; abstract class AbstractAnnotatableDynamicAnnotationExpression extends AbstractDynamicAnnotationExpression implements Annotatable {
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotationExpression.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotationExpression.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotationExpression.java index 82c0a3d..00def87 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotationExpression.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractAnnotationExpression.java @@ -18,10 +18,10 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.ConstantAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.core.edm.xml.AbstractEdmItem; +import org.apache.olingo.commons.api.edm.provider.AbstractEdmItem; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.ConstantAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; public abstract class AbstractAnnotationExpression extends AbstractEdmItem implements AnnotationExpression { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractDynamicAnnotationExpression.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractDynamicAnnotationExpression.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractDynamicAnnotationExpression.java index f94bac6..a8d0bcd 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractDynamicAnnotationExpression.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AbstractDynamicAnnotationExpression.java @@ -18,24 +18,24 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationPath; -import org.apache.olingo.client.api.edm.xml.annotation.Apply; -import org.apache.olingo.client.api.edm.xml.annotation.Cast; -import org.apache.olingo.client.api.edm.xml.annotation.Collection; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.If; -import org.apache.olingo.client.api.edm.xml.annotation.IsOf; -import org.apache.olingo.client.api.edm.xml.annotation.LabeledElement; -import org.apache.olingo.client.api.edm.xml.annotation.LabeledElementReference; -import org.apache.olingo.client.api.edm.xml.annotation.NavigationPropertyPath; -import org.apache.olingo.client.api.edm.xml.annotation.Not; -import org.apache.olingo.client.api.edm.xml.annotation.Null; -import org.apache.olingo.client.api.edm.xml.annotation.Path; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyPath; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyValue; -import org.apache.olingo.client.api.edm.xml.annotation.Record; -import org.apache.olingo.client.api.edm.xml.annotation.TwoParamsOpDynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.UrlRef; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationPath; +import org.apache.olingo.commons.api.edm.provider.annotation.Apply; +import org.apache.olingo.commons.api.edm.provider.annotation.Cast; +import org.apache.olingo.commons.api.edm.provider.annotation.Collection; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.If; +import org.apache.olingo.commons.api.edm.provider.annotation.IsOf; +import org.apache.olingo.commons.api.edm.provider.annotation.LabeledElement; +import org.apache.olingo.commons.api.edm.provider.annotation.LabeledElementReference; +import org.apache.olingo.commons.api.edm.provider.annotation.NavigationPropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.Not; +import org.apache.olingo.commons.api.edm.provider.annotation.Null; +import org.apache.olingo.commons.api.edm.provider.annotation.Path; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyValue; +import org.apache.olingo.commons.api.edm.provider.annotation.Record; +import org.apache.olingo.commons.api.edm.provider.annotation.TwoParamsOpDynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.UrlRef; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AnnotationPathImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AnnotationPathImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AnnotationPathImpl.java index 0893613..86a7503 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AnnotationPathImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/AnnotationPathImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationPath; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationPath; public class AnnotationPathImpl extends AbstractElementOrAttributeExpression implements AnnotationPath { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ApplyImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ApplyImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ApplyImpl.java index 60ed4ae..da0fad3 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ApplyImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ApplyImpl.java @@ -21,8 +21,8 @@ package org.apache.olingo.client.core.edm.xml.annotation; import java.util.ArrayList; import java.util.List; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.Apply; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.Apply; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CastImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CastImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CastImpl.java index 48fd310..23c86ed 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CastImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CastImpl.java @@ -18,9 +18,9 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.Cast; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; import org.apache.olingo.commons.api.edm.geo.SRID; +import org.apache.olingo.commons.api.edm.provider.annotation.Cast; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CollectionImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CollectionImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CollectionImpl.java index 0dfe18e..bd48c1a 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CollectionImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/CollectionImpl.java @@ -21,8 +21,8 @@ package org.apache.olingo.client.core.edm.xml.annotation; import java.util.ArrayList; import java.util.List; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.Collection; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.Collection; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ConstantAnnotationExpressionImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ConstantAnnotationExpressionImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ConstantAnnotationExpressionImpl.java index 7530e48..5e1cc93 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ConstantAnnotationExpressionImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/ConstantAnnotationExpressionImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.ConstantAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.ConstantAnnotationExpression; public class ConstantAnnotationExpressionImpl extends AbstractAnnotationExpression implements ConstantAnnotationExpression { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/DynamicAnnotationExpressionDeserializer.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/DynamicAnnotationExpressionDeserializer.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/DynamicAnnotationExpressionDeserializer.java index e33a572..2210a08 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/DynamicAnnotationExpressionDeserializer.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/DynamicAnnotationExpressionDeserializer.java @@ -22,21 +22,21 @@ import java.io.IOException; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ClassUtils; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationPath; -import org.apache.olingo.client.api.edm.xml.annotation.Apply; -import org.apache.olingo.client.api.edm.xml.annotation.Cast; -import org.apache.olingo.client.api.edm.xml.annotation.Collection; -import org.apache.olingo.client.api.edm.xml.annotation.If; -import org.apache.olingo.client.api.edm.xml.annotation.IsOf; -import org.apache.olingo.client.api.edm.xml.annotation.LabeledElement; -import org.apache.olingo.client.api.edm.xml.annotation.NavigationPropertyPath; -import org.apache.olingo.client.api.edm.xml.annotation.Null; -import org.apache.olingo.client.api.edm.xml.annotation.Path; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyPath; -import org.apache.olingo.client.api.edm.xml.annotation.Record; -import org.apache.olingo.client.api.edm.xml.annotation.TwoParamsOpDynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.UrlRef; import org.apache.olingo.client.core.edm.xml.AbstractEdmDeserializer; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationPath; +import org.apache.olingo.commons.api.edm.provider.annotation.Apply; +import org.apache.olingo.commons.api.edm.provider.annotation.Cast; +import org.apache.olingo.commons.api.edm.provider.annotation.Collection; +import org.apache.olingo.commons.api.edm.provider.annotation.If; +import org.apache.olingo.commons.api.edm.provider.annotation.IsOf; +import org.apache.olingo.commons.api.edm.provider.annotation.LabeledElement; +import org.apache.olingo.commons.api.edm.provider.annotation.NavigationPropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.Null; +import org.apache.olingo.commons.api.edm.provider.annotation.Path; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.Record; +import org.apache.olingo.commons.api.edm.provider.annotation.TwoParamsOpDynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.UrlRef; import com.fasterxml.jackson.core.JsonLocation; import com.fasterxml.jackson.core.JsonParseException; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IfImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IfImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IfImpl.java index dd62bd4..e6dd688 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IfImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IfImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.If; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.If; public class IfImpl extends AbstractAnnotatableDynamicAnnotationExpression implements If { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IsOfImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IsOfImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IsOfImpl.java index 1c41c77..0eb95de 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IsOfImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/IsOfImpl.java @@ -18,9 +18,9 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.IsOf; import org.apache.olingo.commons.api.edm.geo.SRID; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.IsOf; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementImpl.java index 9b5a6d2..8b24a4f 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.LabeledElement; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.LabeledElement; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementReferenceImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementReferenceImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementReferenceImpl.java index 0da0ce5..7bd3a14 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementReferenceImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/LabeledElementReferenceImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.LabeledElementReference; +import org.apache.olingo.commons.api.edm.provider.annotation.LabeledElementReference; public class LabeledElementReferenceImpl extends AbstractElementOrAttributeExpression implements LabeledElementReference { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NavigationPropertyPathImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NavigationPropertyPathImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NavigationPropertyPathImpl.java index c93cd09..8e04ebb 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NavigationPropertyPathImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NavigationPropertyPathImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.NavigationPropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.NavigationPropertyPath; public class NavigationPropertyPathImpl extends AbstractElementOrAttributeExpression implements NavigationPropertyPath { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NotImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NotImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NotImpl.java index 7013e30..044385d 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NotImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NotImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.Not; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.Not; public class NotImpl extends AbstractDynamicAnnotationExpression implements Not { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NullImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NullImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NullImpl.java index f779b5f..0aa5d61 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NullImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/NullImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.Null; +import org.apache.olingo.commons.api.edm.provider.annotation.Null; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PathImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PathImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PathImpl.java index 73e9571..a3597e0 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PathImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PathImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.Path; +import org.apache.olingo.commons.api.edm.provider.annotation.Path; public class PathImpl extends AbstractElementOrAttributeExpression implements Path { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyPathImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyPathImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyPathImpl.java index f8d1916..97dd2e6 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyPathImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyPathImpl.java @@ -18,7 +18,7 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyPath; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyPath; public class PropertyPathImpl extends AbstractElementOrAttributeExpression implements PropertyPath { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyValueImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyValueImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyValueImpl.java index 61cf85d..5f36ec8 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyValueImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/PropertyValueImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyValue; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyValue; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/RecordImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/RecordImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/RecordImpl.java index 46f322b..bafb185 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/RecordImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/RecordImpl.java @@ -21,8 +21,8 @@ package org.apache.olingo.client.core.edm.xml.annotation; import java.util.ArrayList; import java.util.List; -import org.apache.olingo.client.api.edm.xml.annotation.PropertyValue; -import org.apache.olingo.client.api.edm.xml.annotation.Record; +import org.apache.olingo.commons.api.edm.provider.annotation.PropertyValue; +import org.apache.olingo.commons.api.edm.provider.annotation.Record; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/TwoParamsOpDynamicAnnotationExpressionImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/TwoParamsOpDynamicAnnotationExpressionImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/TwoParamsOpDynamicAnnotationExpressionImpl.java index 5b1f7fa..00857c3 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/TwoParamsOpDynamicAnnotationExpressionImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/TwoParamsOpDynamicAnnotationExpressionImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.DynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.TwoParamsOpDynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.DynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.TwoParamsOpDynamicAnnotationExpression; public class TwoParamsOpDynamicAnnotationExpressionImpl extends AbstractDynamicAnnotationExpression implements TwoParamsOpDynamicAnnotationExpression { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/UrlRefImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/UrlRefImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/UrlRefImpl.java index 3e7eeba..9ec31b0 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/UrlRefImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/edm/xml/annotation/UrlRefImpl.java @@ -18,8 +18,8 @@ */ package org.apache.olingo.client.core.edm.xml.annotation; -import org.apache.olingo.client.api.edm.xml.annotation.AnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.UrlRef; +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.UrlRef; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataReaderImpl.java ---------------------------------------------------------------------- diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataReaderImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataReaderImpl.java index 1b38732..98d817b 100644 --- a/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataReaderImpl.java +++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/serialization/ODataReaderImpl.java @@ -26,7 +26,6 @@ import org.apache.commons.io.IOUtils; import org.apache.olingo.client.api.ODataClient; import org.apache.olingo.client.api.data.ServiceDocument; import org.apache.olingo.client.api.domain.ODataEntitySetIterator; -import org.apache.olingo.client.api.edm.xml.Schema; import org.apache.olingo.client.api.edm.xml.XMLMetadata; import org.apache.olingo.client.api.serialization.ODataReader; import org.apache.olingo.client.core.edm.EdmClientImpl; @@ -42,6 +41,7 @@ import org.apache.olingo.commons.api.domain.ODataServiceDocument; import org.apache.olingo.commons.api.domain.ODataValue; import org.apache.olingo.commons.api.edm.Edm; import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind; +import org.apache.olingo.commons.api.edm.provider.Schema; import org.apache.olingo.commons.api.format.ODataFormat; import org.apache.olingo.commons.api.serialization.ODataDeserializerException; import org.slf4j.Logger; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/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 8a4da6f..2bea290 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 @@ -26,21 +26,7 @@ import static org.junit.Assert.assertTrue; import java.util.List; import org.apache.olingo.client.api.ODataClient; -import org.apache.olingo.client.api.edm.xml.Annotation; -import org.apache.olingo.client.api.edm.xml.Annotations; -import org.apache.olingo.client.api.edm.xml.ComplexType; -import org.apache.olingo.client.api.edm.xml.EntityContainer; -import org.apache.olingo.client.api.edm.xml.EntityType; -import org.apache.olingo.client.api.edm.xml.Function; -import org.apache.olingo.client.api.edm.xml.FunctionImport; -import org.apache.olingo.client.api.edm.xml.Schema; -import org.apache.olingo.client.api.edm.xml.Singleton; import org.apache.olingo.client.api.edm.xml.XMLMetadata; -import org.apache.olingo.client.api.edm.xml.annotation.Apply; -import org.apache.olingo.client.api.edm.xml.annotation.Collection; -import org.apache.olingo.client.api.edm.xml.annotation.ConstantAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.TwoParamsOpDynamicAnnotationExpression; -import org.apache.olingo.client.api.edm.xml.annotation.UrlRef; import org.apache.olingo.client.core.AbstractTest; import org.apache.olingo.client.core.edm.xml.annotation.ConstantAnnotationExpressionImpl; import org.apache.olingo.client.core.edm.xml.annotation.PathImpl; @@ -63,6 +49,20 @@ import org.apache.olingo.commons.api.edm.EdmTypeDefinition; import org.apache.olingo.commons.api.edm.FullQualifiedName; import org.apache.olingo.commons.api.edm.annotation.EdmUrlRef; import org.apache.olingo.commons.api.edm.constants.EdmTypeKind; +import org.apache.olingo.commons.api.edm.provider.Annotation; +import org.apache.olingo.commons.api.edm.provider.Annotations; +import org.apache.olingo.commons.api.edm.provider.ComplexType; +import org.apache.olingo.commons.api.edm.provider.EntityContainer; +import org.apache.olingo.commons.api.edm.provider.EntityType; +import org.apache.olingo.commons.api.edm.provider.Function; +import org.apache.olingo.commons.api.edm.provider.FunctionImport; +import org.apache.olingo.commons.api.edm.provider.Schema; +import org.apache.olingo.commons.api.edm.provider.Singleton; +import org.apache.olingo.commons.api.edm.provider.annotation.Apply; +import org.apache.olingo.commons.api.edm.provider.annotation.Collection; +import org.apache.olingo.commons.api.edm.provider.annotation.ConstantAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.TwoParamsOpDynamicAnnotationExpression; +import org.apache.olingo.commons.api.edm.provider.annotation.UrlRef; import org.apache.olingo.commons.api.format.ODataFormat; import org.apache.olingo.commons.core.edm.primitivetype.EdmDecimal; import org.apache.olingo.commons.core.edm.primitivetype.EdmInt32; @@ -193,7 +193,6 @@ public class MetadataTest extends AbstractTest { final EntityContainer entityContainer = second.getEntityContainer(); assertNotNull(entityContainer); assertEquals("NorthwindEntities", entityContainer.getName()); - assertTrue(entityContainer.isLazyLoadingEnabled()); } /** @@ -209,7 +208,7 @@ public class MetadataTest extends AbstractTest { assertEquals("Org.OData.Measures.V1", metadata.getReferences().get(1).getIncludes().get(0).getNamespace()); final EntityType product = metadata.getSchema(0).getEntityType("Product"); - assertTrue(product.isHasStream()); + assertTrue(product.hasStream()); assertEquals("UoM.ISOCurrency", product.getProperty("Price").getAnnotations().get(0).getTerm()); assertEquals("Products", product.getNavigationProperty("Supplier").getPartner()); http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmNavigationProperty.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmNavigationProperty.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmNavigationProperty.java index 199de6c..ff0936c 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmNavigationProperty.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmNavigationProperty.java @@ -33,7 +33,7 @@ public interface EdmNavigationProperty extends EdmElement, EdmAnnotationsTarget, /** * @return true if nullable or null if not specified */ - Boolean isNullable(); + boolean isNullable(); /** * @return true if containsTarget or null if not specified http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmParameter.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmParameter.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmParameter.java index 42380aa..79c3e20 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmParameter.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmParameter.java @@ -28,7 +28,7 @@ public interface EdmParameter extends EdmElement, EdmMappable, EdmAnnotatable { /** * @return true if nullable or null if not specified */ - Boolean isNullable(); + boolean isNullable(); /** * @return the maximum length as an Integer or null if not specified http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmProperty.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmProperty.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmProperty.java index 68bbd94..50028f3 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmProperty.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmProperty.java @@ -44,7 +44,7 @@ public interface EdmProperty extends EdmElement, EdmMappable, EdmAnnotationsTarg /** * @return true if nullable or null if not specified */ - Boolean isNullable(); + boolean isNullable(); /** * @return the maximum length as an Integer or null if not specified @@ -69,7 +69,7 @@ public interface EdmProperty extends EdmElement, EdmMappable, EdmAnnotationsTarg /** * @return true if unicode or null if not specified */ - Boolean isUnicode(); + boolean isUnicode(); /** * @return the default value as a String or null if not specified http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmReturnType.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmReturnType.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmReturnType.java index 46d3249..5b1b22a 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmReturnType.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmReturnType.java @@ -28,7 +28,7 @@ public interface EdmReturnType extends EdmTyped { /** * @return true if nullable or null if not specified */ - Boolean isNullable(); + boolean isNullable(); /** * @return the maximum length as an Integer or null if not specified http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/FullQualifiedName.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/FullQualifiedName.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/FullQualifiedName.java index 4657b20..61a6ff1 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/FullQualifiedName.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/FullQualifiedName.java @@ -18,13 +18,17 @@ */ package org.apache.olingo.commons.api.edm; +import java.io.Serializable; + import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; /** * A full qualified name of any element in the EDM consists of a name and a namespace. */ -public class FullQualifiedName { +public class FullQualifiedName implements Serializable{ + + private static final long serialVersionUID = -4063629050858999076L; private final String namespace; http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/Target.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/Target.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/Target.java index 91b1c98..5fb2259 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/Target.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/Target.java @@ -33,16 +33,20 @@ public class Target { private final Target instance; public Builder(final String target, final EdmEntityContainer defaultContainer) { - final String[] bindingTargetParts = target.split("/"); - - instance = new Target(); - if (bindingTargetParts.length == 1) { - instance.setEntityContainer(defaultContainer.getFullQualifiedName()). - setTargetName(bindingTargetParts[0]); + if (target != null) { + final String[] bindingTargetParts = target.split("/"); + instance = new Target(); + if (bindingTargetParts.length == 1) { + instance.setEntityContainer(defaultContainer.getFullQualifiedName()). + setTargetName(bindingTargetParts[0]); + } else { + instance.setEntityContainer(new FullQualifiedName(bindingTargetParts[0])). + setTargetName(bindingTargetParts[1]); + } } else { - instance.setEntityContainer(new FullQualifiedName(bindingTargetParts[0])). - setTargetName(bindingTargetParts[1]); + instance = null; } + } public Target build() { @@ -74,4 +78,12 @@ public class Target { return this; } + @Override + public String toString() { + if(entityContainer == null){ + return targetName; + } + return entityContainer.getFullQualifiedNameAsString() + "/" + targetName; + } + } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AbstractEdmItem.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AbstractEdmItem.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AbstractEdmItem.java new file mode 100644 index 0000000..0c375ae --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AbstractEdmItem.java @@ -0,0 +1,64 @@ +/* + * 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.provider; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import org.apache.commons.lang3.builder.EqualsBuilder; +import org.apache.commons.lang3.builder.HashCodeBuilder; +import org.apache.commons.lang3.builder.ReflectionToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +public abstract class AbstractEdmItem implements Serializable { + + private static final long serialVersionUID = 241190986363884784L; + + protected <T extends Named> T getOneByName(final String name, final Collection<T> items) { + final List<T> result = getAllByName(name, items); + return result.isEmpty() ? null : result.get(0); + } + + protected <T extends Named> List<T> getAllByName(final String name, final Collection<T> items) { + final List<T> result = new ArrayList<T>(); + for (T type : items) { + if (name.equals(type.getName())) { + result.add(type); + } + } + return result; + } + + @Override + public boolean equals(final Object obj) { + return EqualsBuilder.reflectionEquals(this, obj); + } + + @Override + public int hashCode() { + return HashCodeBuilder.reflectionHashCode(this); + } + + @Override + public String toString() { + return ReflectionToStringBuilder.toString(this, ToStringStyle.MULTI_LINE_STYLE); + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Action.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Action.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Action.java new file mode 100644 index 0000000..1a614a7 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Action.java @@ -0,0 +1,56 @@ +/* + * 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.provider; + +import java.util.List; + +public class Action extends Operation { + + private static final long serialVersionUID = 211295197043448841L; + + @Override + public Action setName(final String name) { + this.name = name; + return this; + } + + @Override + public Action setBound(final boolean isBound) { + this.isBound = isBound; + return this; + } + + @Override + public Action setEntitySetPath(final String entitySetPath) { + this.entitySetPath = entitySetPath; + return this; + } + + @Override + public Action setParameters(final List<Parameter> parameters) { + this.parameters = parameters; + return this; + } + + @Override + public Action setReturnType(final ReturnType returnType) { + this.returnType = returnType; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ActionImport.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ActionImport.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ActionImport.java new file mode 100644 index 0000000..a773039 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ActionImport.java @@ -0,0 +1,59 @@ +/* + * 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.provider; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + + +public class ActionImport extends OperationImport { + + private static final long serialVersionUID = 9186148718228340987L; + + private FullQualifiedName action; + + @Override + public ActionImport setName(final String name) { + this.name = name; + return this; + } + + @Override + public ActionImport setEntitySet(final String entitySet) { + this.entitySet = entitySet; + return this; + } + + public String getAction() { + return action.getFullQualifiedNameAsString(); + } + + public FullQualifiedName getActionFQN() { + return action; + } + + public ActionImport setAction(final String action) { + this.action = new FullQualifiedName(action); + return this; + } + + public ActionImport setAction(final FullQualifiedName action) { + this.action = action; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AliasInfo.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AliasInfo.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AliasInfo.java new file mode 100644 index 0000000..b4493f5 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/AliasInfo.java @@ -0,0 +1,45 @@ +/* + * 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.provider; + +public class AliasInfo { + + private String namespace; + + private String alias; + + public String getNamespace() { + return namespace; + } + + public AliasInfo setNamespace(final String namespace) { + this.namespace = namespace; + return this; + } + + public String getAlias() { + return alias; + } + + public AliasInfo setAlias(final String alias) { + this.alias = alias; + return this; + } + +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotatable.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotatable.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotatable.java new file mode 100644 index 0000000..1e97719 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotatable.java @@ -0,0 +1,26 @@ +/* + * 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.provider; + +import java.util.List; + +public interface Annotatable { + + List<Annotation> getAnnotations(); +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotation.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotation.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotation.java new file mode 100644 index 0000000..ed1d8a4 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotation.java @@ -0,0 +1,80 @@ +/* + * 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.provider; + +import java.util.List; + +import org.apache.olingo.commons.api.edm.provider.annotation.AnnotationExpression; + +public class Annotation extends AbstractEdmItem implements Annotatable{ + + private static final long serialVersionUID = -7137313445729486860L; + + private String term; + + // Target should be a target path +// private String targetPath; + private String qualifier; + + private AnnotationExpression expression; + + private List<Annotation> annotation; + + public String getTerm() { + return term; + } + + public Annotation setTerm(final String term) { + this.term = term; + return this; + } + + public String getQualifier() { + return qualifier; + } + + public Annotation setQualifier(final String qualifier) { + this.qualifier = qualifier; + return this; + } + + public AnnotationExpression getExpression() { + return expression; + } + + public Annotation setExpression(final AnnotationExpression expression) { + this.expression = expression; + return this; + } + + public List<Annotation> getAnnotation() { + return annotation; + } + + public Annotation setAnnotation(final List<Annotation> annotation) { + this.annotation = annotation; + return this; + } + + @Override + public List<Annotation> getAnnotations() { + // TODO Auto-generated method stub + return null; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotations.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotations.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotations.java new file mode 100644 index 0000000..c01566d --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/Annotations.java @@ -0,0 +1,66 @@ +/* + * 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.provider; + +import java.util.ArrayList; +import java.util.List; + +public class Annotations extends AbstractEdmItem implements Annotatable{ + + private static final long serialVersionUID = 8283036066408166150L; + + private final List<Annotation> annotations = new ArrayList<Annotation>(); + + private String target; + + private String qualifier; + + public String getTarget() { + return target; + } + + public Annotations setTarget(final String target) { + this.target = target; + return this; + } + + public String getQualifier() { + return qualifier; + } + + public Annotations setQualifier(final String qualifier) { + this.qualifier = qualifier; + return this; + } + + @Override + public List<Annotation> getAnnotations() { + return annotations; + } + + public Annotation getAnnotation(final String term) { + Annotation result = null; + for (Annotation annotation : getAnnotations()) { + if (term.equals(annotation.getTerm())) { + result = annotation; + } + } + return result; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/BindingTarget.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/BindingTarget.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/BindingTarget.java new file mode 100644 index 0000000..4612857 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/BindingTarget.java @@ -0,0 +1,79 @@ +/* + * 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.provider; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public abstract class BindingTarget extends AbstractEdmItem implements Named, Annotatable { + + private static final long serialVersionUID = -7011724617956042182L; + + protected String name; + + protected FullQualifiedName type; + + protected List<NavigationPropertyBinding> navigationPropertyBindings = new ArrayList<NavigationPropertyBinding>(); + + private final List<Annotation> annotations = new ArrayList<Annotation>(); + + public String getName() { + return name; + } + + public BindingTarget setName(final String name) { + this.name = name; + return this; + } + + public String getType() { + return type.getFullQualifiedNameAsString(); + } + + public FullQualifiedName getTypeFQN() { + return type; + } + + public BindingTarget setType(final String type) { + this.type = new FullQualifiedName(type); + return this; + } + + public BindingTarget setType(final FullQualifiedName type) { + this.type = type; + return this; + } + + public List<NavigationPropertyBinding> getNavigationPropertyBindings() { + return navigationPropertyBindings; + } + + public BindingTarget setNavigationPropertyBindings(final List<NavigationPropertyBinding> navigationPropertyBindings) { + this.navigationPropertyBindings = navigationPropertyBindings; + return this; + } + + @Override + public List<Annotation> getAnnotations() { + return annotations; + } + +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ComplexType.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ComplexType.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ComplexType.java new file mode 100644 index 0000000..07f4d3b --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/ComplexType.java @@ -0,0 +1,70 @@ +/* + * 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.provider; + +import java.util.List; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public class ComplexType extends StructuralType { + + private static final long serialVersionUID = 1089771609327713928L; + + @Override + public ComplexType setName(final String name) { + this.name = name; + return this; + } + + @Override + public ComplexType setOpenType(final boolean isOpenType) { + this.isOpenType = isOpenType; + return this; + } + + @Override + public ComplexType setBaseType(final String baseType) { + this.baseType = new FullQualifiedName(baseType); + return this; + } + + @Override + public ComplexType setBaseType(final FullQualifiedName baseType) { + this.baseType = baseType; + return this; + } + + @Override + public ComplexType setAbstract(final boolean isAbstract) { + this.isAbstract = isAbstract; + return this; + } + + @Override + public ComplexType setProperties(final List<Property> properties) { + this.properties = properties; + return this; + } + + @Override + public ComplexType setNavigationProperties(final List<NavigationProperty> navigationProperties) { + this.navigationProperties = navigationProperties; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EdmProvider.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EdmProvider.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EdmProvider.java new file mode 100644 index 0000000..d221ca1 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EdmProvider.java @@ -0,0 +1,195 @@ +/* + * 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.provider; + +import org.apache.olingo.commons.api.ODataException; +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +import java.util.List; + +public abstract class EdmProvider { + + /** + * This method should return an {@link EnumType} or <b>null</b> if nothing is found + * + * @param enumTypeName + * @return {@link EnumType} for given name + * @throws ODataException + */ + public EnumType getEnumType(final FullQualifiedName enumTypeName) throws ODataException { + return null; + } + + /** + * This method should return an {@link TypeDefinition} or <b>null</b> if nothing is found + * + * @param typeDefinitionName + * @return {@link TypeDefinition} for given name + * @throws ODataException + */ + public TypeDefinition getTypeDefinition(final FullQualifiedName typeDefinitionName) throws ODataException { + return null; + } + + /** + * This method should return an {@link EntityType} or <b>null</b> if nothing is found + * + * @param entityTypeName + * @return {@link EntityType} for the given name + * @throws ODataException + */ + public EntityType getEntityType(final FullQualifiedName entityTypeName) throws ODataException { + return null; + } + + /** + * This method should return a {@link ComplexType} or <b>null</b> if nothing is found. + * + * @param complexTypeName + * @return {@link ComplexType} for the given name + * @throws ODataException + */ + public ComplexType getComplexType(final FullQualifiedName complexTypeName) throws ODataException { + return null; + } + + /** + * This method should return a list of all {@link Action} for the FullQualifiedname or <b>null</b> if nothing is found + * + * @param actionName + * @return List of {@link Action} or null + * @throws ODataException + */ + public List<Action> getActions(final FullQualifiedName actionName) throws ODataException { + return null; + } + + /** + * This method should return a list of all {@link Function} for the FullQualifiedname or <b>null</b> if nothing is + * found + * + * @param functionName + * @return List of {@link Function} or null + * @throws ODataException + */ + public List<Function> getFunctions(final FullQualifiedName functionName) throws ODataException { + return null; + } + + /** + * This method should return a {@link Term} for the FullQualifiedName or <b>null</b> if nothing is found. + * @param termName the name of the Term + * @return {@link Term} or null + * @throws ODataException + */ + public Term getTerm(final FullQualifiedName termName) throws ODataException { + return null; + } + + /** + * This method should return an {@link EntitySet} or <b>null</b> if nothing is found + * + * @param entityContainer this EntitySet is contained in + * @param entitySetName + * @return {@link EntitySet} for the given container and entityset name + * @throws ODataException + */ + public EntitySet getEntitySet(final FullQualifiedName entityContainer, final String entitySetName) + throws ODataException { + return null; + } + + /** + * This method should return an {@link Singleton} or <b>null</b> if nothing is found + * + * @param entityContainer this Singleton is contained in + * @param singletonName + * @return {@link Singleton} for given container and singleton name + * @throws ODataException + */ + public Singleton getSingleton(final FullQualifiedName entityContainer, final String singletonName) + throws ODataException { + return null; + } + + /** + * This method should return an {@link ActionImport} or <b>null</b> if nothing is found + * + * @param entityContainer this ActionImport is contained in + * @param actionImportName + * @return {@link ActionImport} for the given container and ActionImport name + * @throws ODataException + */ + public ActionImport getActionImport(final FullQualifiedName entityContainer, final String actionImportName) + throws ODataException { + return null; + } + + /** + * This method should return a {@link FunctionImport} or <b>null</b> if nothing is found + * + * @param entityContainer this FunctionImport is contained in + * @param functionImportName + * @return {@link FunctionImport} for the given container name and function import name + * @throws ODataException + */ + public FunctionImport getFunctionImport(final FullQualifiedName entityContainer, final String functionImportName) + throws ODataException { + return null; + } + + /** + * This method should return an {@link EntityContainerInfo} or <b>null</b> if nothing is found + * + * @param entityContainerName (null for default container) + * @return {@link EntityContainerInfo} for the given name + * @throws ODataException + */ + public EntityContainerInfo getEntityContainerInfo(final FullQualifiedName entityContainerName) throws ODataException { + return null; + } + + /** + * This method should return a list of all namespaces which have an alias + * + * @return List of alias info + * @throws ODataException + */ + public List<AliasInfo> getAliasInfos() throws ODataException { + return null; + } + + /** + * This method should return a collection of all {@link Schema} + * + * @return List<{@link Schema}> + * @throws ODataException + */ + public List<Schema> getSchemas() throws ODataException { + return null; + } + + /** + * Returns the entity container of this edm + * @return {@link EntityContainer} of this edm + */ + public EntityContainer getEntityContainer() throws ODataException { + return null; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainer.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainer.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainer.java new file mode 100644 index 0000000..802da48 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainer.java @@ -0,0 +1,159 @@ +/* + * 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.provider; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public class EntityContainer extends AbstractEdmItem implements Named, Annotatable { + + private static final long serialVersionUID = 5384682515007129458L; + + private String name; + + private FullQualifiedName extendsContainer; + + private List<EntitySet> entitySets = new ArrayList<EntitySet>(); + + private List<ActionImport> actionImports = new ArrayList<ActionImport>(); + + private List<FunctionImport> functionImports = new ArrayList<FunctionImport>(); + + private List<Singleton> singletons = new ArrayList<Singleton>(); + + private final List<Annotation> annotations = new ArrayList<Annotation>(); + + // Annotations + public String getName() { + return name; + } + + public EntityContainer setName(final String name) { + this.name = name; + return this; + } + + public String getExtendsContainer() { + if (extendsContainer != null) { + return extendsContainer.getFullQualifiedNameAsString(); + } + return null; + } + + public FullQualifiedName getExtendsContainerFQN() { + return extendsContainer; + } + + public EntityContainer setExtendsContainer(final String extendsContainer) { + this.extendsContainer = new FullQualifiedName(extendsContainer); + return this; + } + + public List<EntitySet> getEntitySets() { + return entitySets; + } + + public EntitySet getEntitySet(final String name) { + return getOneByName(name, getEntitySets()); + } + + public EntityContainer setEntitySets(final List<EntitySet> entitySets) { + this.entitySets = entitySets; + return this; + } + + public List<ActionImport> getActionImports() { + return actionImports; + } + + /** + * Gets the first action import with given name. + * + * @param name name. + * @return action import. + */ + public ActionImport getActionImport(final String name) { + return getOneByName(name, getActionImports()); + } + + /** + * Gets all action imports with given name. + * + * @param name name. + * @return action imports. + */ + public List<ActionImport> getActionImports(final String name) { + return getAllByName(name, getActionImports()); + } + + public EntityContainer setActionImports(final List<ActionImport> actionImports) { + this.actionImports = actionImports; + return this; + } + + public List<FunctionImport> getFunctionImports() { + return functionImports; + } + + /** + * Gets the first function import with given name. + * + * @param name name. + * @return function import. + */ + public FunctionImport getFunctionImport(final String name) { + return getOneByName(name, getFunctionImports()); + } + + /** + * Gets all function imports with given name. + * + * @param name name. + * @return function imports. + */ + public List<FunctionImport> getFunctionImports(final String name) { + return getAllByName(name, getFunctionImports()); + } + + public EntityContainer setFunctionImports(final List<FunctionImport> functionImports) { + this.functionImports = functionImports; + return this; + } + + public List<Singleton> getSingletons() { + return singletons; + } + + public Singleton getSingleton(final String name) { + return getOneByName(name, getSingletons()); + } + + public EntityContainer setSingletons(final List<Singleton> singletons) { + this.singletons = singletons; + return this; + } + + @Override + public List<Annotation> getAnnotations() { + return annotations; + } + +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainerInfo.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainerInfo.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainerInfo.java new file mode 100644 index 0000000..8de97de --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityContainerInfo.java @@ -0,0 +1,47 @@ +/* + * 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.provider; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public class EntityContainerInfo { + + private FullQualifiedName containerName; + + private FullQualifiedName extendsContainer; + + public FullQualifiedName getContainerName() { + return containerName; + } + + public EntityContainerInfo setContainerName(final FullQualifiedName containerName) { + this.containerName = containerName; + return this; + } + + public FullQualifiedName getExtendsContainer() { + return extendsContainer; + } + + public EntityContainerInfo setExtendsContainer(final FullQualifiedName extendsContainer) { + this.extendsContainer = extendsContainer; + return this; + } + +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySet.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySet.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySet.java new file mode 100644 index 0000000..b6356f7 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySet.java @@ -0,0 +1,63 @@ +/* + * 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.provider; + +import java.util.List; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public class EntitySet extends BindingTarget { + + private static final long serialVersionUID = 5291570018480936643L; + + private boolean includeInServiceDocument = true; + + @Override + public EntitySet setName(final String name) { + this.name = name; + return this; + } + + @Override + public EntitySet setNavigationPropertyBindings(final List<NavigationPropertyBinding> navigationPropertyBindings) { + this.navigationPropertyBindings = navigationPropertyBindings; + return this; + } + + @Override + public EntitySet setType(final String type) { + this.type = new FullQualifiedName(type); + return this; + } + + @Override + public EntitySet setType(final FullQualifiedName type) { + this.type = type; + return this; + } + + public boolean isIncludeInServiceDocument() { + return includeInServiceDocument; + } + + public EntitySet setIncludeInServiceDocument(final boolean includeInServiceDocument) { + this.includeInServiceDocument = includeInServiceDocument; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySetPath.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySetPath.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySetPath.java new file mode 100644 index 0000000..3bc8d45 --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntitySetPath.java @@ -0,0 +1,44 @@ +/* + * 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.provider; + +public class EntitySetPath { + + private String bindingParameter; + + private String path; + + public String getBindingParameter() { + return bindingParameter; + } + + public EntitySetPath setBindingParameter(final String bindingParameter) { + this.bindingParameter = bindingParameter; + return this; + } + + public String getPath() { + return path; + } + + public EntitySetPath setPath(final String path) { + this.path = path; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityType.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityType.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityType.java new file mode 100644 index 0000000..9994e9e --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EntityType.java @@ -0,0 +1,92 @@ +/* + * 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.provider; + +import java.util.List; + +import org.apache.olingo.commons.api.edm.FullQualifiedName; + +public class EntityType extends StructuralType { + + private static final long serialVersionUID = -1564752618679704024L; + + private List<PropertyRef> key; + + private boolean hasStream = false; + + public boolean hasStream() { + return hasStream; + } + + public EntityType setHasStream(final boolean hasStream) { + this.hasStream = hasStream; + return this; + } + + public List<PropertyRef> getKey() { + return key; + } + + public EntityType setKey(final List<PropertyRef> key) { + this.key = key; + return this; + } + + @Override + public EntityType setName(final String name) { + this.name = name; + return this; + } + + @Override + public EntityType setOpenType(final boolean isOpenType) { + this.isOpenType = isOpenType; + return this; + } + + @Override + public EntityType setBaseType(final String baseType) { + this.baseType = new FullQualifiedName(baseType); + return this; + } + + @Override + public EntityType setBaseType(final FullQualifiedName baseType) { + this.baseType = baseType; + return this; + } + + @Override + public EntityType setAbstract(final boolean isAbstract) { + this.isAbstract = isAbstract; + return this; + } + + @Override + public EntityType setProperties(final List<Property> properties) { + this.properties = properties; + return this; + } + + @Override + public EntityType setNavigationProperties(final List<NavigationProperty> navigationProperties) { + this.navigationProperties = navigationProperties; + return this; + } +} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/8a58a678/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EnumMember.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EnumMember.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EnumMember.java new file mode 100644 index 0000000..2787e3f --- /dev/null +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/provider/EnumMember.java @@ -0,0 +1,57 @@ +/* + * 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.provider; + +import java.util.ArrayList; +import java.util.List; + +public class EnumMember extends AbstractEdmItem implements Named, Annotatable{ + + private static final long serialVersionUID = 5618984420582832094L; + + private String name; + + private String value; + + private final List<Annotation> annotations = new ArrayList<Annotation>(); + + public String getName() { + return name; + } + + public EnumMember setName(final String name) { + this.name = name; + return this; + } + + public String getValue() { + return value; + } + + public EnumMember setValue(final String value) { + this.value = value; + return this; + } + + @Override + public List<Annotation> getAnnotations() { + return annotations; + } + +}
