Skip to content

Commit da14fd1

Browse files
committed
Moves DTOs into their own module
1 parent 5b097c3 commit da14fd1

File tree

60 files changed

+585
-450
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+585
-450
lines changed

.github/workflows/release.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Publish dto package to GitHub Packages
2+
on:
3+
release:
4+
types: [created]
5+
jobs:
6+
publish:
7+
runs-on: ubuntu-latest
8+
permissions:
9+
contents: read
10+
packages: write
11+
steps:
12+
- uses: actions/checkout@v3
13+
- uses: actions/setup-java@v3
14+
with:
15+
java-version: '17'
16+
distribution: 'adopt'
17+
- name: Publish package
18+
run: mvn --batch-mode deploy -Drevision=${{ github.event.release.name }}
19+
env:
20+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

infra/docker/docker-compose-dev.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,18 @@ services:
2525
# - POSTGRES_PASSWORD=postgres
2626
# - KEYCLOAK_HOST=https://keycloak
2727

28-
# keycloak:
29-
# image: jboss/keycloak:16.1.1
30-
# container_name: keycloak
31-
# environment:
32-
# DB_VENDOR: H2
33-
# KEYCLOAK_USER: admin
34-
# KEYCLOAK_PASSWORD: admin
35-
# KEYCLOAK_IMPORT: "/opt/jboss/keycloak/realm-config/quarkus-realm.json"
36-
# volumes:
37-
# - ./keycloak:/opt/jboss/keycloak/realm-config
38-
# ports:
39-
# - "8081:8080"
28+
keycloak:
29+
image: jboss/keycloak:16.1.1
30+
container_name: keycloak
31+
environment:
32+
DB_VENDOR: H2
33+
KEYCLOAK_USER: admin
34+
KEYCLOAK_PASSWORD: admin
35+
KEYCLOAK_IMPORT: "/opt/jboss/keycloak/realm-config/quarkus-realm.json"
36+
volumes:
37+
- ../keycloak:/opt/jboss/keycloak/realm-config
38+
ports:
39+
- "8081:8080"
4040

4141
volumes:
4242
dbdata:

