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);      }  | 
