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 <file>.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;
-
-}