Skip to content

Commit 1a22990

Browse files
author
etienne-sf
committed
Switch to 1.17.3p1 release + forum schema simplified
1 parent fd519c1 commit 1a22990

File tree

7 files changed

+1247
-44
lines changed

7 files changed

+1247
-44
lines changed

README.md

Lines changed: 1208 additions & 26 deletions
Large diffs are not rendered by default.

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
plugins {
2-
id "com.graphql_java_generator.graphql-gradle-plugin" version "${graphQLpluginVersion}"
2+
id "com.graphql_java_generator.graphql-gradle-plugin" version "${graphQLPluginVersion}"
33
id 'java'
44
id "org.springframework.boot" version "2.4.4"
55
}
@@ -12,7 +12,7 @@ repositories {
1212
dependencies {
1313
// The graphql-java-runtime module agregates all dependencies for the generated code, including the plugin runtime
1414
// CAUTION: this version should be exactly the same as the graphql-gradle-plugin's version
15-
implementation "com.graphql-java-generator:graphql-java-server-dependencies:${graphQLpluginVersion}"
15+
implementation "com.graphql-java-generator:graphql-java-server-dependencies:${graphQLRuntimeVersion}"
1616
implementation 'com.github.dozermapper:dozer-core:6.5.0'
1717
implementation 'io.reactivex.rxjava2:rxjava:2.2.19'
1818

gradle.properties

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
graphQLpluginVersion = 1.17
1+
graphQLPluginVersion = 1.17.3p1
2+
graphQLRuntimeVersion = 1.17.3

src/main/java/org/forum/server/impl/DataFetchersDelegateMutationTypeImpl.java renamed to src/main/java/org/forum/server/impl/DataFetchersDelegateMutationImpl.java

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,19 @@
55
import javax.annotation.Resource;
66

77
import org.forum.server.graphql.Board;
8+
import org.forum.server.graphql.Member;
9+
import org.forum.server.graphql.MemberInput;
810
import org.forum.server.graphql.Post;
911
import org.forum.server.graphql.PostInput;
1012
import org.forum.server.graphql.Topic;
1113
import org.forum.server.graphql.TopicInput;
12-
import org.forum.server.graphql.util.DataFetchersDelegateMutationType;
14+
import org.forum.server.graphql.util.DataFetchersDelegateMutation;
1315
import org.forum.server.jpa.BoardEntity;
16+
import org.forum.server.jpa.MemberEntity;
1417
import org.forum.server.jpa.PostEntity;
1518
import org.forum.server.jpa.TopicEntity;
1619
import org.forum.server.jpa.repositories.BoardRepository;
20+
import org.forum.server.jpa.repositories.MemberRepository;
1721
import org.forum.server.jpa.repositories.PostRepository;
1822
import org.forum.server.jpa.repositories.TopicRepository;
1923
import org.springframework.stereotype.Component;
@@ -24,7 +28,7 @@
2428
import io.reactivex.subjects.Subject;
2529

2630
@Component
27-
public class DataFetchersDelegateMutationTypeImpl implements DataFetchersDelegateMutationType {
31+
public class DataFetchersDelegateMutationImpl implements DataFetchersDelegateMutation {
2832

2933
@Resource
3034
private Mapper mapper;
@@ -35,6 +39,8 @@ public class DataFetchersDelegateMutationTypeImpl implements DataFetchersDelegat
3539
TopicRepository topicRepository;
3640
@Resource
3741
PostRepository postRepository;
42+
@Resource
43+
MemberRepository memberRepository;
3844

3945
/**
4046
* This {@link Subject} will be notified for each Post creation. This is the basis for the subscribeToNewPost
@@ -87,6 +93,18 @@ public Post createPost(DataFetchingEnvironment dataFetchingEnvironment, PostInpu
8793
return newPost;
8894
}
8995

96+
@Override
97+
public Member createMember(DataFetchingEnvironment dataFetchingEnvironment, MemberInput input) {
98+
MemberEntity newMemberEntity = new MemberEntity();
99+
newMemberEntity.setAlias(input.getAlias());
100+
newMemberEntity.setEmail(input.getEmail());
101+
newMemberEntity.setName(input.getName());
102+
newMemberEntity.setType(input.getType().name());
103+
memberRepository.save(newMemberEntity);
104+
105+
return mapper.map(newMemberEntity, Member.class);
106+
}
107+
90108
@Override
91109
public List<Post> createPosts(DataFetchingEnvironment dataFetchingEnvironment, List<PostInput> spam) {
92110
// Actually, this mutation is for sample only. We don't want to implement it !

src/main/java/org/forum/server/impl/DataFetchersDelegateQueryTypeImpl.java renamed to src/main/java/org/forum/server/impl/DataFetchersDelegateQueryImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import org.forum.server.graphql.Board;
88
import org.forum.server.graphql.Topic;
9-
import org.forum.server.graphql.util.DataFetchersDelegateQueryType;
9+
import org.forum.server.graphql.util.DataFetchersDelegateQuery;
1010
import org.forum.server.jpa.BoardEntity;
1111
import org.forum.server.jpa.TopicEntity;
1212
import org.forum.server.jpa.repositories.BoardRepository;
@@ -18,7 +18,7 @@
1818
import graphql.schema.DataFetchingEnvironment;
1919

2020
@Component
21-
public class DataFetchersDelegateQueryTypeImpl implements DataFetchersDelegateQueryType {
21+
public class DataFetchersDelegateQueryImpl implements DataFetchersDelegateQuery {
2222

2323
@Resource
2424
private BoardRepository boardRepository;

src/main/java/org/forum/server/impl/DataFetchersDelegateSubscriptionTypeImpl.java renamed to src/main/java/org/forum/server/impl/DataFetchersDelegateSubscriptionImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import javax.annotation.Resource;
44

55
import org.forum.server.graphql.Post;
6-
import org.forum.server.graphql.util.DataFetchersDelegateSubscriptionType;
6+
import org.forum.server.graphql.util.DataFetchersDelegateSubscription;
77
import org.reactivestreams.Publisher;
88
import org.slf4j.Logger;
99
import org.slf4j.LoggerFactory;
@@ -13,7 +13,7 @@
1313
import io.reactivex.subjects.Subject;
1414

1515
@Component
16-
public class DataFetchersDelegateSubscriptionTypeImpl implements DataFetchersDelegateSubscriptionType {
16+
public class DataFetchersDelegateSubscriptionImpl implements DataFetchersDelegateSubscription {
1717

1818
/** The logger for this instance */
1919
protected Logger logger = LoggerFactory.getLogger(this.getClass());

src/main/resources/forum.graphqls

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,21 @@
11
scalar Date
22

3-
schema {
4-
query: QueryType
5-
mutation: MutationType
6-
subscription: SubscriptionType
7-
}
8-
9-
type QueryType {
3+
type Query {
104
boards: [Board]
115
nbBoards: Int
126
topics(boardName: String!): [Topic]!
137
findTopics(boardName: String!, keyword: [String!]): [Topic]
148
}
159

16-
type MutationType {
10+
type Mutation {
1711
createBoard(name: String!, publiclyAvailable: Boolean): Board!
1812
createTopic(topic: TopicInput): Topic!
1913
createPost(post: PostInput!): Post!
2014
createPosts(spam: [PostInput!]!): [Post!]!
15+
createMember(input: MemberInput!): Member
2116
}
2217

23-
type SubscriptionType {
18+
type Subscription {
2419
subscribeToNewPost(boardName: String!): Post!
2520
}
2621

@@ -30,6 +25,13 @@ enum MemberType {
3025
STANDARD
3126
}
3227

28+
input MemberInput {
29+
name: String!
30+
alias: String
31+
email: String!
32+
type: MemberType
33+
}
34+
3335
type Member {
3436
id: ID!
3537
name(uppercase: Boolean): String!

0 commit comments

Comments
 (0)