diff --git a/api/pom.xml b/api/pom.xml new file mode 100644 index 000000000..6184d6cd7 --- /dev/null +++ b/api/pom.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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>com.introproventures</groupId> + <artifactId>graphql-jpa-query-dependencies</artifactId> + <version>1.2.13-SNAPSHOT</version> + <relativePath>../dependencies</relativePath> + </parent> + + <packaging>jar</packaging> + + <artifactId>graphql-jpa-query-api</artifactId> + + <dependencies> + <dependency> + <groupId>com.introproventures</groupId> + <artifactId>graphql-jpa-query-annotations</artifactId> + </dependency> + <dependency> + <groupId>org.atteo</groupId> + <artifactId>evo-inflector</artifactId> + </dependency> + <dependency> + <groupId>com.graphql-java</groupId> + <artifactId>graphql-java</artifactId> + </dependency> + <dependency> + <groupId>com.introproventures</groupId> + <artifactId>graphql-jpa-query-introspection</artifactId> + </dependency> + <dependency> + <groupId>jakarta.persistence</groupId> + <artifactId>jakarta.persistence-api</artifactId> + </dependency> + </dependencies> + +</project> diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutionInputFactory.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutionInputFactory.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutionInputFactory.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutionInputFactory.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutor.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutor.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutor.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutor.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContext.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContext.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContext.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContext.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContextFactory.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContextFactory.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContextFactory.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorContextFactory.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java similarity index 91% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java index fe90ec627..e8053e3f0 100644 --- a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java +++ b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/GraphQLSchemaBuilder.java @@ -75,6 +75,14 @@ public interface GraphQLSchemaBuilder { */ GraphQLSchemaBuilder graphQLIDType(boolean useGraphQLIDType); + /** + * Register restricted keys provider + * + * @param restrictedKeysProvider instance + * @return this builder instance + */ + GraphQLSchemaBuilder restrictedKeysProvider(RestrictedKeysProvider restrictedKeysProvider); + /** * Builds {code #GraphQLSchema} instance * diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/NamingStrategy.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/NamingStrategy.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/NamingStrategy.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/NamingStrategy.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/RestrictedKeysProvider.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/RestrictedKeysProvider.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/RestrictedKeysProvider.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/RestrictedKeysProvider.java diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/EntityIntrospector.java b/api/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/EntityIntrospector.java similarity index 100% rename from schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/EntityIntrospector.java rename to api/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/EntityIntrospector.java diff --git a/dependencies/pom.xml b/dependencies/pom.xml index 665f1b0e9..914d55a2e 100644 --- a/dependencies/pom.xml +++ b/dependencies/pom.xml @@ -60,6 +60,11 @@ <artifactId>graphql-jpa-query-scalars</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>com.introproventures</groupId> + <artifactId>graphql-jpa-query-api</artifactId> + <version>${project.version}</version> + </dependency> <dependency> <groupId>com.introproventures</groupId> <artifactId>graphql-jpa-query-schema</artifactId> diff --git a/pom.xml b/pom.xml index 06dd0df58..98572b547 100644 --- a/pom.xml +++ b/pom.xml @@ -347,6 +347,7 @@ <modules> <module>annotations</module> <module>scalars</module> + <module>api</module> <module>schema</module> <module>boot-starter</module> <module>dependencies</module> @@ -363,6 +364,7 @@ <modules> <module>annotations</module> <module>scalars</module> + <module>api</module> <module>schema</module> <module>boot-starter</module> <module>dependencies</module> diff --git a/schema/pom.xml b/schema/pom.xml index db295d230..490abf82b 100644 --- a/schema/pom.xml +++ b/schema/pom.xml @@ -22,6 +22,11 @@ <artifactId>graphql-jpa-query-annotations</artifactId> </dependency> + <dependency> + <groupId>com.introproventures</groupId> + <artifactId>graphql-jpa-query-api</artifactId> + </dependency> + <dependency> <groupId>com.introproventures</groupId> <artifactId>graphql-jpa-query-scalars</artifactId>