leaderboards-app/pom.xml

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
<parent>
7+
<groupId>com.lunatech.leaderboards</groupId>
8+
<artifactId>leaderboards</artifactId>
9+
<version>${revision}</version>
10+
</parent>
11+
12+
<artifactId>leaderboards-app</artifactId>
13+
14+
<properties>
15+
<maven.deploy.skip>true</maven.deploy.skip>
16+
</properties>
17+
18+
<dependencies>
19+
<dependency>
20+
<groupId>io.quarkus</groupId>
21+
<artifactId>quarkus-arc</artifactId>
22+
</dependency>
23+
<dependency>
24+
<groupId>io.quarkus</groupId>
25+
<artifactId>quarkus-hibernate-orm-panache</artifactId>
26+
</dependency>
27+
<dependency>
28+
<groupId>io.quarkus</groupId>
29+
<artifactId>quarkus-jdbc-postgresql</artifactId>
30+
</dependency>
31+
<dependency>
32+
<groupId>io.quarkus</groupId>
33+
<artifactId>quarkus-flyway</artifactId>
34+
</dependency>
35+
<dependency>
36+
<groupId>io.quarkus</groupId>
37+
<artifactId>quarkus-resteasy-reactive-jackson</artifactId>
38+
</dependency>
39+
<dependency>
40+
<groupId>io.quarkus</groupId>
41+
<artifactId>quarkus-smallrye-openapi</artifactId>
42+
</dependency>
43+
<dependency>
44+
<groupId>io.quarkus</groupId>
45+
<artifactId>quarkus-smallrye-graphql-client</artifactId>
46+
</dependency>
47+
<dependency>
48+
<groupId>io.quarkus</groupId>
49+
<artifactId>quarkus-oidc</artifactId>
50+
</dependency>
51+
<dependency>
52+
<groupId>io.quarkus</groupId>
53+
<artifactId>quarkus-keycloak-authorization</artifactId>
54+
</dependency>
55+
<dependency>
56+
<groupId>org.projectlombok</groupId>
57+
<artifactId>lombok</artifactId>
58+
<version>1.18.24</version>
59+
<scope>provided</scope>
60+
</dependency>
61+
<dependency>
62+
<groupId>io.quarkus</groupId>
63+
<artifactId>quarkus-config-yaml</artifactId>
64+
</dependency>
65+
<dependency>
66+
<groupId>io.quarkus</groupId>
67+
<artifactId>quarkus-cache</artifactId>
68+
</dependency>
69+
<dependency>
70+
<groupId>io.quarkus</groupId>
71+
<artifactId>quarkus-container-image-jib</artifactId>
72+
</dependency>
73+
<dependency>
74+
<groupId>io.quarkus</groupId>
75+
<artifactId>quarkus-junit5</artifactId>
76+
<scope>test</scope>
77+
</dependency>
78+
<dependency>
79+
<groupId>com.lunatech.leaderboards</groupId>
80+
<artifactId>leaderboards-dto</artifactId>
81+
<version>${revision}</version>
82+
</dependency>
83+
</dependencies>
84+
<build>
85+
<plugins>
86+
<plugin>
87+
<groupId>${quarkus.platform.group-id}</groupId>
88+
<artifactId>quarkus-maven-plugin</artifactId>
89+
<version>${quarkus.platform.version}</version>
90+
<extensions>true</extensions>
91+
<executions>
92+
<execution>
93+
<goals>
94+
<goal>build</goal>
95+
<goal>generate-code</goal>
96+
<goal>generate-code-tests</goal>
97+
</goals>
98+
</execution>
99+
</executions>
100+
</plugin>
101+
<plugin>
102+
<artifactId>maven-compiler-plugin</artifactId>
103+
<version>${compiler-plugin.version}</version>
104+
<configuration>
105+
<compilerArgs>
106+
<arg>-parameters</arg>
107+
</compilerArgs>
108+
</configuration>
109+
</plugin>
110+
<plugin>
111+
<artifactId>maven-surefire-plugin</artifactId>
112+
<version>${surefire-plugin.version}</version>
113+
<configuration>
114+
<systemPropertyVariables>
115+
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
116+
<maven.home>${maven.home}</maven.home>
117+
</systemPropertyVariables>
118+
</configuration>
119+
</plugin>
120+
<plugin>
121+
<artifactId>maven-failsafe-plugin</artifactId>
122+
<version>${surefire-plugin.version}</version>
123+
<executions>
124+
<execution>
125+
<goals>
126+
<goal>integration-test</goal>
127+
<goal>verify</goal>
128+
</goals>
129+
<configuration>
130+
<systemPropertyVariables>
131+
<native.image.path>${project.build.directory}/${project.build.finalName}-runner</native.image.path>
132+
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
133+
<maven.home>${maven.home}</maven.home>
134+
</systemPropertyVariables>
135+
</configuration>
136+
</execution>
137+
</executions>
138+
</plugin>
139+
</plugins>
140+
</build>
141+
<profiles>
142+
<profile>
143+
<id>native</id>
144+
<activation>
145+
<property>
146+
<name>native</name>
147+
</property>
148+
</activation>
149+
<properties>
150+
<skipITs>false</skipITs>
151+
<quarkus.native.container-build>true</quarkus.native.container-build>
152+
<quarkus.package.type>native</quarkus.package.type>
153+
</properties>
154+
</profile>
155+
</profiles>
156+
</project>

src/main/java/com/lunatech/leaderboard/client/graphql/lunagraph/GraphQLClients.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/client/graphql/lunagraph/GraphQLClients.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package com.lunatech.leaderboard.client.graphql.lunagraph;
1+
package com.lunatech.leaderboards.client.graphql.lunagraph;
22

3-
import com.lunatech.leaderboard.client.graphql.lunagraph.model.LunagraphPersonModel;
3+
import com.lunatech.leaderboards.client.graphql.lunagraph.model.LunagraphPersonModel;
44
import io.quarkus.arc.DefaultBean;
55
import io.quarkus.arc.profile.IfBuildProfile;
66
import io.smallrye.graphql.client.typesafe.api.TypesafeGraphQLClientBuilder;

src/main/java/com/lunatech/leaderboard/client/graphql/lunagraph/LunagraphApi.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/client/graphql/lunagraph/LunagraphApi.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package com.lunatech.leaderboard.client.graphql.lunagraph;
1+
package com.lunatech.leaderboards.client.graphql.lunagraph;
22

3-
import com.lunatech.leaderboard.client.graphql.lunagraph.model.LunagraphPersonModel;
3+
import com.lunatech.leaderboards.client.graphql.lunagraph.model.LunagraphPersonModel;
44
import org.eclipse.microprofile.graphql.Name;
55
import org.eclipse.microprofile.graphql.Query;
66

src/main/java/com/lunatech/leaderboard/client/graphql/lunagraph/model/LunagraphEmployeeType.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/client/graphql/lunagraph/model/LunagraphEmployeeType.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.lunatech.leaderboard.client.graphql.lunagraph.model;
1+
package com.lunatech.leaderboards.client.graphql.lunagraph.model;
22

33
import org.eclipse.microprofile.graphql.Enum;
44

