diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2025-03-06 22:53:36 -0500 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2025-03-06 22:53:36 -0500 |
commit | a3fbcd713ae9a6b3f38dcc42a5c4c2f369a5d6f5 (patch) | |
tree | ed019f6dc374df3da88b1cdadaeaae92e799b96e /ufund-api/src/main/java/com/ufund/api/ufundapi/service | |
parent | 7cb123c21bef247a2216545bc18245136f2ddf78 (diff) | |
download | JellySolutions-a3fbcd713ae9a6b3f38dcc42a5c4c2f369a5d6f5.tar.gz JellySolutions-a3fbcd713ae9a6b3f38dcc42a5c4c2f369a5d6f5.tar.bz2 JellySolutions-a3fbcd713ae9a6b3f38dcc42a5c4c2f369a5d6f5.zip |
more javadocs and cleanup
Diffstat (limited to 'ufund-api/src/main/java/com/ufund/api/ufundapi/service')
3 files changed, 62 insertions, 24 deletions
diff --git a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/AuthService.java b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/AuthService.java index 7e54cfb..591d891 100644 --- a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/AuthService.java +++ b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/AuthService.java @@ -1,11 +1,10 @@ package com.ufund.api.ufundapi.service; -import java.io.IOException; - -import org.springframework.stereotype.Component; - import com.ufund.api.ufundapi.model.UserAuth; import com.ufund.api.ufundapi.persistence.UserAuthDAO; +import org.springframework.stereotype.Component; + +import java.io.IOException; @Component public class AuthService { @@ -24,9 +23,8 @@ public class AuthService { * @param username The username of the user trying to be accessed. * @param key The api key obtained by the client from logging in. * @throws IllegalAccessException Thrown if access was denied to the user. - * @throws IOException - */ - public void authenticate(String username, String key) throws IllegalAccessException, IOException { + */ + public void authenticate(String username, String key) throws IllegalAccessException, IOException { var userAuth = userAuthDAO.getUserAuth(key); if (userAuth == null || !userAuth.getUsername().equals(username)) { throw new IllegalAccessException("Unauthorized"); diff --git a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/CupboardService.java b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/CupboardService.java index 6052e4f..15f8442 100644 --- a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/CupboardService.java +++ b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/CupboardService.java @@ -6,22 +6,27 @@ import java.util.Arrays; import com.ufund.api.ufundapi.model.Need; import com.ufund.api.ufundapi.persistence.CupboardDAO; import org.springframework.stereotype.Component; +import com.ufund.api.ufundapi.DuplicateKeyException; @Component public class CupboardService { private final CupboardDAO cupboardDAO; - public class DuplicateKeyException extends Exception { - public DuplicateKeyException(String message) { - super(message); - } - } - public CupboardService(CupboardDAO cupboardDAO) { this.cupboardDAO = cupboardDAO; } + /** + * Creates a new Need + * + * @param name The name of the need to create + * @param maxGoal The max goal of the new need + * @param goalType The goal type of the new need + * @return The need that was created + * @throws IOException Thrown if there was any issue saving the data + * @throws DuplicateKeyException If there already exists a need with the same name + */ public Need createNeed(String name, int maxGoal, Need.GoalType goalType) throws IOException, DuplicateKeyException { Need need = new Need(name, goalType, maxGoal); @@ -39,6 +44,12 @@ public class CupboardService { } + /** + * Get all the needs in the cupboard + * + * @return An array containing all needs + * @throws IOException Thrown if there was any issue saving the data + */ public Need[] getNeeds() throws IOException { return cupboardDAO.getNeeds(); } @@ -48,7 +59,7 @@ public class CupboardService { * * @param search The search substring * @return The requested array - * @throws IOException + * @throws IOException Thrown if there was any issue saving the data */ public Need[] searchNeeds(String search) throws IOException { return Arrays.stream(cupboardDAO.getNeeds()) @@ -68,7 +79,7 @@ public class CupboardService { /** * Modify a need - * + * // TODO * @param need * @return * @throws IOException Thrown if there was an issue saving the changes diff --git a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/UserService.java b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/UserService.java index 6af3897..776d09a 100644 --- a/ufund-api/src/main/java/com/ufund/api/ufundapi/service/UserService.java +++ b/ufund-api/src/main/java/com/ufund/api/ufundapi/service/UserService.java @@ -2,6 +2,7 @@ package com.ufund.api.ufundapi.service; import java.io.IOException; +import com.ufund.api.ufundapi.DuplicateKeyException; import com.ufund.api.ufundapi.model.User; import com.ufund.api.ufundapi.persistence.UserDAO; import org.springframework.stereotype.Component; @@ -11,29 +12,57 @@ public class UserService { private final UserDAO userDAO; - /** - * Create a user controller to receive REST signals - * - * @param userDao The Data Access Object - */ public UserService(UserDAO userDao) { this.userDAO = userDao; } - public User createUser(String username, String password) throws IOException { + /** + * Creates a new user + * + * @param username The username of the user + * @param password The password of the user + * @return The created user object + * @throws IOException Thrown on any problem saving the file + */ + public User createUser(String username, String password) throws IOException, DuplicateKeyException { + if (userDAO.getUser(username) != null) { + throw new DuplicateKeyException("A user with this name already exists"); + } User user = User.create(username, password); return userDAO.addUser(user); } - public User getUser(String username) throws IOException, IllegalAccessException { + /** + * Gets a user with the given username + * + * @param username The username of the user + * @return The user object with that username + * @throws IOException If there was any problem saving the file + */ + public User getUser(String username) throws IOException { return userDAO.getUser(username); } - public User updateUser(User user, String name) throws IllegalAccessException, IOException { + /** + * Updates a user + * // TODO + * @param user + * @param name + * @return + * @throws IOException Thrown if there was any issue saving the data + */ + public User updateUser(User user, String name) throws IOException { return userDAO.updateUser(user, name); } - public Boolean deleteUser(String username) throws IllegalAccessException, IOException { + /** + * Deletes a user + * + * @param username The username of the user to delete + * @return True if the user was deleted + * @throws IOException Thrown if there was any issue saving the data + */ + public boolean deleteUser(String username) throws IOException { return userDAO.deleteUser(username); } |