You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by bo...@apache.org on 2024/04/22 12:37:17 UTC

(streampipes) 01/02: refactor: convert model classes to records

This is an automated email from the ASF dual-hosted git repository.

bossenti pushed a commit to branch update-streampipes-model
in repository https://gitbox.apache.org/repos/asf/streampipes.git

commit 1ec0ed675476fbb157689012e14e03a38b561244
Author: bossenti <bo...@posteo.de>
AuthorDate: Thu Mar 28 12:49:34 2024 +0100

    refactor: convert model classes to records
---
 .../model/client/user/ChangePasswordRequest.java   | 25 +------------
 .../client/user/JwtAuthenticationResponse.java     | 21 +----------
 .../model/client/user/LoginRequest.java            | 33 +----------------
 .../model/client/user/PermissionEntry.java         | 29 +--------------
 .../model/client/user/RawUserApiToken.java         | 43 +---------------------
 .../streampipes/rest/impl/Authentication.java      |  6 +--
 .../apache/streampipes/rest/impl/UserResource.java |  4 +-
 .../user/management/service/TokenService.java      |  3 +-
 .../user/management/util/TokenUtil.java            | 14 +++----
 9 files changed, 16 insertions(+), 162 deletions(-)

diff --git a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/ChangePasswordRequest.java b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/ChangePasswordRequest.java
index 36dbb1ccae..ba32b0f2c8 100644
--- a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/ChangePasswordRequest.java
+++ b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/ChangePasswordRequest.java
@@ -18,28 +18,5 @@
 
 package org.apache.streampipes.model.client.user;
 
