You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2013/09/24 14:43:17 UTC

[50/51] [partial] Refactored project structure

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/.gitignore
----------------------------------------------------------------------
diff --git a/jpa-annotation/.gitignore b/jpa-annotation/.gitignore
deleted file mode 100644
index 8b3fd61..0000000
--- a/jpa-annotation/.gitignore
+++ /dev/null
@@ -1,8 +0,0 @@
-.project
-.classpath
-.settings
-target
-bin
-*.bak
-classes
-.DS_Store

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/pom.xml
----------------------------------------------------------------------
diff --git a/jpa-annotation/pom.xml b/jpa-annotation/pom.xml
deleted file mode 100644
index 7c29c0b..0000000
--- a/jpa-annotation/pom.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-         or more contributor license agreements.  See the NOTICE file
-         distributed with this work for additional information
-         regarding copyright ownership.  The ASF licenses this file
-         to you under the Apache License, Version 2.0 (the
-         "License"); you may not use this file except in compliance
-         with the License.  You may obtain a copy of the License at
-  
-           http://www.apache.org/licenses/LICENSE-2.0
-  
-         Unless required by applicable law or agreed to in writing,
-         software distributed under the License is distributed on an
-         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-         KIND, either express or implied.  See the License for the
-         specific language governing permissions and limitations
-         under the License.
--->
-<project
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-	<modelVersion>4.0.0</modelVersion>
-	
-	<parent>
-		<groupId>org.apache.olingo</groupId>
-		<artifactId>olingo.odata2.parent</artifactId>
-		<version>1.0.0-SNAPSHOT</version>
-		<relativePath>..</relativePath>
-	</parent>
-
-	<artifactId>olingo.odata2.api.annotation</artifactId>
-	<name>${project.artifactId}</name>
-
-	<dependencies>
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<version>3.8.1</version>
-			<scope>test</scope>
-		</dependency>
-	</dependencies>
-
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/META-INF/MANIFEST.MF
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/META-INF/MANIFEST.MF b/jpa-annotation/src/main/java/META-INF/MANIFEST.MF
deleted file mode 100644
index 5e94951..0000000
--- a/jpa-annotation/src/main/java/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-Class-Path: 
-

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Documentation.java
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Documentation.java b/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Documentation.java
deleted file mode 100644
index f37c766..0000000
--- a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Documentation.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- *        or more contributor license agreements.  See the NOTICE file
- *        distributed with this work for additional information
- *        regarding copyright ownership.  The ASF licenses this file
- *        to you under the Apache License, Version 2.0 (the
- *        "License"); you may not use this file except in compliance
- *        with the License.  You may obtain a copy of the License at
- * 
- *          http://www.apache.org/licenses/LICENSE-2.0
- * 
- *        Unless required by applicable law or agreed to in writing,
- *        software distributed under the License is distributed on an
- *        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *        KIND, either express or implied.  See the License for the
- *        specific language governing permissions and limitations
- *        under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.api.annotation.edm;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.ANNOTATION_TYPE)
-public @interface Documentation {
-  String summary() default "";
-
-  String longDescription() default "";
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Facets.java
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Facets.java b/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Facets.java
deleted file mode 100644
index d59a3de..0000000
--- a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Facets.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- *        or more contributor license agreements.  See the NOTICE file
- *        distributed with this work for additional information
- *        regarding copyright ownership.  The ASF licenses this file
- *        to you under the Apache License, Version 2.0 (the
- *        "License"); you may not use this file except in compliance
- *        with the License.  You may obtain a copy of the License at
- * 
- *          http://www.apache.org/licenses/LICENSE-2.0
- * 
- *        Unless required by applicable law or agreed to in writing,
- *        software distributed under the License is distributed on an
- *        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *        KIND, either express or implied.  See the License for the
- *        specific language governing permissions and limitations
- *        under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.api.annotation.edm;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.ANNOTATION_TYPE)
-public @interface Facets {
-  int maxLength() default 0;
-
-  int scale() default -1;
-
-  int precision() default 0;
-
-  boolean nullable() default false;
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/FunctionImport.java
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/FunctionImport.java b/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/FunctionImport.java
deleted file mode 100644
index 5101cc3..0000000
--- a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/FunctionImport.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- *        or more contributor license agreements.  See the NOTICE file
- *        distributed with this work for additional information
- *        regarding copyright ownership.  The ASF licenses this file
- *        to you under the Apache License, Version 2.0 (the
- *        "License"); you may not use this file except in compliance
- *        with the License.  You may obtain a copy of the License at
- * 
- *          http://www.apache.org/licenses/LICENSE-2.0
- * 
- *        Unless required by applicable law or agreed to in writing,
- *        software distributed under the License is distributed on an
- *        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *        KIND, either express or implied.  See the License for the
- *        specific language governing permissions and limitations
- *        under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.api.annotation.edm;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-import org.apache.olingo.odata2.api.annotation.edmx.HttpMethod;
-import org.apache.olingo.odata2.api.annotation.edmx.HttpMethod.Name;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.METHOD)
-public @interface FunctionImport {
-
-  enum ReturnType {
-    SCALAR, ENTITY_TYPE, COMPLEX_TYPE, NONE
-  }
-
-  enum Multiplicity {
-    MANY, ONE
-  }
-
-  String name() default "";
-
-  String entitySet() default "";
-
-  ReturnType returnType();
-
-  Multiplicity multiplicity() default Multiplicity.ONE;
-
-  HttpMethod httpMethod() default @HttpMethod(name = Name.GET);
-
-  Documentation documentation() default @Documentation;
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Parameter.java
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Parameter.java b/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Parameter.java
deleted file mode 100644
index ee685e4..0000000
--- a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edm/Parameter.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- *        or more contributor license agreements.  See the NOTICE file
- *        distributed with this work for additional information
- *        regarding copyright ownership.  The ASF licenses this file
- *        to you under the Apache License, Version 2.0 (the
- *        "License"); you may not use this file except in compliance
- *        with the License.  You may obtain a copy of the License at
- * 
- *          http://www.apache.org/licenses/LICENSE-2.0
- * 
- *        Unless required by applicable law or agreed to in writing,
- *        software distributed under the License is distributed on an
- *        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *        KIND, either express or implied.  See the License for the
- *        specific language governing permissions and limitations
- *        under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.api.annotation.edm;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.PARAMETER)
-public @interface Parameter {
-  enum Mode {
-    IN {
-      @Override
-      public String toString() {
-        return new String("In");
-      }
-    },
-    OUT {
-      @Override
-      public String toString() {
-        return new String("Out");
-      }
-    },
-    INOUT {
-      @Override
-      public String toString() {
-        return new String("InOut");
-      }
-    }
-  };
-
-  String name();
-
-  Mode mode() default Mode.IN;
-
-  Facets facets() default @Facets;
-
-  Documentation documentation() default @Documentation;
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edmx/HttpMethod.java
----------------------------------------------------------------------
diff --git a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edmx/HttpMethod.java b/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edmx/HttpMethod.java
deleted file mode 100644
index 9e8321a..0000000
--- a/jpa-annotation/src/main/java/org/apache/olingo/odata2/api/annotation/edmx/HttpMethod.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- *        or more contributor license agreements.  See the NOTICE file
- *        distributed with this work for additional information
- *        regarding copyright ownership.  The ASF licenses this file
- *        to you under the Apache License, Version 2.0 (the
- *        "License"); you may not use this file except in compliance
- *        with the License.  You may obtain a copy of the License at
- * 
- *          http://www.apache.org/licenses/LICENSE-2.0
- * 
- *        Unless required by applicable law or agreed to in writing,
- *        software distributed under the License is distributed on an
- *        "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *        KIND, either express or implied.  See the License for the
- *        specific language governing permissions and limitations
- *        under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.api.annotation.edmx;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.ANNOTATION_TYPE)
-public @interface HttpMethod {
-  enum Name {
-    POST,
-    PUT,
-    GET,
-    MERGE,
-    DELETE,
-    PATCH
-  };
-
-  Name name();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/.gitignore
----------------------------------------------------------------------
diff --git a/jpa-api/.gitignore b/jpa-api/.gitignore
deleted file mode 100644
index fe5d89b..0000000
--- a/jpa-api/.gitignore
+++ /dev/null
@@ -1,8 +0,0 @@
-.project
-.classpath
-.settings
-target
-bin
-*.bak
-classes
-.DS_Store
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/pom.xml
----------------------------------------------------------------------
diff --git a/jpa-api/pom.xml b/jpa-api/pom.xml
deleted file mode 100644
index 01ce773..0000000
--- a/jpa-api/pom.xml
+++ /dev/null
@@ -1,91 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-	<parent>
-		<groupId>org.apache.olingo</groupId>
-		<artifactId>olingo.odata2.parent</artifactId>
-		<version>1.0.0-SNAPSHOT</version>
-		<relativePath>../</relativePath>
-	</parent>
-
-	<artifactId>olingo.odata2.jpa.processor.api</artifactId>
-	<packaging>jar</packaging>
-	<name>${project.artifactId}</name>
-	
-	<build>
-		<plugins>
-			<plugin>
-				<artifactId>maven-jar-plugin</artifactId>
-				<configuration>
-					<archive>
-						<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
-					</archive>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<executions>
-					<execution>
-						<id>bundle-manifest</id>
-						<phase>process-classes</phase>
-						<goals>
-							<goal>manifest</goal>
-						</goals>
-					</execution>
-				</executions>
-				<configuration>
-					<instructions>
-						<Import-Package>
-							org.apache.olingo.odata2.processor.core.jpa.factory;resolution:=optional,
-							*
-						</Import-Package>
-						<Export-Package>
-							org.apache.olingo.odata2.processor.api.*;version=${project.version}
-						</Export-Package>
-						<Bundle-DocURL>${project.url}</Bundle-DocURL>
-						<Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
-						<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
-					</instructions>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-	
-	<dependencies>
-		<!-- JPA Support -->
-		<dependency>
-			<groupId>org.eclipse.persistence</groupId>
-			<artifactId>javax.persistence</artifactId>
-			<version>${version.javax.persistence}</version>
-		</dependency>
-
-		<!-- OData Java Library -->
-		<dependency>
-			<groupId>org.apache.olingo</groupId>
-			<artifactId>olingo.odata2.api</artifactId>
-			<version>${project.version}</version>
-		</dependency>
-	</dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/META-INF/MANIFEST.MF
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/META-INF/MANIFEST.MF b/jpa-api/src/main/java/META-INF/MANIFEST.MF
deleted file mode 100644
index 5e94951..0000000
--- a/jpa-api/src/main/java/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-Class-Path: 
-

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAContext.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAContext.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAContext.java
deleted file mode 100644
index 83dc6a4..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAContext.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa;
-
-import javax.persistence.EntityManager;
-import javax.persistence.EntityManagerFactory;
-
-import org.apache.olingo.odata2.api.edm.provider.EdmProvider;
-import org.apache.olingo.odata2.api.processor.ODataContext;
-import org.apache.olingo.odata2.api.processor.ODataProcessor;
-import org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmExtension;
-
-/**
- * This class does the compilation of context objects required for OData JPA
- * Runtime. The context object should be properly initialized with values else
- * the behavior of processor and EDM provider can result in exception.
- * 
- * Following are the mandatory parameter to be set into the context object
- * <ol>
- * <li>Persistence Unit Name</li>
- * <li>An instance of Java Persistence Entity Manager Factory</li>
- * </ol>
- * 
- * <br>
- * @org.apache.olingo.odata2.DoNotImplement
- * @see org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAFactory
- * @see org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAAccessFactory
- * 
- */
-public interface ODataJPAContext {
-
-  /**
-   * The method gets the Java Persistence Unit Name set into the context.
-   * 
-   * @return Java Persistence Unit Name
-   */
-  public String getPersistenceUnitName();
-
-  /**
-   * The method sets the Java Persistence Unit Name into the context.
-   * 
-   * @param pUnitName
-   * is the Java Persistence Unit Name.
-   * 
-   */
-  public void setPersistenceUnitName(String pUnitName);
-
-  /**
-   * The method gets the OData Processor for JPA from the context.
-   * 
-   * @return OData JPA Processor
-   */
-  public ODataProcessor getODataProcessor();
-
-  /**
-   * The method sets the OData Processor for JPA into the context.
-   * 
-   * @param processor
-   * is the specific implementation of {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAProcessor} for
-   * processing OData service requests.
-   */
-  public void setODataProcessor(ODataProcessor processor);
-
-  /**
-   * The method gets the EDM provider for JPA from the context.
-   * 
-   * @return EDM provider
-   */
-  public EdmProvider getEdmProvider();
-
-  /**
-   * The method sets EDM provider into the context
-   * 
-   * @param edmProvider
-   * is the specific implementation of {@link org.apache.olingo.odata2.api.edm.provider.EdmProvider} for
-   * transforming Java persistence models to Entity Data Model
-   * 
-   */
-  public void setEdmProvider(EdmProvider edmProvider);
-
-  /**
-   * The method gets the Java Persistence Entity Manager factory from the
-   * context. <br>
-   * <b>CAUTION:-</b> Don't use the Entity Manager Factory to instantiate
-   * Entity Managers. Instead get reference to Entity Manager using
-   * {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext#getEntityManager()}
-   * 
-   * @return an instance of Java Persistence Entity Manager Factory
-   */
-  public EntityManagerFactory getEntityManagerFactory();
-
-  /**
-   * The method sets the Java Persistence Entity Manager factory into the
-   * context.
-   * 
-   * @param emf
-   * is of type {@link javax.persistence.EntityManagerFactory}
-   * 
-   */
-  public void setEntityManagerFactory(EntityManagerFactory emf);
-
-  /**
-   * The method gets OData Context into the context.
-   * 
-   * @return OData Context
-   */
-  public ODataContext getODataContext();
-
-  /**
-   * The method sets OData context into the context.
-   * 
-   * @param ctx
-   * is an OData context of type {@link org.apache.olingo.odata2.api.processor.ODataContext}
-   */
-  public void setODataContext(ODataContext ctx);
-
-  /**
-   * The method sets the JPA EDM mapping model name into the context. JPA EDM
-   * mapping model is an XML document based on JPAEDMMappingModel.xsd
-   * 
-   * @param name
-   * is the name of JPA EDM mapping model
-   */
-  public void setJPAEdmMappingModel(String name);
-
-  /**
-   * The method gets the JPA EDM mapping model name from the context.
-   * 
-   * @return name of JPA EDM mapping model
-   */
-  public String getJPAEdmMappingModel();
-
-  /**
-   * The method returns an instance of type entity manager. The entity manager
-   * thus returns a single persistence context for the current OData request.
-   * Hence all entities that are accessed within JPA processor are managed by
-   * single entity manager.
-   * 
-   * @return an instance of type {@link javax.persistence.EntityManager}
-   */
-  public EntityManager getEntityManager();
-
-  /**
-   * The method sets the JPA Edm Extension instance into the context. There
-   * can be at most only one extension for a context. Invoking the method
-   * several times overwrites already set extension instance in the context.
-   * 
-   * @param jpaEdmExtension
-   * is an instance of type {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmExtension}
-   * 
-   */
-  public void setJPAEdmExtension(JPAEdmExtension jpaEdmExtension);
-
-  /**
-   * The method returns the JPA Edm Extension instance set into the context.
-   * 
-   * @return an instance of type
-   * {@link org.apache.olingo.odata2.processor.api.jpa.model.mapping.JPAEmbeddableTypeMapType}
-   */
-  public JPAEdmExtension getJPAEdmExtension();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAProcessor.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAProcessor.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAProcessor.java
deleted file mode 100644
index 441d38e..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAProcessor.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa;
-
-import org.apache.olingo.odata2.api.processor.ODataSingleProcessor;
-import org.apache.olingo.odata2.processor.api.jpa.access.JPAProcessor;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAException;
-import org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAFactory;
-
-/**
- * Extend this class and implement an OData JPA processor if the default
- * behavior of OData JPA Processor library has to be overwritten.
- * 
- * 
- * 
- * 
- */
-public abstract class ODataJPAProcessor extends ODataSingleProcessor {
-
-  /**
-   * An instance of {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext} object
-   */
-  protected ODataJPAContext oDataJPAContext;
-
-  /**
-   * An instance of {@link org.apache.olingo.odata2.processor.api.jpa.access.JPAProcessor}. The
-   * instance is created using {@link org.apache.olingo.odata2.processor.api.jpa.factory.JPAAccessFactory}.
-   */
-  protected JPAProcessor jpaProcessor;
-
-  public ODataJPAContext getOdataJPAContext() {
-    return oDataJPAContext;
-  }
-
-  public void setOdataJPAContext(final ODataJPAContext odataJPAContext) {
-    oDataJPAContext = odataJPAContext;
-  }
-
-  /**
-   * Constructor
-   * 
-   * @param oDataJPAContext
-   * non null OData JPA Context object
-   */
-  public ODataJPAProcessor(final ODataJPAContext oDataJPAContext) {
-    if (oDataJPAContext == null) {
-      throw new IllegalArgumentException(ODataJPAException.ODATA_JPACTX_NULL);
-    }
-    this.oDataJPAContext = oDataJPAContext;
-    jpaProcessor = ODataJPAFactory.createFactory().getJPAAccessFactory().getJPAProcessor(this.oDataJPAContext);
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAServiceFactory.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAServiceFactory.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAServiceFactory.java
deleted file mode 100644
index 7ad7243..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/ODataJPAServiceFactory.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa;
-
-import org.apache.olingo.odata2.api.ODataService;
-import org.apache.olingo.odata2.api.ODataServiceFactory;
-import org.apache.olingo.odata2.api.edm.provider.EdmProvider;
-import org.apache.olingo.odata2.api.exception.ODataException;
-import org.apache.olingo.odata2.api.processor.ODataContext;
-import org.apache.olingo.odata2.api.processor.ODataSingleProcessor;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException;
-import org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAAccessFactory;
-import org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAFactory;
-
-/**
- * <p>
- * Extend this factory class and create own instance of {@link org.apache.olingo.odata2.api.ODataService} that
- * transforms Java Persistence
- * Models into an OData Service. The factory class instantiates instances of
- * type {@link org.apache.olingo.odata2.api.edm.provider.EdmProvider} and
- * {@link org.apache.olingo.odata2.api.processor.ODataSingleProcessor}. The OData
- * JPA Processor library provides a default implementation for EdmProvider and
- * OData Single Processor.
- * </p>
- * <p>
- * The factory implementation is passed as servlet init parameter to a JAX-RS
- * runtime which will instantiate a {@link org.apache.olingo.odata2.api.ODataService} implementation using this factory.
- * </p>
- * 
- * <p>
- * <b>Mandatory:</b> Implement the abstract method initializeODataJPAContext. Fill
- * {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext} with context
- * values.
- * </p>
- * 
- * <b>Sample Configuration:</b>
- * 
- * <pre> {@code
- * <servlet>
- *  <servlet-name>ReferenceScenarioServlet</servlet-name>
- *  <servlet-class>org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet</servlet-class>
- *  <init-param>
- *    <param-name>javax.ws.rs.Application</param-name>
- *    <param-value>org.apache.olingo.odata2.core.rest.ODataApplication</param-value>
- *  </init-param>
- *  <init-param>
- *    <param-name>org.apache.olingo.odata2.processor.factory</param-name>
- *    <param-value>foo.bar.sample.processor.SampleProcessorFactory</param-value>
- *  </init-param>
- *  <init-param>
- *    <param-name>org.apache.olingo.odata2.path.split</param-name>
- *    <param-value>2</param-value>
- *  </init-param>
- *  <load-on-startup>1</load-on-startup>
- * </servlet>
- * } </pre>
- */
-
-public abstract class ODataJPAServiceFactory extends ODataServiceFactory {
-
-  private ODataJPAContext oDataJPAContext;
-  private ODataContext oDataContext;
-
-  /**
-   * Creates an OData Service based on the values set in
-   * {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext} and
-   * {@link org.apache.olingo.odata2.api.processor.ODataContext}.
-   */
-  @Override
-  public final ODataService createService(final ODataContext ctx) throws ODataException {
-
-    oDataContext = ctx;
-
-    // Initialize OData JPA Context
-    oDataJPAContext = initializeODataJPAContext();
-
-    validatePreConditions();
-
-    ODataJPAFactory factory = ODataJPAFactory.createFactory();
-    ODataJPAAccessFactory accessFactory = factory.getODataJPAAccessFactory();
-
-    // OData JPA Processor
-    if (oDataJPAContext.getODataContext() == null) {
-      oDataJPAContext.setODataContext(ctx);
-    }
-
-    ODataSingleProcessor odataJPAProcessor = accessFactory.createODataProcessor(oDataJPAContext);
-
-    // OData Entity Data Model Provider based on JPA
-    EdmProvider edmProvider = accessFactory.createJPAEdmProvider(oDataJPAContext);
-
-    return createODataSingleProcessorService(edmProvider, odataJPAProcessor);
-  }
-
-  private void validatePreConditions() throws ODataJPARuntimeException {
-
-    if (oDataJPAContext.getEntityManagerFactory() == null) {
-      throw ODataJPARuntimeException.throwException(ODataJPARuntimeException.ENTITY_MANAGER_NOT_INITIALIZED, null);
-    }
-
-  }
-
-  /**
-   * Implement this method and initialize OData JPA Context. It is mandatory
-   * to set an instance of type {@link javax.persistence.EntityManagerFactory} into the context. An exception of type
-   * {@link org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException} is thrown if
-   * EntityManagerFactory is not initialized. <br>
-   * <br>
-   * <b>Sample Code:</b> <code>
-   * <p>public class JPAReferenceServiceFactory extends ODataJPAServiceFactory{</p>
-   * 
-   * <blockquote>private static final String PUNIT_NAME = "punit";
-   * <br>
-   * public ODataJPAContext initializeODataJPAContext() {
-   * <blockquote>ODataJPAContext oDataJPAContext = this.getODataJPAContext();
-   * <br>
-   * EntityManagerFactory emf = Persistence.createEntityManagerFactory(PUNIT_NAME);
-   * <br>
-   * oDataJPAContext.setEntityManagerFactory(emf);
-   * oDataJPAContext.setPersistenceUnitName(PUNIT_NAME);
-   * <br> return oDataJPAContext;</blockquote>
-   * }</blockquote>
-   * } </code>
-   * <p>
-   * 
-   * @return an instance of type {@link org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext}
-   * @throws ODataJPARuntimeException
-   */
-  public abstract ODataJPAContext initializeODataJPAContext() throws ODataJPARuntimeException;
-
-  /**
-   * @return an instance of type {@link ODataJPAContext}
-   * @throws ODataJPARuntimeException
-   */
-  public final ODataJPAContext getODataJPAContext() throws ODataJPARuntimeException {
-    if (oDataJPAContext == null) {
-      oDataJPAContext = ODataJPAFactory.createFactory().getODataJPAAccessFactory().createODataJPAContext();
-    }
-    if (oDataContext != null) {
-      oDataJPAContext.setODataContext(oDataContext);
-    }
-    return oDataJPAContext;
-
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmBuilder.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmBuilder.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmBuilder.java
deleted file mode 100644
index 110a1f1..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmBuilder.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAModelException;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException;
-
-/**
- * JPAEdmBuilder interface provides methods for building elements of an Entity Data Model (EDM) from
- * a Java Persistence Model.
- * 
- * 
- * 
- */
-public interface JPAEdmBuilder {
-  /**
-   * The Method builds EDM Elements by transforming JPA MetaModel. The method
-   * processes EDM JPA Containers which could be accessed using the following
-   * views,
-   * <ul>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmAssociationSetView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmAssociationView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmBaseView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmComplexPropertyView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmComplexTypeView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmEntityContainerView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmEntitySetView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmEntityTypeView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmKeyView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmModelView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmNavigationPropertyView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmPropertyView}</li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmReferentialConstraintRoleView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmReferentialConstraintView} </li>
-   * <li> {@link org.apache.olingo.odata2.processor.api.jpa.model.JPAEdmSchemaView}</li>
-   * </ul>
-   * 
-   * @throws ODataJPARuntimeException
-   **/
-  public void build() throws ODataJPAModelException, ODataJPARuntimeException;
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmMappingModelAccess.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmMappingModelAccess.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmMappingModelAccess.java
deleted file mode 100644
index 216db55..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAEdmMappingModelAccess.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import org.apache.olingo.odata2.processor.api.jpa.model.mapping.JPAEdmMappingModel;
-
-/**
- * Interface provides methods to access JPA EDM mapping model.
- * 
- * 
- * @see JPAEdmMappingModel
- * 
- */
-public interface JPAEdmMappingModelAccess {
-
-  /**
-   * The method searches and loads the mapping model stored in &ltfile&gt.xml
-   * file into the java object {@link org.apache.olingo.odata2.processor.api.jpa.model.mapping.JPAEdmMappingModel} . The
-   * name of the file is set into ODataJPAContext method.
-   * 
-   * @see org.apache.olingo.odata2.processor.api.jpa.ODataJPAContext#setJPAEdmMappingModel(String)
-   */
-  public void loadMappingModel();
-
-  /**
-   * The method returns if there exists a mapping model.
-   * 
-   * @return true - if there exists a mapping model for the OData service else
-   * false
-   */
-  public boolean isMappingModelExists();
-
-  /**
-   * The method returns a JPA EDM mapping model Java object. The mapping model
-   * in XML files is un-marshaled into the Java object.
-   * 
-   * @return an instance of type {@link org.apache.olingo.odata2.processor.api.jpa.model.mapping.JPAEdmMappingModel}
-   */
-  public JPAEdmMappingModel getJPAEdmMappingModel();
-
-  /**
-   * The method returns EDM Schema namespace for the persistence unit name
-   * 
-   * @param persistenceUnitName
-   * is the Java persistence unit name
-   * @return EDM schema name space mapped to Java persistence unit name or
-   * null if no mapping is available
-   */
-  public String mapJPAPersistenceUnit(String persistenceUnitName);
-
-  /**
-   * The method returns EDM entity type name for the Java persistence entity
-   * type name
-   * 
-   * @param jpaEntityTypeName
-   * is the Java persistence entity type name
-   * @return EDM entity type name mapped to Java persistence entity type name
-   * or null if no mapping is available
-   */
-  public String mapJPAEntityType(String jpaEntityTypeName);
-
-  /**
-   * The method returns EDM entity set name for the Java persistence entity
-   * type name
-   * 
-   * @param jpaEntityTypeName
-   * is the Java persistence entity type name
-   * @return EDM entity set name mapped to Java persistence entity type name
-   * or null if no mapping is available
-   */
-  public String mapJPAEntitySet(String jpaEntityTypeName);
-
-  /**
-   * The method returns EDM property name for the Java persistence entity
-   * attribute name.
-   * 
-   * @param jpaEntityTypeName
-   * is the Java persistence entity type name
-   * @param jpaAttributeName
-   * is the Java persistence attribute name
-   * @return EDM property name mapped to Java persistence attribute name or
-   * null if no mapping is available
-   */
-  public String mapJPAAttribute(String jpaEntityTypeName, String jpaAttributeName);
-
-  /**
-   * The method returns EDM navigation property name for the Java persistence
-   * entity relationship name.
-   * 
-   * @param jpaEntityTypeName
-   * is the Java persistence entity type name
-   * @param jpaRelationshipName
-   * is the Java persistence relationship name
-   * @return EDM navigation property name mapped to Java persistence entity
-   * relationship name or null if no mapping is available
-   */
-  public String mapJPARelationship(String jpaEntityTypeName, String jpaRelationshipName);
-
-  /**
-   * The method returns EDM complex type name for the Java embeddable type
-   * name.
-   * 
-   * @param jpaEmbeddableTypeName
-   * is the Java persistence embeddable type name
-   * @return EDM complex type name mapped to Java persistence entity
-   * relationship name or null if no mapping is available
-   */
-  public String mapJPAEmbeddableType(String jpaEmbeddableTypeName);
-
-  /**
-   * The method returns EDM property name for the Java persistence embeddable
-   * type's attribute name.
-   * 
-   * @param jpaEmbeddableTypeName
-   * is the Java persistence
-   * @param jpaAttributeName
-   * is the Java persistence attribute name
-   * @return EDM property name mapped to Java persistence attribute name or
-   * null if no mapping is available
-   */
-  public String mapJPAEmbeddableTypeAttribute(String jpaEmbeddableTypeName, String jpaAttributeName);
-
-  /**
-   * The method returns whether the JPA Entity should be excluded from EDM
-   * model
-   * 
-   * @param jpaEntityTypeName
-   * is the name of JPA Entity Type
-   * @return <b>true</b> - if JPA Entity should be excluded<br>
-   * <b>false</b> - if JPA Entity should be not be excluded
-   * 
-   */
-  public boolean checkExclusionOfJPAEntityType(String jpaEntityTypeName);
-
-  /**
-   * The method returns whether the JPA Attribute should be excluded from EDM
-   * Entity Type
-   * 
-   * @param jpaEntityTypeName
-   * is the name of JPA Entity Type
-   * @param jpaAttributeName
-   * is the name of JPA attribute
-   * @return <b>true</b> - if JPA attribute should be excluded<br>
-   * <b>false</b> - if JPA attribute should be not be excluded
-   * 
-   */
-  public boolean checkExclusionOfJPAAttributeType(String jpaEntityTypeName, String jpaAttributeName);
-
-  /**
-   * The method returns whether the JPA Embeddable Type should be excluded
-   * from EDM model
-   * 
-   * @param jpaEmbeddableTypeName
-   * is the name of JPA Embeddable Type
-   * @return <b>true</b> - if JPA Embeddable Type should be excluded<br>
-   * <b>false</b> - if JPA Embeddable Type should be not be excluded
-   * 
-   */
-  public boolean checkExclusionOfJPAEmbeddableType(String jpaEmbeddableTypeName);
-
-  /**
-   * The method returns whether the JPA Embeddable Attribute Type should be
-   * excluded from EDM model
-   * 
-   * @param jpaEmbeddableTypeName
-   * is the name of JPA Embeddable Attribute Type
-   * @param jpaAttributeName
-   * is the name of JPA Attribute name
-   * @return <b>true</b> - if JPA Embeddable Attribute Type should be excluded<br>
-   * <b>false</b> - if JPA Embeddable Attribute Type should be not be
-   * excluded
-   * 
-   */
-  public boolean checkExclusionOfJPAEmbeddableAttributeType(String jpaEmbeddableTypeName, String jpaAttributeName);
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAFunction.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAFunction.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAFunction.java
deleted file mode 100644
index 4e32b0c..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAFunction.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import java.lang.reflect.Method;
-import java.lang.reflect.Type;
-
-/**
- * A container for JPA Functions. A JPA function can be
- * <ol>
- * <li>Property Access method</li>
- * <li>Custom Operation (Annotated with EDM Annotation FunctionImport)</li>
- * </ol>
- * 
- * 
- * 
- */
-public class JPAFunction {
-
-  private Method function;
-  private Class<?>[] parameterTypes;
-  private Type returnType;
-  private Object[] args;
-
-  public JPAFunction(final Method function, final Class<?>[] parameterTypes, final Type returnType, 
-      final Object[] args) {
-    this.function = function;
-    this.parameterTypes = parameterTypes;
-    this.returnType = returnType;
-    this.args = args;
-  }
-
-  /**
-   * The method returns the Java method.
-   * 
-   * @return an instance of {@link java.lang.reflect.Method}
-   */
-  public Method getFunction() {
-    return function;
-  }
-
-  /**
-   * The method returns the parameter types for the Java method.
-   * 
-   * @return an array of type {@link java.lang.Class}
-   */
-  public Class<?>[] getParameterTypes() {
-    return parameterTypes;
-  }
-
-  /**
-   * The method returns the return type for the Java method.
-   * 
-   * @return an instance of {@link java.lang.reflect.Type}
-   */
-  public Type getReturnType() {
-    return returnType;
-  }
-
-  /**
-   * The method returns an array of arguments for invoking the Java method.
-   * 
-   * @return an array of Objects
-   */
-  public Object[] getArguments() {
-    return args;
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAJoinClause.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAJoinClause.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAJoinClause.java
deleted file mode 100644
index f0a4c8d..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAJoinClause.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-/**
- * A container for Java Persistence Join Clause that can be used for building
- * JPQL statements. The container has two main elements <b>
- * <ol>
- * <li>Java Persistence Entity -</li> is the source entity participating in the
- * join. <br>
- * <li>Java Persistence Entity Relationship -</li> is the entity relationship of
- * the source entity participating in the join.
- * </ol>
- * </b>
- * 
- * 
- * 
- */
-public class JPAJoinClause {
-
-  /**
-   * Enumerated list of possible Joins in JPQL
-   * <ol>
-   * <li>LEFT - left outer join</li>
-   * <li>FETCH - enable fetching of an association as a side effect of the
-   * execution of a query</li>
-   * <li>INNER - inner join
-   * </ol>
-   * 
-   * 
-   * 
-   */
-  public enum JOIN {
-    LEFT, FETCH, INNER
-  }
-
-  private String entityName;
-  private String entityAlias;
-  private String entityRelationShip;
-  private String entityRelationShipAlias;
-  private JOIN joinType;
-  private String joinCondition;
-
-  /**
-   * The method returns Java Persistence Entity participating in the join.
-   * 
-   * @return an entity name
-   */
-  public String getEntityName() {
-    return entityName;
-  }
-
-  /**
-   * The method returns Java Persistence Entity alias name participating in
-   * the join.
-   * 
-   * @return a entity alias name
-   */
-  public String getEntityAlias() {
-    return entityAlias;
-  }
-
-  /**
-   * The method returns Java Persistence Entity Relationship name
-   * participating in the join.
-   * 
-   * @return entity alias relationship
-   */
-  public String getEntityRelationShip() {
-    return entityRelationShip;
-  }
-
-  /**
-   * The method returns Java Persistence Entity Relationship Alias name
-   * participating in the join.
-   * 
-   * @return entity entity relationship alias
-   */
-  public String getEntityRelationShipAlias() {
-    return entityRelationShipAlias;
-  }
-
-  /**
-   * Constructor for creating elements of JPA Join Clause container.
-   * 
-   * @param entityName
-   * is the name of the JPA entity participating in the join
-   * @param entityAlias
-   * is the alias for the JPA entity participating in the join
-   * @param entityRelationShip
-   * is the name of the JPA entity relationship participating in
-   * the join
-   * @param entityRelationShipAlias
-   * is the alias name of the JPA entity relationship participating
-   * in the join
-   * @param joinCondition
-   * is the condition on which the joins should occur
-   * @param joinType
-   * is the type of join {@link org.apache.olingo.odata2.processor.api.jpa.access.JPAJoinClause.JOIN} to execute
-   */
-  public JPAJoinClause(final String entityName, final String entityAlias, final String entityRelationShip,
-      final String entityRelationShipAlias, final String joinCondition, final JOIN joinType) {
-
-    this.entityName = entityName;
-    this.entityAlias = entityAlias;
-    this.entityRelationShip = entityRelationShip;
-    this.entityRelationShipAlias = entityRelationShipAlias;
-    this.joinCondition = joinCondition;
-    this.joinType = joinType;
-  }
-
-  /**
-   * The method returns a join condition that can be used for building JPQL
-   * join statements.
-   * 
-   * @return a join condition
-   */
-  public String getJoinCondition() {
-    return joinCondition;
-  }
-
-  /**
-   * The method returns the type of {@link org.apache.olingo.odata2.processor.api.jpa.access.JPAJoinClause.JOIN} that
-   * can be used for building JPQL join statements.
-   * 
-   * @return join type
-   */
-  public JOIN getJoinType() {
-    return joinType;
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContext.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContext.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContext.java
deleted file mode 100644
index fd44200..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContext.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAModelException;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException;
-import org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAFactory;
-import org.apache.olingo.odata2.processor.api.jpa.jpql.JPQLContextType;
-
-/**
- * The abstract class is a compilation of objects required for building specific
- * instances of JPA Method Context. Extend this class to implement specific
- * implementations of JPQL context types (Create,Update,Function). A JPA method
- * Context is constructed from an OData request. Depending on OData
- * CUD/FunctionImport operation performed on an Entity, a corresponding JPA
- * method context object is built. The object thus built can be used for
- * executing operations on JPA Entity/Custom processor objects. <br>
- * A default implementation is provided by the library.
- * 
- * 
- * @see org.apache.olingo.odata2.processor.api.jpa.access.JPAMethodContextView
- * @see org.apache.olingo.odata2.processor.api.jpa.jpql.JPQLContextType
- * 
- */
-
-public abstract class JPAMethodContext implements JPAMethodContextView {
-
-  protected Object enclosingObject;
-  protected ArrayList<JPAFunction> jpaFunction;
-
-  @Override
-  /**
-   * The method returns list of JPA functions that can be executed on the
-   * enclosing object.
-   * 
-   * @return an instance of list of JPA Function
-   */
-  public Object getEnclosingObject() {
-    return enclosingObject;
-  }
-
-  @Override
-  /**
-   * The method returns list of JPA functions that can be executed on the
-   * enclosing object.
-   * 
-   * @return an instance of list of JPA Function
-   */
-  public List<JPAFunction> getJPAFunctionList() {
-    return jpaFunction;
-  }
-
-  protected void setEnclosingObject(final Object enclosingObject) {
-    this.enclosingObject = enclosingObject;
-  }
-
-  protected void setJpaFunction(final List<JPAFunction> jpaFunctionList) {
-    jpaFunction = (ArrayList<JPAFunction>) jpaFunctionList;
-  }
-
-  /**
-   * the method instantiates an instance of type JPAMethodContextBuilder.
-   * 
-   * @param contextType
-   * indicates the type of JPQLContextBuilder to instantiate.
-   * @param resultsView
-   * is the OData request view
-   * @return {@link org.apache.olingo.odata2.processor.api.jpa.access.JPAMethodContext.JPAMethodContextBuilder}
-   * 
-   * @throws ODataJPARuntimeException
-   */
-  public final static JPAMethodContextBuilder
-      createBuilder(final JPQLContextType contextType, final Object resultsView) throws ODataJPARuntimeException {
-    return JPAMethodContextBuilder.create(contextType, resultsView);
-  }
-
-  /**
-   * The abstract class is extended by specific JPA Method Context Builder to
-   * build JPA Method Context types.
-   * 
-   * 
-   * 
-   */
-  public static abstract class JPAMethodContextBuilder {
-
-    /**
-     * Implement this method to build JPAMethodContext
-     * 
-     * @return an instance of type JPAMethodContext
-     * @throws ODataJPAModelException
-     * @throws ODataJPARuntimeException
-     */
-    public abstract JPAMethodContext build() throws ODataJPAModelException, ODataJPARuntimeException;
-
-    protected JPAMethodContextBuilder() {}
-
-    private static JPAMethodContextBuilder create(final JPQLContextType contextType, final Object resultsView)
-        throws ODataJPARuntimeException {
-      JPAMethodContextBuilder contextBuilder =
-          ODataJPAFactory.createFactory().getJPQLBuilderFactory().getJPAMethodContextBuilder(contextType);
-
-      if (contextBuilder == null) {
-        throw ODataJPARuntimeException.throwException(ODataJPARuntimeException.ERROR_JPQLCTXBLDR_CREATE, null);
-      }
-      contextBuilder.setResultsView(resultsView);
-      return contextBuilder;
-    }
-
-    protected abstract void setResultsView(Object resultsView);
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContextView.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContextView.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContextView.java
deleted file mode 100644
index fb057a0..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAMethodContextView.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import java.util.List;
-
-/**
- * The interface provides view on JPA Method Context. JPA Method context can be
- * used to access custom operations or JPA Entity property access methods.
- * 
- * 
- * 
- */
-public interface JPAMethodContextView {
-  /**
-   * The method returns an instance of Object on which the methods/custom
-   * operations can be executed.
-   * 
-   * @return instance of enclosing object for the method
-   */
-  public Object getEnclosingObject();
-
-  /**
-   * The method returns list of JPA functions that can be executed on the
-   * enclosing object.
-   * 
-   * @return an instance of list of JPA Function
-   */
-  public List<JPAFunction> getJPAFunctionList();
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAProcessor.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAProcessor.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAProcessor.java
deleted file mode 100644
index d13dd77..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/JPAProcessor.java
+++ /dev/null
@@ -1,262 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.access;
-
-import java.io.InputStream;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.olingo.odata2.api.uri.info.DeleteUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntityCountUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntityLinkUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntitySetCountUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntitySetLinksUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntitySetUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetEntityUriInfo;
-import org.apache.olingo.odata2.api.uri.info.GetFunctionImportUriInfo;
-import org.apache.olingo.odata2.api.uri.info.PostUriInfo;
-import org.apache.olingo.odata2.api.uri.info.PutMergePatchUriInfo;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAModelException;
-import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException;
-
-/**
- * The interface provides methods for processing OData Requests for Create, Read, Update, Delete operations.
- * Pass the OData request or parsed OData request (Map of properties) as request.
- * A JPA entity is returned as a response.
- * 
- */
-public interface JPAProcessor {
-  /**
-   * Processes OData request for querying an Entity Set. The method returns
-   * list of Objects of type representing JPA Entity Types.
-   * 
-   * @param <T>
-   * Template parameter representing Java Persistence Entity Type.
-   * <p>
-   * <b>Note:-</b> Default parameter is Object.
-   * </p>
-   * 
-   * @param requestView
-   * is an OData request for querying an entity set
-   * <p>
-   * @return list of objects representing JPA entity types
-   **/
-  public <T> List<T> process(GetEntitySetUriInfo requestView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for reading an Entity. The method returns an
-   * Object of type representing JPA Entity Type.
-   * 
-   * @param <T>
-   * Template parameter representing Java Persistence Entity Type.
-   * <p>
-   * <b>Note:-</b> Default parameter is Object.
-   * </p>
-   * 
-   * @param requestView
-   * OData request for reading an entity
-   * 
-   * <p>
-   * @return object representing JPA entity type
-   **/
-  public <T> Object process(GetEntityUriInfo requestView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for fetching Entity count. The method returns JPA Entity count
-   * 
-   * @param requestView
-   * OData request for counting an entity set
-   * @return long value representing count of JPA entity set
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-
-  public long process(GetEntitySetCountUriInfo requestView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for fetching Entity count. The method returns count of target entity.
-   * This is specific to situation where cardinality is 1:1
-   * 
-   * @param resultsView
-   * OData request for counting target entity.
-   * @return long value representing count of JPA entity
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public long process(GetEntityCountUriInfo resultsView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for executing custom operations. The method
-   * returns a List of Object. The list contains one entry if the the custom
-   * operations return type has multiplicity of ONE.
-   * 
-   * @param requestView
-   * OData request for executing function import
-   * @return result of executing function import
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public List<Object> process(GetFunctionImportUriInfo requestView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for executing $links OData command for N:1 relation.
-   * The method returns an Object of type representing OData entity.
-   * 
-   * @param uriParserResultView
-   * OData request for Entity Link URI
-   * @return an object representing JPA entity
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public Object process(GetEntityLinkUriInfo uriParserResultView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for executing $links OData command for N:1 relation.
-   * The method returns an Object of type representing OData entity.
-   * 
-   * @param uriParserResultView
-   * OData request for Entity Set Link URI
-   * @return a list of object representing JPA entities
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public <T> List<T> process(GetEntitySetLinksUriInfo uriParserResultView)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for creating Entity. The method returns an Object
-   * which is created. A Null reference implies object was not created.
-   * 
-   * @param createView
-   * @param content
-   * @param requestContentType
-   * @param contentType
-   * @return Created Object
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-
-  public <T> List<T> process(PostUriInfo createView, InputStream content,
-      String requestContentType) throws ODataJPAModelException,
-      ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for creating Entity. The method expects a parsed OData request which is a Map of
-   * properties.
-   * The method returns an Object that is created. A Null reference implies object was not created.
-   * 
-   * @param createView
-   * @param content
-   * @param requestContentType
-   * @param contentType
-   * @return Created Object
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-
-  public <T> List<T> process(PostUriInfo createView, Map<String, Object> content) throws ODataJPAModelException,
-      ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for updating Entity. The method returns an Object
-   * which is updated. A Null reference implies object was not created.
-   * 
-   * @param deleteuriInfo
-   * @param contentType
-   * @return Deleted Object
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public <T> Object process(PutMergePatchUriInfo updateView,
-      InputStream content, String requestContentType)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for updating Entity. The method returns an Object
-   * which is updated. A Null reference implies object was not created.
-   * 
-   * @param deleteuriInfo
-   * @param contentType
-   * @return Deleted Object
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public <T> Object process(PutMergePatchUriInfo updateView, Map<String, Object> content)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Processes OData request for deleting Entity. The method returns an Object
-   * which is deleted. A Null reference implies object was not created.
-   * 
-   * @param deleteuriInfo
-   * @param contentType
-   * @return Deleted Object
-   * 
-   * @throws ODataJPAModelException
-   * @throws ODataJPARuntimeException
-   */
-  public Object process(DeleteUriInfo deleteuriInfo, String contentType)
-      throws ODataJPAModelException, ODataJPARuntimeException;
-
-  /**
-   * Process OData request for creating Links. The OData request should contain
-   * $links OData command.
-   * 
-   * @param uriParserResultView
-   * OData request for creating Links
-   * @param content
-   * @param requestContentType
-   * @param contentType
-   * 
-   * @throws ODataJPARuntimeException
-   * @throws ODataJPAModelException
-   */
-  public void process(PostUriInfo uriParserResultView,
-      InputStream content, String requestContentType, String contentType)
-      throws ODataJPARuntimeException, ODataJPAModelException;
-
-  /**
-   * Process OData request for updating Links. The OData request should contain
-   * $links OData command.
-   * 
-   * @param uriParserResultView
-   * OData request for updating Links
-   * @param content
-   * @param requestContentType
-   * @param contentType
-   * 
-   * @throws ODataJPARuntimeException
-   * @throws ODataJPAModelException
-   */
-  public void process(PutMergePatchUriInfo uriParserResultView,
-      InputStream content, String requestContentType, String contentType)
-      throws ODataJPARuntimeException, ODataJPAModelException;
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/package-info.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/package-info.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/package-info.java
deleted file mode 100644
index 38671c1..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/access/package-info.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-/**
- * <h3>OData JPA Processor API Library - Java Persistence Access</h3>
- * The library provides a set of APIs to access Java Persistence Models and Data.
- * 
- * 
- */
-package org.apache.olingo.odata2.processor.api.jpa.access;
-

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAException.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAException.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAException.java
deleted file mode 100644
index 3347ee0..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAException.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.exception;
-
-import java.util.Locale;
-
-import org.apache.olingo.odata2.api.exception.MessageReference;
-import org.apache.olingo.odata2.api.exception.ODataException;
-
-/**
- * The exception class is the base of OData JPA exceptions. The class also
- * provides non localized error texts that can be used for raising OData JPA
- * exceptions with non localized error texts.
- * 
- * 
- * 
- */
-public abstract class ODataJPAException extends ODataException {
-
-  protected MessageReference messageReference;
-
-  public static final String ODATA_JPACTX_NULL = "OData JPA Context cannot be null";
-
-  private static final long serialVersionUID = -6884673558124441214L;
-  protected static final Locale DEFAULT_LOCALE = Locale.ENGLISH;
-
-  protected ODataJPAException(final String localizedMessage, final Throwable e, final MessageReference msgRef) {
-    super(localizedMessage, e);
-    messageReference = msgRef;
-  }
-
-  /**
-   * The method creates a Reference to Message Object {@link org.apache.olingo.odata2.api.exception.MessageReference} .
-   * The message
-   * text key is derived out of parameters clazz.messageReferenceKey.
-   * 
-   * @param clazz
-   * is name of the class extending {@link org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAException}
-   * @param messageReferenceKey
-   * is the key of the message
-   * @return an instance of type {@link org.apache.olingo.odata2.api.exception.MessageReference}
-   */
-  protected static MessageReference createMessageReference(final Class<? extends ODataJPAException> clazz,
-      final String messageReferenceKey) {
-    return MessageReference.create(clazz, messageReferenceKey);
-  }
-
-  public MessageReference getMessageReference() {
-    return messageReference;
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAMessageService.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAMessageService.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAMessageService.java
deleted file mode 100644
index 97dc1bf..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAMessageService.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.exception;
-
-import org.apache.olingo.odata2.api.exception.MessageReference;
-
-/**
- * The interface is used to access language dependent message texts. Default
- * language is "English - EN". <br>
- * The default implementation of the interface shipped with the library loads
- * message texts from language dependent property files. If the message text is
- * not found for the given language then the default language -EN is used for
- * the message texts.
- * 
- * 
- * @see org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAException
- * @see org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException
- * @see org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAModelException
- * @see org.apache.olingo.odata2.api.exception.MessageReference
- */
-public interface ODataJPAMessageService {
-  /**
-   * The method returns a language dependent message texts for the given
-   * {@link org.apache.olingo.odata2.api.exception.MessageReference}.
-   * 
-   * @param context
-   * is a Message Reference
-   * exception
-   * is a Throwable Exception
-   * @return a language dependent message text
-   */
-  public String getLocalizedMessage(MessageReference context, Throwable exception);
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAModelException.java
----------------------------------------------------------------------
diff --git a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAModelException.java b/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAModelException.java
deleted file mode 100644
index 7800b9e..0000000
--- a/jpa-api/src/main/java/org/apache/olingo/odata2/processor/api/jpa/exception/ODataJPAModelException.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.processor.api.jpa.exception;
-
-import org.apache.olingo.odata2.api.exception.MessageReference;
-import org.apache.olingo.odata2.processor.api.jpa.factory.ODataJPAFactory;
-
-/**
- * The exception is thrown for any unexpected errors raising while
- * accessing/transforming Java Persistence Models.
- * 
- * 
- * 
- */
-public class ODataJPAModelException extends ODataJPAException {
-
-  public static final MessageReference INVALID_ENTITY_TYPE = createMessageReference(ODataJPAModelException.class,
-      "INVALID_ENTITY_TYPE");
-  public static final MessageReference INVALID_COMPLEX_TYPE = createMessageReference(ODataJPAModelException.class,
-      "INVLAID_COMPLEX_TYPE");
-  public static final MessageReference INVALID_ASSOCIATION = createMessageReference(ODataJPAModelException.class,
-      "INVALID_ASSOCIATION");
-  public static final MessageReference INVALID_ENTITYSET = createMessageReference(ODataJPAModelException.class,
-      "INVALID_ENTITYSET");
-  public static final MessageReference INVALID_ENTITYCONTAINER = createMessageReference(ODataJPAModelException.class,
-      "INVALID_ENTITYCONTAINER");
-  public static final MessageReference INVALID_ASSOCIATION_SET = createMessageReference(ODataJPAModelException.class,
-      "INVALID_ASSOCIATION_SET");
-  public static final MessageReference INVALID_FUNC_IMPORT = createMessageReference(ODataJPAModelException.class,
-      "INVALID_FUNC_IMPORT");
-
-  public static final MessageReference BUILDER_NULL = createMessageReference(ODataJPAModelException.class,
-      "BUILDER_NULL");
-  public static final MessageReference TYPE_NOT_SUPPORTED = createMessageReference(ODataJPAModelException.class,
-      "TYPE_NOT_SUPPORTED");
-  public static final MessageReference FUNC_ENTITYSET_EXP = createMessageReference(ODataJPAModelException.class,
-      "FUNC_ENTITYSET_EXP");
-  public static final MessageReference FUNC_RETURN_TYPE_EXP = createMessageReference(ODataJPAModelException.class,
-      "FUNC_RETURN_TYPE_EXP");
-  public static final MessageReference FUNC_RETURN_TYPE_ENTITY_NOT_FOUND = createMessageReference(
-      ODataJPAModelException.class, "FUNC_RETURN_TYPE_ENTITY_NOT_FOUND");
-  public static final MessageReference GENERAL = createMessageReference(ODataJPAModelException.class, "GENERAL");
-  public static final MessageReference INNER_EXCEPTION = createMessageReference(ODataJPAModelException.class,
-      "INNER_EXCEPTION");
-  public static final MessageReference FUNC_PARAM_NAME_EXP = createMessageReference(ODataJPAModelException.class,
-      "FUNC_PARAM_NAME_EXP");
-
-  private ODataJPAModelException(final String localizedMessage, final Throwable e, final MessageReference msgRef) {
-    super(localizedMessage, e, msgRef);
-  }
-
-  /**
-   * The method creates an exception object of type ODataJPAModelException
-   * with localized error texts.
-   * 
-   * @param messageReference
-   * is a <b>mandatory</b> parameter referring to a literal that
-   * could be translated to localized error texts.
-   * @param e
-   * is an optional parameter representing the previous exception
-   * in the call stack
-   * @return an instance of ODataJPAModelException which can be then raised.
-   * @throws ODataJPARuntimeException
-   */
-  public static ODataJPAModelException throwException(final MessageReference messageReference, final Throwable e) {
-
-    ODataJPAMessageService messageService;
-    messageService =
-        ODataJPAFactory.createFactory().getODataJPAAccessFactory().getODataJPAMessageService(DEFAULT_LOCALE);
-    String message = messageService.getLocalizedMessage(messageReference, e);
-    return new ODataJPAModelException(message, e, messageReference);
-  }
-
-  private static final long serialVersionUID = 7940106375606950703L;
-
-}