From 46e1fa56b8f1a70a6da0bbd7936b6fec4cd7aa3b Mon Sep 17 00:00:00 2001 From: Brutus5000 Date: Wed, 8 Jan 2020 22:21:18 +0100 Subject: [PATCH] Move API DTOs back to faf-java-commons --- build.gradle | 23 ++++-- .../api/FafApiCommunicationService.java | 16 +--- .../api/domain/AvatarService.java | 4 +- .../api/dto/get/GroupPermission.java | 73 ------------------- .../moderatorclient/api/dto/get/MeResult.java | 37 ---------- .../api/dto/get/TeamkillReport.java | 36 --------- .../api/dto/get/UserGroup.java | 28 ------- .../dto/update/AvatarAssignmentUpdate.java | 18 ----- .../dto/{get => update}/AvatarMetadata.java | 2 +- .../api/dto/update/UpdateDto.java | 5 -- .../mapstruct/TeamKillReportMapper.java | 2 +- .../moderatorclient/ui/LoginController.java | 2 +- .../moderatorclient/ui/MainController.java | 2 +- .../main_window/RecentActivityController.java | 2 +- .../main_window/UserManagementController.java | 29 ++------ 15 files changed, 34 insertions(+), 245 deletions(-) delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/get/GroupPermission.java delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/get/MeResult.java delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/get/TeamkillReport.java delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/get/UserGroup.java delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarAssignmentUpdate.java rename src/main/java/com/faforever/moderatorclient/api/dto/{get => update}/AvatarMetadata.java (60%) delete mode 100644 src/main/java/com/faforever/moderatorclient/api/dto/update/UpdateDto.java diff --git a/build.gradle b/build.gradle index 9096c51..c3e6d59 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,5 @@ +import org.gradle.internal.os.OperatingSystem + buildscript { repositories { jcenter() @@ -22,12 +24,23 @@ compileJava() { options.compilerArgs << "-Amapstruct.defaultComponentModel=jsr330" } +project.ext.javafxPlatform = "${javafxPlatform}" + if (javafxPlatform == "unspecified") { - throw new InvalidUserDataException("javafxPlatform unspecified! Must be one of [linux,mac,win]") -} else { - project.ext.javafxPlatform = "${javafxPlatform}" + switch (OperatingSystem.current()) { + case OperatingSystem.LINUX: + project.ext.javafxPlatform = "linux" + break + case OperatingSystem.MAC_OS: + project.ext.javafxPlatform = "mac" + break + case OperatingSystem.WINDOWS: + project.ext.javafxPlatform = "win" + break + } println "Platform is: ${javafxPlatform}" } +println "Platform is: ${javafxPlatform}" dependencies { annotationProcessor(platform("org.springframework.boot:spring-boot-dependencies:2.1.11.RELEASE")) @@ -43,8 +56,8 @@ dependencies { implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310' implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8' implementation 'com.github.jasminb:jsonapi-converter:0.9' - implementation 'com.github.FAForever.faf-java-commons:faf-commons-data:4ca1f75' - implementation 'com.github.FAForever.faf-java-commons:faf-commons-api:4ca1f75' + implementation 'com.github.FAForever.faf-java-commons:faf-commons-data:cc8c606a' + implementation 'com.github.FAForever.faf-java-commons:faf-commons-api:cc8c606a' implementation 'com.github.micheljung:nocatch:1.1' implementation 'org.apache.httpcomponents:httpclient:4.5.9' implementation 'com.github.rutledgepaulv:q-builders:1.6' diff --git a/src/main/java/com/faforever/moderatorclient/api/FafApiCommunicationService.java b/src/main/java/com/faforever/moderatorclient/api/FafApiCommunicationService.java index 9abac9f..073f166 100644 --- a/src/main/java/com/faforever/moderatorclient/api/FafApiCommunicationService.java +++ b/src/main/java/com/faforever/moderatorclient/api/FafApiCommunicationService.java @@ -1,11 +1,11 @@ package com.faforever.moderatorclient.api; +import com.faforever.commons.api.dto.MeResult; +import com.faforever.commons.api.dto.update.UpdateDto; import com.faforever.commons.api.elide.ElideEntity; import com.faforever.commons.api.elide.ElideNavigator; import com.faforever.commons.api.elide.ElideNavigatorOnCollection; import com.faforever.commons.api.elide.ElideNavigatorOnId; -import com.faforever.moderatorclient.api.dto.get.MeResult; -import com.faforever.moderatorclient.api.dto.update.UpdateDto; import com.faforever.moderatorclient.api.event.FafApiFailGetEvent; import com.faforever.moderatorclient.api.event.FafApiFailModifyEvent; import com.faforever.moderatorclient.mapstruct.CycleAvoidingMappingContext; @@ -18,11 +18,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.web.client.RestTemplateBuilder; import org.springframework.context.ApplicationEventPublisher; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpMethod; -import org.springframework.http.MediaType; -import org.springframework.http.ResponseEntity; +import org.springframework.http.*; import org.springframework.security.oauth2.client.OAuth2RestTemplate; import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; import org.springframework.security.oauth2.client.token.grant.password.ResourceOwnerPasswordResourceDetails; @@ -35,11 +31,7 @@ import java.io.Serializable; import java.lang.reflect.Array; -import java.util.Arrays; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.CountDownLatch; import java.util.stream.Collectors; diff --git a/src/main/java/com/faforever/moderatorclient/api/domain/AvatarService.java b/src/main/java/com/faforever/moderatorclient/api/domain/AvatarService.java index 30b29e9..13d459d 100644 --- a/src/main/java/com/faforever/moderatorclient/api/domain/AvatarService.java +++ b/src/main/java/com/faforever/moderatorclient/api/domain/AvatarService.java @@ -2,12 +2,12 @@ import com.faforever.commons.api.dto.Avatar; import com.faforever.commons.api.dto.AvatarAssignment; +import com.faforever.commons.api.dto.update.AvatarAssignmentUpdate; import com.faforever.commons.api.elide.ElideNavigator; import com.faforever.commons.api.elide.ElideNavigatorOnCollection; import com.faforever.commons.api.elide.ElideNavigatorOnId; import com.faforever.moderatorclient.api.FafApiCommunicationService; -import com.faforever.moderatorclient.api.dto.get.AvatarMetadata; -import com.faforever.moderatorclient.api.dto.update.AvatarAssignmentUpdate; +import com.faforever.moderatorclient.api.dto.update.AvatarMetadata; import com.faforever.moderatorclient.mapstruct.AvatarAssignmentMapper; import com.faforever.moderatorclient.ui.domain.AvatarAssignmentFX; import lombok.extern.slf4j.Slf4j; diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/get/GroupPermission.java b/src/main/java/com/faforever/moderatorclient/api/dto/get/GroupPermission.java deleted file mode 100644 index 4f97293..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/get/GroupPermission.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.faforever.moderatorclient.api.dto.get; - -import com.faforever.commons.api.dto.AbstractEntity; -import com.github.jasminb.jsonapi.annotations.Relationship; -import com.github.jasminb.jsonapi.annotations.Type; - -import java.util.Set; - -import static com.faforever.moderatorclient.api.dto.get.GroupPermission.TYPE_NAME; - -@Type(TYPE_NAME) -public class GroupPermission extends AbstractEntity { - public static final String TYPE_NAME = "groupPermission"; - - public static final String ROLE_READ_AUDIT_LOG = "ROLE_READ_AUDIT_LOG"; - public static final String ROLE_READ_TEAMKILL_REPORT = "ROLE_READ_TEAMKILL_REPORT"; - public static final String ROLE_READ_ACCOUNT_PRIVATE_DETAILS = "ROLE_READ_ACCOUNT_PRIVATE_DETAILS"; - public static final String ROLE_ADMIN_ACCOUNT_NOTE = "ROLE_ADMIN_ACCOUNT_NOTE"; - public static final String ROLE_ADMIN_MODERATION_REPORT = "ROLE_ADMIN_MODERATION_REPORT"; - public static final String ROLE_ADMIN_ACCOUNT_BAN = "ROLE_ADMIN_ACCOUNT_BAN"; - public static final String ROLE_ADMIN_CLAN = "ROLE_ADMIN_CLAN"; - public static final String ROLE_WRITE_MAP = "ROLE_WRITE_MAP"; - public static final String ROLE_WRITE_MOD = "ROLE_WRITE_MOD"; - public static final String ROLE_WRITE_COOP_MISSION = "ROLE_WRITE_COOP_MISSION"; - public static final String ROLE_WRITE_AVATAR = "ROLE_WRITE_AVATAR"; - public static final String ROLE_WRITE_MATCHMAKER_MAP = "ROLE_WRITE_MATCHMAKER_MAP"; - public static final String ROLE_WRITE_EMAIL_DOMAIN_BAN = "ROLE_WRITE_EMAIL_DOMAIN_BAN"; - public static final String ROLE_ADMIN_VOTE = "ROLE_ADMIN_VOTE"; - public static final String ROLE_WRITE_USER_GROUP = "ROLE_WRITE_USER_GROUP"; - public static final String ROLE_READ_USER_GROUP = "ROLE_READ_USER_GROUP"; - public static final String ROLE_WRITE_TUTORIAL = "ROLE_WRITE_TUTORIAL"; - public static final String ROLE_WRITE_NEWS_POST = "ROLE_WRITE_NEWS_POST"; - public static final String ROLE_WRITE_OAUTH_CLIENT = "ROLE_WRITE_OAUTH_CLIENT"; - public static final String ROLE_ADMIN_MAP = "ROLE_ADMIN_MAP"; - public static final String ROLE_ADMIN_MOD = "ROLE_ADMIN_MOD"; - public static final String ROLE_WRITE_MESSAGE = "ROLE_WRITE_MESSAGE"; - - private String technicalName; - private String nameKey; - - @Relationship("userGroups") - private Set userGroups; - - public GroupPermission() { - } - - public String getTechnicalName() { - return this.technicalName; - } - - public GroupPermission setTechnicalName(String technicalName) { - this.technicalName = technicalName; - return this; - } - - public String getNameKey() { - return this.nameKey; - } - - public GroupPermission setNameKey(String nameKey) { - this.nameKey = nameKey; - return this; - } - - public Set getUserGroups() { - return this.userGroups; - } - - public GroupPermission setUserGroups(Set userGroups) { - this.userGroups = userGroups; - return this; - } -} diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/get/MeResult.java b/src/main/java/com/faforever/moderatorclient/api/dto/get/MeResult.java deleted file mode 100644 index 24cc3c5..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/get/MeResult.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.faforever.moderatorclient.api.dto.get; - -import com.faforever.commons.api.elide.ElideEntity; -import com.github.jasminb.jsonapi.annotations.Id; -import com.github.jasminb.jsonapi.annotations.Type; -import lombok.Getter; -import lombok.Setter; - -import java.util.Set; - -@Type(MeResult.TYPE_NAME) -@Getter -@Setter -public class MeResult implements ElideEntity { - - public static final String TYPE_NAME = "me"; - - @Id - private String userId; - private String userName; - private String email; - private Clan clan; - private Set groups; - private Set permissions; - - @Override - public String getId() { - return userId; - } - - public static class Clan { - private Integer id; - private Integer membershipId; - private String tag; - private String name; - } -} \ No newline at end of file diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/get/TeamkillReport.java b/src/main/java/com/faforever/moderatorclient/api/dto/get/TeamkillReport.java deleted file mode 100644 index 45e9b64..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/get/TeamkillReport.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.faforever.moderatorclient.api.dto.get; - -import com.faforever.commons.api.dto.AbstractEntity; -import com.faforever.commons.api.dto.Game; -import com.faforever.commons.api.dto.Player; -import com.faforever.commons.api.dto.RestrictedVisibility; -import com.github.jasminb.jsonapi.annotations.Relationship; -import com.github.jasminb.jsonapi.annotations.Type; -import lombok.Getter; -import lombok.Setter; - -import java.time.OffsetDateTime; - -@Getter -@Setter -@Type(TeamkillReport.TYPE_NAME) -@RestrictedVisibility("IsModerator") -public class TeamkillReport extends AbstractEntity { - - public static final String TYPE_NAME = "teamkillReport"; - - /** - * How many seconds into the game, in simulation time. - */ - private Integer gameTime; - private OffsetDateTime reportedAt; - - @Relationship("teamkiller") - private Player teamkiller; - - @Relationship("victim") - private Player victim; - - @Relationship("game") - private Game game; -} diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/get/UserGroup.java b/src/main/java/com/faforever/moderatorclient/api/dto/get/UserGroup.java deleted file mode 100644 index 44370ba..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/get/UserGroup.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.faforever.moderatorclient.api.dto.get; - -import com.faforever.commons.api.dto.AbstractEntity; -import com.faforever.commons.api.dto.Player; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.github.jasminb.jsonapi.annotations.Relationship; -import com.github.jasminb.jsonapi.annotations.Type; -import lombok.Getter; -import lombok.Setter; - -import java.util.Set; - -@Getter -@Setter -@Type(UserGroup.TYPE_NAME) -public class UserGroup extends AbstractEntity { - - public static final String TYPE_NAME = "userGroup"; - - private String technicalName; - private String nameKey; - private boolean public_; - @Relationship("members") - @JsonIgnore - private Set members; - @Relationship("permissions") - private Set permissions; -} diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarAssignmentUpdate.java b/src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarAssignmentUpdate.java deleted file mode 100644 index f8804f6..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarAssignmentUpdate.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.faforever.moderatorclient.api.dto.update; - -import com.faforever.commons.api.dto.AvatarAssignment; -import com.github.jasminb.jsonapi.annotations.Id; -import com.github.jasminb.jsonapi.annotations.Type; -import lombok.Value; - -import java.time.OffsetDateTime; -import java.util.Optional; - -@Value -@Type("avatarAssignment") -public class AvatarAssignmentUpdate implements UpdateDto { - @Id - private String id; - private Optional selected; - private Optional expiresAt; -} diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/get/AvatarMetadata.java b/src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarMetadata.java similarity index 60% rename from src/main/java/com/faforever/moderatorclient/api/dto/get/AvatarMetadata.java rename to src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarMetadata.java index 0d3fa46..a007f37 100644 --- a/src/main/java/com/faforever/moderatorclient/api/dto/get/AvatarMetadata.java +++ b/src/main/java/com/faforever/moderatorclient/api/dto/update/AvatarMetadata.java @@ -1,4 +1,4 @@ -package com.faforever.moderatorclient.api.dto.get; +package com.faforever.moderatorclient.api.dto.update; import lombok.Data; diff --git a/src/main/java/com/faforever/moderatorclient/api/dto/update/UpdateDto.java b/src/main/java/com/faforever/moderatorclient/api/dto/update/UpdateDto.java deleted file mode 100644 index 4ace0d8..0000000 --- a/src/main/java/com/faforever/moderatorclient/api/dto/update/UpdateDto.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.faforever.moderatorclient.api.dto.update; - -public interface UpdateDto { - String getId(); -} diff --git a/src/main/java/com/faforever/moderatorclient/mapstruct/TeamKillReportMapper.java b/src/main/java/com/faforever/moderatorclient/mapstruct/TeamKillReportMapper.java index 5108df2..55d684d 100644 --- a/src/main/java/com/faforever/moderatorclient/mapstruct/TeamKillReportMapper.java +++ b/src/main/java/com/faforever/moderatorclient/mapstruct/TeamKillReportMapper.java @@ -1,7 +1,7 @@ package com.faforever.moderatorclient.mapstruct; +import com.faforever.commons.api.dto.TeamkillReport; import com.faforever.moderatorclient.api.domain.TeamKillReportFx; -import com.faforever.moderatorclient.api.dto.get.TeamkillReport; import org.mapstruct.Mapper; import java.util.List; diff --git a/src/main/java/com/faforever/moderatorclient/ui/LoginController.java b/src/main/java/com/faforever/moderatorclient/ui/LoginController.java index 275fa61..62e4b4d 100644 --- a/src/main/java/com/faforever/moderatorclient/ui/LoginController.java +++ b/src/main/java/com/faforever/moderatorclient/ui/LoginController.java @@ -1,7 +1,7 @@ package com.faforever.moderatorclient.ui; +import com.faforever.commons.api.dto.MeResult; import com.faforever.moderatorclient.api.FafApiCommunicationService; -import com.faforever.moderatorclient.api.dto.get.MeResult; import javafx.fxml.FXML; import javafx.scene.control.DialogPane; import javafx.scene.control.Label; diff --git a/src/main/java/com/faforever/moderatorclient/ui/MainController.java b/src/main/java/com/faforever/moderatorclient/ui/MainController.java index 21eab06..f35bf4a 100644 --- a/src/main/java/com/faforever/moderatorclient/ui/MainController.java +++ b/src/main/java/com/faforever/moderatorclient/ui/MainController.java @@ -1,7 +1,7 @@ package com.faforever.moderatorclient.ui; +import com.faforever.commons.api.dto.GroupPermission; import com.faforever.moderatorclient.api.FafApiCommunicationService; -import com.faforever.moderatorclient.api.dto.get.GroupPermission; import com.faforever.moderatorclient.api.event.FafApiFailGetEvent; import com.faforever.moderatorclient.api.event.FafApiFailModifyEvent; import com.faforever.moderatorclient.ui.main_window.AvatarsController; diff --git a/src/main/java/com/faforever/moderatorclient/ui/main_window/RecentActivityController.java b/src/main/java/com/faforever/moderatorclient/ui/main_window/RecentActivityController.java index e463ae5..421e85c 100644 --- a/src/main/java/com/faforever/moderatorclient/ui/main_window/RecentActivityController.java +++ b/src/main/java/com/faforever/moderatorclient/ui/main_window/RecentActivityController.java @@ -1,9 +1,9 @@ package com.faforever.moderatorclient.ui.main_window; +import com.faforever.commons.api.dto.GroupPermission; import com.faforever.moderatorclient.api.FafApiCommunicationService; import com.faforever.moderatorclient.api.domain.MapService; import com.faforever.moderatorclient.api.domain.UserService; -import com.faforever.moderatorclient.api.dto.get.GroupPermission; import com.faforever.moderatorclient.ui.BanInfoController; import com.faforever.moderatorclient.ui.Controller; import com.faforever.moderatorclient.ui.UiService; diff --git a/src/main/java/com/faforever/moderatorclient/ui/main_window/UserManagementController.java b/src/main/java/com/faforever/moderatorclient/ui/main_window/UserManagementController.java index ddfaf2b..ed61360 100644 --- a/src/main/java/com/faforever/moderatorclient/ui/main_window/UserManagementController.java +++ b/src/main/java/com/faforever/moderatorclient/ui/main_window/UserManagementController.java @@ -1,26 +1,13 @@ package com.faforever.moderatorclient.ui.main_window; +import com.faforever.commons.api.dto.GroupPermission; +import com.faforever.commons.api.dto.update.AvatarAssignmentUpdate; import com.faforever.moderatorclient.api.FafApiCommunicationService; import com.faforever.moderatorclient.api.domain.AvatarService; import com.faforever.moderatorclient.api.domain.UserService; -import com.faforever.moderatorclient.api.dto.get.GroupPermission; -import com.faforever.moderatorclient.api.dto.update.AvatarAssignmentUpdate; import com.faforever.moderatorclient.mapstruct.GamePlayerStatsMapper; -import com.faforever.moderatorclient.ui.BanInfoController; -import com.faforever.moderatorclient.ui.Controller; -import com.faforever.moderatorclient.ui.PlatformService; -import com.faforever.moderatorclient.ui.UiService; -import com.faforever.moderatorclient.ui.UserNoteController; -import com.faforever.moderatorclient.ui.ViewHelper; -import com.faforever.moderatorclient.ui.domain.AvatarAssignmentFX; -import com.faforever.moderatorclient.ui.domain.AvatarFX; -import com.faforever.moderatorclient.ui.domain.BanInfoFX; -import com.faforever.moderatorclient.ui.domain.FeaturedModFX; -import com.faforever.moderatorclient.ui.domain.GamePlayerStatsFX; -import com.faforever.moderatorclient.ui.domain.NameRecordFX; -import com.faforever.moderatorclient.ui.domain.PlayerFX; -import com.faforever.moderatorclient.ui.domain.TeamkillFX; -import com.faforever.moderatorclient.ui.domain.UserNoteFX; +import com.faforever.moderatorclient.ui.*; +import com.faforever.moderatorclient.ui.domain.*; import javafx.application.Platform; import javafx.beans.binding.Bindings; import javafx.beans.property.ObjectProperty; @@ -30,13 +17,7 @@ import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.scene.Scene; -import javafx.scene.control.Button; -import javafx.scene.control.ChoiceBox; -import javafx.scene.control.RadioButton; -import javafx.scene.control.SplitPane; -import javafx.scene.control.Tab; -import javafx.scene.control.TableView; -import javafx.scene.control.TextField; +import javafx.scene.control.*; import javafx.stage.Stage; import javafx.util.StringConverter; import lombok.RequiredArgsConstructor;