-public class ChangePasswordRequest {
-
-  private String existingPassword;
-  private String newPassword;
-
-  public ChangePasswordRequest() {
-
-  }
-
-  public String getNewPassword() {
-    return newPassword;
-  }
-
-  public void setNewPassword(String newPassword) {
-    this.newPassword = newPassword;
-  }
-
-  public String getExistingPassword() {
-    return existingPassword;
-  }
-
-  public void setExistingPassword(String existingPassword) {
-    this.existingPassword = existingPassword;
-  }
+public record ChangePasswordRequest(String existingPassword, String newPassword) {
 }
diff --git a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/JwtAuthenticationResponse.java b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/JwtAuthenticationResponse.java
index a86f68039f..cb77abff92 100644
--- a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/JwtAuthenticationResponse.java
+++ b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/JwtAuthenticationResponse.java
@@ -18,24 +18,5 @@
 
 package org.apache.streampipes.model.client.user;
 
-public class JwtAuthenticationResponse {
-
-  private String accessToken;
-
-  private JwtAuthenticationResponse(String accessToken) {
-    this.accessToken = accessToken;
-  }
-
-  public static JwtAuthenticationResponse from(String accessToken) {
-    return new JwtAuthenticationResponse(accessToken);
-  }
-
-  public String getAccessToken() {
-    return accessToken;
-  }
-
-  public void setAccessToken(String accessToken) {
-    this.accessToken = accessToken;
-  }
-
+public record JwtAuthenticationResponse(String accessToken) {
 }
diff --git a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/LoginRequest.java b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/LoginRequest.java
index 6615f6e7b8..878d4d0ce9 100644
--- a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/LoginRequest.java
+++ b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/LoginRequest.java
@@ -18,36 +18,5 @@
 
 package org.apache.streampipes.model.client.user;
 
-public class LoginRequest {
-
-  private String username;
-  private String password;
-
-  public LoginRequest() {
-
-  }
-
-  public LoginRequest(String username, String password) {
-    super();
-    this.username = username;
-    this.password = password;
-  }
-
-  public String getUsername() {
-    return username;
-  }
-
-  public void setUsername(String username) {
-    this.username = username;
-  }
-
-  public String getPassword() {
-    return password;
-  }
-
-  public void setPassword(String password) {
-    this.password = password;
-  }
-
-
+public record LoginRequest(String username, String password) {
 }
diff --git a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/PermissionEntry.java b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/PermissionEntry.java
index 2dcc436bcc..561a1713ca 100644
--- a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/PermissionEntry.java
+++ b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/PermissionEntry.java
@@ -19,34 +19,7 @@ package org.apache.streampipes.model.client.user;
 
 import java.util.Objects;
 
-public class PermissionEntry {
-
-  private String sid;
-  private PrincipalType principalType;
-
-  public PermissionEntry() {
-  }
-
-  public PermissionEntry(String sid, PrincipalType principalType) {
-    this.sid = sid;
-    this.principalType = principalType;
-  }
-
-  public String getSid() {
-    return sid;
-  }
-
-  public void setSid(String sid) {
-    this.sid = sid;
-  }
-
-  public PrincipalType getPrincipalType() {
-    return principalType;
-  }
-
-  public void setPrincipalType(PrincipalType principalType) {
-    this.principalType = principalType;
-  }
+public record PermissionEntry(String sid, PrincipalType principalType) {
 
   @Override
   public boolean equals(Object o) {
diff --git a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/RawUserApiToken.java b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/RawUserApiToken.java
index d70df9e897..ccf936dd33 100644
--- a/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/RawUserApiToken.java
+++ b/streampipes-model-client/src/main/java/org/apache/streampipes/model/client/user/RawUserApiToken.java
@@ -20,46 +20,5 @@ package org.apache.streampipes.model.client.user;
 import org.apache.streampipes.model.shared.annotation.TsModel;
 
 @TsModel
-public class RawUserApiToken {
-
-  private String rawToken;
-  private String hashedToken;
-  private String tokenName;
-  private String tokenId;
-
-  public RawUserApiToken() {
-
-  }
-
-  public String getRawToken() {
-    return rawToken;
-  }
-
-  public void setRawToken(String rawToken) {
-    this.rawToken = rawToken;
-  }
-
-  public String getTokenName() {
-    return tokenName;
-  }
-
-  public void setTokenName(String tokenName) {
-    this.tokenName = tokenName;
-  }
-
-  public String getTokenId() {
-    return tokenId;
-  }
-
-  public void setTokenId(String tokenId) {
-    this.tokenId = tokenId;
-  }
-
-  public String getHashedToken() {
-    return hashedToken;
-  }
-
-  public void setHashedToken(String hashedToken) {
-    this.hashedToken = hashedToken;
-  }
+public record RawUserApiToken(String rawToken, String hashedToken, String tokenName, String tokenId) {
 }
diff --git a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/Authentication.java b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/Authentication.java
index 78b9aaea3d..c075a6b079 100644
--- a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/Authentication.java
+++ b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/Authentication.java
@@ -63,10 +63,10 @@ public class Authentication extends AbstractRestResource {
       path = "/login",
       produces = org.springframework.http.MediaType.APPLICATION_JSON_VALUE,
       consumes = org.springframework.http.MediaType.APPLICATION_JSON_VALUE)
-  public ResponseEntity<?> doLogin(@RequestBody LoginRequest token) {
+  public ResponseEntity<?> doLogin(@RequestBody LoginRequest login) {
     try {
       org.springframework.security.core.Authentication authentication = authenticationManager.authenticate(
-          new UsernamePasswordAuthenticationToken(token.getUsername(), token.getPassword()));
+          new UsernamePasswordAuthenticationToken(login.username(), login.password()));
       SecurityContextHolder.getContext().setAuthentication(authentication);
       return processAuth(authentication);
     } catch (BadCredentialsException e) {
@@ -150,6 +150,6 @@ public class Authentication extends AbstractRestResource {
 
   private JwtAuthenticationResponse makeJwtResponse(org.springframework.security.core.Authentication auth) {
     String jwt = new JwtTokenProvider().createToken(auth);
-    return JwtAuthenticationResponse.from(jwt);
+    return new JwtAuthenticationResponse(jwt);
   }
 }
diff --git a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/UserResource.java b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/UserResource.java
index 8524a89b65..ca66f10cc7 100644
--- a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/UserResource.java
+++ b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/UserResource.java
@@ -238,9 +238,9 @@ public class UserResource extends AbstractAuthGuardedRestResource {
     UserAccount existingUser = (UserAccount) getPrincipalById(principalId);
     if (principalId.equals(authenticatedUserId) || isAdmin()) {
       try {
-        String existingPw = passwordRequest.getExistingPassword();
+        String existingPw = passwordRequest.existingPassword();
         if (PasswordUtil.validatePassword(existingPw, existingUser.getPassword())) {
-          String newEncryptedPw = PasswordUtil.encryptPassword(passwordRequest.getNewPassword());
+          String newEncryptedPw = PasswordUtil.encryptPassword(passwordRequest.newPassword());
           updateUser(existingUser, existingUser, isAdmin(), newEncryptedPw);
           getUserStorage().updateUser(existingUser);
 
diff --git a/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/service/TokenService.java b/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/service/TokenService.java
index 28af70963f..bd0bdeafe7 100644
--- a/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/service/TokenService.java
+++ b/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/service/TokenService.java
@@ -28,9 +28,8 @@ public class TokenService {
   public RawUserApiToken createAndStoreNewToken(String email,
                                                 RawUserApiToken baseToken) {
     UserAccount user = getUserStorage().getUserAccount(email);
-    RawUserApiToken generatedToken = TokenUtil.createToken(baseToken.getTokenName());
+    RawUserApiToken generatedToken = TokenUtil.createToken(baseToken.tokenName());
     storeToken(user, generatedToken);
-    generatedToken.setHashedToken("");
     return generatedToken;
   }
 
diff --git a/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/util/TokenUtil.java b/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/util/TokenUtil.java
index 2b642d82cd..18305dfa35 100644
--- a/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/util/TokenUtil.java
+++ b/streampipes-user-management/src/main/java/org/apache/streampipes/user/management/util/TokenUtil.java
@@ -29,20 +29,16 @@ public class TokenUtil {
   private static final Integer TOKEN_LENGTH = 24;
 
   public static RawUserApiToken createToken(String tokenName) {
-    RawUserApiToken rawToken = new RawUserApiToken();
-    rawToken.setTokenId(UUID.randomUUID().toString());
-    rawToken.setTokenName(tokenName);
-    rawToken.setRawToken(generateToken());
-    rawToken.setHashedToken(hashToken(rawToken.getRawToken()));
+    var rawToken = generateToken();
 
-    return rawToken;
+    return new RawUserApiToken(rawToken, hashToken(rawToken), tokenName, UUID.randomUUID().toString());
   }
 
   public static UserApiToken toUserToken(RawUserApiToken rawToken) {
     UserApiToken userApiToken = new UserApiToken();
-    userApiToken.setTokenId(rawToken.getTokenId());
-    userApiToken.setHashedToken(rawToken.getHashedToken());
-    userApiToken.setTokenName(rawToken.getTokenName());
+    userApiToken.setTokenId(rawToken.tokenId());
+    userApiToken.setHashedToken(rawToken.hashedToken());
+    userApiToken.setTokenName(rawToken.tokenName());
 
     return userApiToken;
   }