Repository: incubator-unomi
Updated Branches:
  refs/heads/UNOMI-180-CXS-GRAPHQLAPI 061326767 -> 20d7292c0


UNOMI-180 Implement CXS GraphQL API
- Add some example operators for String filters
- Add the possibility to provide a "or" operator as a default for property 
matching using a seperate "properties_or" field

Signed-off-by: Serge Huber <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/20d7292c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/20d7292c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/20d7292c

Branch: refs/heads/UNOMI-180-CXS-GRAPHQLAPI
Commit: 20d7292c0e2016e754628a506e80f6e263659489
Parents: 0613267
Author: Serge Huber <[email protected]>
Authored: Fri Jun 8 11:11:51 2018 +0200
Committer: Serge Huber <[email protected]>
Committed: Fri Jun 8 11:11:51 2018 +0200

----------------------------------------------------------------------
 .../unomi/graphql/internal/CXSGraphQLProviderImpl.java  | 12 ++++++++++++
 1 file changed, 12 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/20d7292c/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
----------------------------------------------------------------------
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
index 2c7a0b4..a0596cc 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
@@ -189,6 +189,14 @@ public class CXSGraphQLProviderImpl implements 
CXSGraphQLProvider, GraphQLQueryP
                 .name(propertyName + "_regexp")
                 .type(GraphQLString)
         );
+        inputTypeBuilder.field(newInputObjectField()
+                .name(propertyName + "_startsWith")
+                .type(GraphQLString)
+        );
+        inputTypeBuilder.field(newInputObjectField()
+                .name(propertyName + "_contains")
+                .type(new GraphQLList(GraphQLString))
+        );
     }
 
     private void addBooleanFilters(String propertyName, 
GraphQLInputObjectType.Builder inputTypeBuilder) {
@@ -275,6 +283,10 @@ public class CXSGraphQLProviderImpl implements 
CXSGraphQLProvider, GraphQLQueryP
                         
.type(registeredInputTypes.get("CXS_EventPropertiesFilterInput"))
                 )
                 .field(newInputObjectField()
+                        .name("properties_or")
+                        
.type(registeredInputTypes.get("CXS_EventPropertiesFilterInput"))
+                )
+                .field(newInputObjectField()
                         .name("eventOccurrence")
                         
.type(registeredInputTypes.get(CXSEventOccurrenceFilterInput.class.getName()))
                 );

Reply via email to