diff --git a/.idea/misc.xml b/.idea/misc.xml index ba18a6c33941ef11eae66cf92f7dc410afae5c27..14613fe5e03b18ddd991ae2d6469785815981a8c 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -8,5 +8,5 @@ </list> </option> </component> - <component name="ProjectRootManager" version="2" languageLevel="JDK_X" default="true" project-jdk-name="openjdk-20" project-jdk-type="JavaSDK" /> + <component name="ProjectRootManager" version="2" languageLevel="JDK_19" project-jdk-name="openjdk-20" project-jdk-type="JavaSDK" /> </project> \ No newline at end of file diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/config/authentiation/AuthenticationConfig.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/config/authentiation/AuthenticationConfig.java index 2d2082b503173d4663f7a20e91a4fac6ce73e7f2..81c385e68293c39784b9e836d56478e13b3a0b67 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/config/authentiation/AuthenticationConfig.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/config/authentiation/AuthenticationConfig.java @@ -24,9 +24,9 @@ import org.springframework.security.provisioning.InMemoryUserDetailsManager; /** * Configures the authentication for the application. - * @author Anders (young buck) - * @version 1.0 - * @since 04.04.2023 + * @author Anders and birk + * @version 1.1 + * @since 05.04.2023 */ @Configuration public class AuthenticationConfig { @@ -55,18 +55,20 @@ public class AuthenticationConfig { } /** - * Configures the authentication manager. - * - * @param userDetailsService The UserDetailsService instance for managing user details. - * @return An AuthenticationManager instance. + * Configures the authentication manager for the application. + * @param userDetailsService the user details service + * @param passwordEncoder the password encoder + * @return the authentication manager */ @Bean - public AuthenticationManager authManager(UserDetailsService userDetailsService) { - var authProvider = new DaoAuthenticationProvider(); - authProvider.setUserDetailsService(userDetailsService); - return new ProviderManager(authProvider); + AuthenticationManager authenticationManager (UserDetailsService userDetailsService, PasswordEncoder passwordEncoder){ + DaoAuthenticationProvider autprovider = new DaoAuthenticationProvider(); + autprovider.setUserDetailsService(userDetailsService); + autprovider.setPasswordEncoder(passwordEncoder); + return new ProviderManager(autprovider); } + /** * Configures the JWKSource instance for handling RSA keys. * diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/AuthenticationController.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/AuthenticationController.java index 51963b29498c2cd7472d17e5b3628f01ec3d3b5d..530ab290f14570c661cfd1a797907d4bafbaeb7d 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/AuthenticationController.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/AuthenticationController.java @@ -1,6 +1,6 @@ package ntnu.idatt2016.v233.SmartMat.controller; -import ntnu.idatt2016.v233.SmartMat.model.request.LoginRequest; +import ntnu.idatt2016.v233.SmartMat.entity.request.LoginRequest; import ntnu.idatt2016.v233.SmartMat.service.TokenService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Allergy.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Allergy.java similarity index 84% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/Allergy.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Allergy.java index 845d776c3eb6c81a2e17dbc3227f35bd0045ef4f..86a0a1f0264813ce234a8eec011b75b143642fb8 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Allergy.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Allergy.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model; +package ntnu.idatt2016.v233.SmartMat.entity; /** * This is a record class representing an allergy diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Fridge.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Fridge.java similarity index 83% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/Fridge.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Fridge.java index 68a5751a6c4579aa41f1a81dfa7a85054dd411b4..f850aa68c8bff4af71dda4594c06409161e19a08 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Fridge.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Fridge.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model; +package ntnu.idatt2016.v233.SmartMat.entity; /** * Fridge is a record class representing a fridge in the system. diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Recipe.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Recipe.java similarity index 84% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/Recipe.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Recipe.java index c5ee55b6cd47a33b9fbd22117b6e15449ed84bf2..b28757a605179a497b5eef19a89a49b5365405a8 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/Recipe.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Recipe.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model; +package ntnu.idatt2016.v233.SmartMat.entity; /** * Recipe is a record class representing a recipe in the system. diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/ShoppingList.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/ShoppingList.java similarity index 85% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/ShoppingList.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/ShoppingList.java index 83095591b125d119ea011ad57c949bacde7b42fe..7527fb483d941687e26fb66057d8f53adc7ff95e 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/ShoppingList.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/ShoppingList.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model; +package ntnu.idatt2016.v233.SmartMat.entity; /** diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/product/Product.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/product/Product.java similarity index 87% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/product/Product.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/product/Product.java index 41115213d058526bc03bd85df95b7f1c76611add..18d145730425a018dda37e64061a2b81c00effc4 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/product/Product.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/product/Product.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model.product; +package ntnu.idatt2016.v233.SmartMat.entity.product; import lombok.Builder; diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/request/LoginRequest.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/request/LoginRequest.java similarity index 81% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/request/LoginRequest.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/request/LoginRequest.java index 00e4e3b6d994c9916da335e5dca0309b047b232f..b59f9b13027f4e654d8fa81d13f61e3f927d118d 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/request/LoginRequest.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/request/LoginRequest.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model.request; +package ntnu.idatt2016.v233.SmartMat.entity.request; /** * LoginRequest is a record class representing a login request. diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Authority.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Authority.java new file mode 100644 index 0000000000000000000000000000000000000000..d624a01318775326a5fa20a80f2dcc8045efa260 --- /dev/null +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Authority.java @@ -0,0 +1,16 @@ +package ntnu.idatt2016.v233.SmartMat.entity.user; + +/** + * Authority is a enum representing an authority in the system. + * + * @author Birk + * @version 2.0 + * @since 05.04.2023 + * + * @param username The username of the user. + * @param authority The authority of the user. + */ +public enum Authority{ + USER, + ADMIN +} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Profile.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Profile.java similarity index 90% rename from src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Profile.java rename to src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Profile.java index 2b209eb54f70dfe730cf27c54a2ac3fd2861c2ee..dc3e7d1217d071fbf4188acd85517fe42d0bad65 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Profile.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/Profile.java @@ -1,4 +1,4 @@ -package ntnu.idatt2016.v233.SmartMat.model.user; +package ntnu.idatt2016.v233.SmartMat.entity.user; /** * Profile is a record class representing a profile in the system. diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/User.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/User.java new file mode 100644 index 0000000000000000000000000000000000000000..2ea88151d76f9f89b89451d7632703a40e59aa85 --- /dev/null +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/user/User.java @@ -0,0 +1,99 @@ +package ntnu.idatt2016.v233.SmartMat.entity.user; + + +import jakarta.persistence.*; +import lombok.Builder; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; + +import java.util.Collection; +import java.util.List; + +/** + * User is a class representing a user in the system. + * It implements the UserDetails interface. + * + * @author Anders and Birk + * @version 2.0 + * @since 05.04.2023 + * + */ +@Entity(name = "users") +@Builder + +public class User implements UserDetails { + @Id + @Column(name = "user_name") + private String username; + @Column(name = "password") + private String password; + @Column(name = "enabled") + private boolean enabled; + + @Enumerated(EnumType.STRING) + private Authority authority; + + /** + * used when created jwts and validating user authority + * @return the users authority + */ + @Override + public Collection<? extends GrantedAuthority> getAuthorities() { + return List.of(new SimpleGrantedAuthority(authority.name())); + } + + /** + * getter for the user password used in userdetails service + * @return the users password + */ + @Override + public String getPassword() { + return this.password; + } + + /** + * getter for the user username used in userdetails service + * @return the users username + */ + @Override + public String getUsername() { + return this.username; + } + + /** + * not used + * @return true if the account is not expired + */ + @Override + public boolean isAccountNonExpired() { + return true; + } + + /** + * not used + * @return true if the account is not locked + */ + @Override + public boolean isAccountNonLocked() { + return true; + } + + /** + * not used + * @return true if the credentials are not expired + */ + @Override + public boolean isCredentialsNonExpired() { + return true; + } + + /** + * used in authentication + * @return true if the user is enabled + */ + @Override + public boolean isEnabled() { + return this.enabled; + } +} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Authority.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Authority.java deleted file mode 100644 index 54de8a9474dced207649e61e8d463be3828e9bdf..0000000000000000000000000000000000000000 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/Authority.java +++ /dev/null @@ -1,14 +0,0 @@ -package ntnu.idatt2016.v233.SmartMat.model.user; - -/** - * Authority is a record class representing an authority in the system. - * - * @author Anders - * @version 1.0 - * @since 04.04.2023 - * - * @param username The username of the user. - * @param authority The authority of the user. - */ -public record Authority(String username, String authority) { -} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/User.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/User.java deleted file mode 100644 index b1c944609981e8b1a268cd865bfc93145f0116dd..0000000000000000000000000000000000000000 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/model/user/User.java +++ /dev/null @@ -1,18 +0,0 @@ -package ntnu.idatt2016.v233.SmartMat.model.user; - - -/** - * User is a record class representing a user in the system. - * - * @author Anders - * @version 1.0 - * @since 04.04.2023 - * - * @param username The username of the user. - * @param password The password of the user. - * @param enabled Whether the user is enabled. - */ - -public record User(String username, String password, - boolean enabled, Profile profile) { -} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/AllergyRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/AllergyRepository.java index f675fea2cbd5b3061941f11b931f2f5d87d949b5..de46d99bd144296bc418a0395af29c3d35266d65 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/AllergyRepository.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/AllergyRepository.java @@ -1,6 +1,6 @@ package ntnu.idatt2016.v233.SmartMat.repository; -import ntnu.idatt2016.v233.SmartMat.model.Allergy; +import ntnu.idatt2016.v233.SmartMat.entity.Allergy; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ProductRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ProductRepository.java index 2bacb4c9d0301fe47e9a4cb1a0108ca771e3224c..900825f32de98996432a448fa651d2725912436f 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ProductRepository.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ProductRepository.java @@ -1,6 +1,6 @@ package ntnu.idatt2016.v233.SmartMat.repository; -import ntnu.idatt2016.v233.SmartMat.model.product.Product; +import ntnu.idatt2016.v233.SmartMat.entity.product.Product; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java index cae4ee3d68f3231fa3071601fce73cf22c718ca0..2083b38804689cd009b7a2275b70694d7dc9b67e 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java @@ -3,7 +3,7 @@ package ntnu.idatt2016.v233.SmartMat.repository; import java.util.List; import java.util.Optional; -import ntnu.idatt2016.v233.SmartMat.model.Recipe; +import ntnu.idatt2016.v233.SmartMat.entity.Recipe; /** * This interface defines the methods for the recipe repository diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ShoppingListRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ShoppingListRepository.java index 5153b8ee5f6138ab876e15fc651e43b2703411fd..2891cb4f2ce85b3c41d3f4a29bed2e47e3518d4d 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ShoppingListRepository.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/ShoppingListRepository.java @@ -3,7 +3,7 @@ package ntnu.idatt2016.v233.SmartMat.repository; import java.util.List; import java.util.Optional; -import ntnu.idatt2016.v233.SmartMat.model.ShoppingList; +import ntnu.idatt2016.v233.SmartMat.entity.ShoppingList; /** * This interface defines the methods for the shopping list repository diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/UserRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/UserRepository.java new file mode 100644 index 0000000000000000000000000000000000000000..0fd056cad5fa67d857f44bb0f67e1c4bfa70c7be --- /dev/null +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/UserRepository.java @@ -0,0 +1,26 @@ +package ntnu.idatt2016.v233.SmartMat.repository; + +import ntnu.idatt2016.v233.SmartMat.entity.user.User; +import org.springframework.data.jpa.repository.JpaRepository; + +import java.util.Optional; + +/** + * repo for user entity + * uses mysql from server when ran + * uses h2 in memory database when testing + * @author birk + * @version 1.0 + * @since 05.04.2023 + */ +public interface UserRepository extends JpaRepository<User, Long>{ + + /** + * gets user from username out of database + * @param username username of user + * @return user + */ + Optional<User> findByUsername(String username); + + +} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ProductService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ProductService.java index 55ed3ef64d74dafa458178a5e06125050b914479..4ef304eb9fc320de95cb79da512a4cb4ea58a243 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ProductService.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ProductService.java @@ -1,10 +1,8 @@ package ntnu.idatt2016.v233.SmartMat.service; -import lombok.AllArgsConstructor; -import ntnu.idatt2016.v233.SmartMat.model.product.Product; +import ntnu.idatt2016.v233.SmartMat.entity.product.Product; import ntnu.idatt2016.v233.SmartMat.repository.ProductRepository; import ntnu.idatt2016.v233.SmartMat.util.ProductUtil; -import org.springframework.beans.factory.annotation.Autowired; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ShoppingListService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ShoppingListService.java index a9d38f5c36349ee7c1910beba4ef4aac73854a60..6749850d2f33c4bb824baa1df177da89cacd1415 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ShoppingListService.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/ShoppingListService.java @@ -3,7 +3,7 @@ package ntnu.idatt2016.v233.SmartMat.service; import java.util.List; import java.util.Optional; -import ntnu.idatt2016.v233.SmartMat.model.ShoppingList; +import ntnu.idatt2016.v233.SmartMat.entity.ShoppingList; import ntnu.idatt2016.v233.SmartMat.repository.ShoppingListRepository; /** diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/JpaUserDetailsService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/JpaUserDetailsService.java new file mode 100644 index 0000000000000000000000000000000000000000..d260ad8c01416997ec95480a761d2154a09a23ee --- /dev/null +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/JpaUserDetailsService.java @@ -0,0 +1,34 @@ +package ntnu.idatt2016.v233.SmartMat.service.user; + +import lombok.AllArgsConstructor; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +/** + * JpaUserDetailsService is a class that implements the UserDetailsService interface. + * @author Birk + * @version 1.0 + * @since 05.04.2023 + */ +@Service +@AllArgsConstructor +public class JpaUserDetailsService implements UserDetailsService { + private UserService userService; + + /** + * gets user from username out of database + * @param username username of user + * @return user + * @throws UsernameNotFoundException + */ + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + return userService.getUserFromUsername(username) + .orElseThrow( + () -> new UsernameNotFoundException("No user found with username = " + username) + ); + } + +} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/UserService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/UserService.java new file mode 100644 index 0000000000000000000000000000000000000000..cda01647ebea132f9def45a3fbc015852839207d --- /dev/null +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/user/UserService.java @@ -0,0 +1,92 @@ +package ntnu.idatt2016.v233.SmartMat.service.user; + +import lombok.AllArgsConstructor; +import ntnu.idatt2016.v233.SmartMat.entity.user.User; +import ntnu.idatt2016.v233.SmartMat.repository.UserRepository; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Optional; + +/** + * UserService is a class that implements the UserDetailsService interface. + * @author Birk + * @version 1.0 + * @since 05.04.2023 + */ +@Service +@AllArgsConstructor +public class UserService { + + private UserRepository userRepository; + + + /** + * gets user from username out of database + * @param username username of user + * @return user + */ + public Optional<User> getUserFromUsername(String username){ + return userRepository.findByUsername(username); + } + public List<User> getUsers(){ + return userRepository.findAll(); + } + + /** + * update user if it already exists + * cant update username from this + * + * @param user user to update + * @return optional with user if succeded else return null + */ + public User updateUser(User user){ + if (this.getUserFromUsername(user.getUsername()).isPresent()){ + return userRepository.save(user); + } + throw new UsernameNotFoundException("did not find user"); + } + + /** + * gets password from user + * @param userName username of user + * @return password of user + */ + public String getPassword(String userName){ + return userRepository.findByUsername(userName) + .orElseThrow(()-> new UsernameNotFoundException("did not find user")) + .getPassword(); + } + + /** + * saves user to database + * @param user user to save + * @return saved user + */ + public User saveUser(User user){ + if (this.getUserFromUsername(user.getUsername()).isPresent()) + throw new RuntimeException("user already exists"); + return userRepository.save(user); + } + + /** + * saves list of users to database + * @param users list of users to save + * @return list of saved users + */ + public List<User> saveUsers(List<User> users){ + + return userRepository.saveAll(users); + } + + + /** + * deletes user from database + * @param user user to delete + */ + public void delete(User user) { + userRepository.delete(user); + } + +} diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtil.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtil.java index ef00ccd4dfb9f5609e41641498e3fb50cd5093ad..4b70fed0852466f7e5d249d442d69a1e789b1d9c 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtil.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtil.java @@ -1,6 +1,6 @@ package ntnu.idatt2016.v233.SmartMat.util; -import ntnu.idatt2016.v233.SmartMat.model.product.Product; +import ntnu.idatt2016.v233.SmartMat.entity.product.Product; import java.util.Arrays; import java.util.List; diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtilTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtilTest.java index 3579696a2393181a79b4fa994a9bc72dd3a08342..2eb3f4d6d5d323351c472703aa24d61351d9d214 100644 --- a/src/test/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtilTest.java +++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/util/ProductUtilTest.java @@ -1,11 +1,9 @@ package ntnu.idatt2016.v233.SmartMat.util; -import ntnu.idatt2016.v233.SmartMat.model.product.Product; +import ntnu.idatt2016.v233.SmartMat.entity.product.Product; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import java.io.Console; - import static org.junit.jupiter.api.Assertions.*; class ProductUtilTest {