src/main/java/com/lunatech/leaderboard/client/graphql/lunagraph/model/LunagraphPersonModel.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/client/graphql/lunagraph/model/LunagraphPersonModel.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.lunatech.leaderboard.client.graphql.lunagraph.model;
1+
package com.lunatech.leaderboards.client.graphql.lunagraph.model;
22

33

44
public record LunagraphPersonModel(String fullName, String emailAddress) {}

src/main/java/com/lunatech/leaderboard/controller/GameController.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/controller/GameController.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
package com.lunatech.leaderboard.controller;
1+
package com.lunatech.leaderboards.controller;
22

3-
import com.lunatech.leaderboard.dto.game.GameDto;
4-
import com.lunatech.leaderboard.entity.Game;
5-
import com.lunatech.leaderboard.mapper.game.GameDtoMapper;
6-
import com.lunatech.leaderboard.service.GameService;
3+
import com.lunatech.leaderboards.dto.game.GameDto;
4+
import com.lunatech.leaderboards.entity.Game;
5+
import com.lunatech.leaderboards.mapper.game.GameDtoMapper;
6+
import com.lunatech.leaderboards.service.GameService;
77
import io.quarkus.security.Authenticated;
88
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
99
import org.eclipse.microprofile.openapi.annotations.media.Content;
@@ -20,7 +20,6 @@
2020
import javax.ws.rs.core.Response;
2121
import java.net.URI;
2222
import java.util.Collection;
23-
import java.util.List;
2423

2524
@Path("/games")
2625
@Produces(MediaType.APPLICATION_JSON)

src/main/java/com/lunatech/leaderboard/controller/GameModeController.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/controller/GameModeController.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
package com.lunatech.leaderboard.controller;
1+
package com.lunatech.leaderboards.controller;
22

3-
import com.lunatech.leaderboard.dto.gamemode.GameModeDto;
4-
import com.lunatech.leaderboard.dto.gamemode.GameModePostDto;
5-
import com.lunatech.leaderboard.entity.GameMode;
6-
import com.lunatech.leaderboard.mapper.gamemode.GameModeDtoMapper;
7-
import com.lunatech.leaderboard.service.GameModeService;
3+
import com.lunatech.leaderboards.dto.gamemode.GameModeDto;
4+
import com.lunatech.leaderboards.dto.gamemode.GameModePostDto;
5+
import com.lunatech.leaderboards.entity.GameMode;
6+
import com.lunatech.leaderboards.mapper.gamemode.GameModeDtoMapper;
7+
import com.lunatech.leaderboards.service.GameModeService;
88
import io.quarkus.security.Authenticated;
99
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
1010
import org.eclipse.microprofile.openapi.annotations.media.Content;

src/main/java/com/lunatech/leaderboard/controller/MatchController.java renamed to leaderboards-app/src/main/java/com/lunatech/leaderboards/controller/MatchController.java

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
package com.lunatech.leaderboard.controller;
1+
package com.lunatech.leaderboards.controller;
22

3-
import com.lunatech.leaderboard.dto.match.MatchDto;
4-
import com.lunatech.leaderboard.dto.match.MatchPostDto;
5-
import com.lunatech.leaderboard.entity.Match;
6-
import com.lunatech.leaderboard.entity.User;
7-
import com.lunatech.leaderboard.mapper.match.MatchDtoMapper;
8-
import com.lunatech.leaderboard.service.MatchService;
3+
import com.lunatech.leaderboards.dto.match.MatchDto;
4+
import com.lunatech.leaderboards.dto.match.MatchPostDto;
5+
import com.lunatech.leaderboards.entity.Match;
6+
import com.lunatech.leaderboards.entity.User;
7+
import com.lunatech.leaderboards.mapper.match.MatchDtoMapper;
8+
import com.lunatech.leaderboards.service.MatchService;
99
import io.quarkus.security.Authenticated;
1010
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
1111
import org.eclipse.microprofile.openapi.annotations.media.Content;
@@ -14,15 +14,13 @@
1414
import org.eclipse.microprofile.openapi.annotations.responses.APIResponse;
1515
import org.eclipse.microprofile.openapi.annotations.responses.APIResponseSchema;
1616

17-
import javax.annotation.security.RolesAllowed;
1817
import javax.inject.Inject;
1918
import javax.transaction.Transactional;
2019
import javax.ws.rs.*;
2120
import javax.ws.rs.core.MediaType;
2221
import javax.ws.rs.core.Response;
2322
import java.net.URI;
2423
import java.util.Collection;
25-
import java.util.List;
2624

2725
@Path("/games/{gameId}/gamemodes/{gameModeId}/matches")
2826
@Produces(MediaType.APPLICATION_JSON)

0 commit comments

Comments
 (0)