diff --git a/src/main/java/ru/ldeloff/hedgehogcloud/repository/RoleRepository.java b/src/main/java/ru/ldeloff/hedgehogcloud/repository/RoleRepository.java index 75a517f..60d5e7a 100644 --- a/src/main/java/ru/ldeloff/hedgehogcloud/repository/RoleRepository.java +++ b/src/main/java/ru/ldeloff/hedgehogcloud/repository/RoleRepository.java @@ -1,7 +1,10 @@ package ru.ldeloff.hedgehogcloud.repository; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; import ru.ldeloff.hedgehogcloud.entity.RoleEntity; +@Repository public interface RoleRepository extends JpaRepository { + RoleEntity findByName(String name); } diff --git a/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleService.java b/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleService.java new file mode 100644 index 0000000..8efb05c --- /dev/null +++ b/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleService.java @@ -0,0 +1,8 @@ +package ru.ldeloff.hedgehogcloud.service; + +import ru.ldeloff.hedgehogcloud.entity.RoleEntity; + +public interface RoleService { + void saveRole(RoleEntity roleEntity); + RoleEntity getByName(String name); +} diff --git a/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleServiceImpl.java b/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleServiceImpl.java new file mode 100644 index 0000000..5e08e12 --- /dev/null +++ b/src/main/java/ru/ldeloff/hedgehogcloud/service/RoleServiceImpl.java @@ -0,0 +1,31 @@ +package ru.ldeloff.hedgehogcloud.service; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; +import ru.ldeloff.hedgehogcloud.entity.RoleEntity; +import ru.ldeloff.hedgehogcloud.entity.UserEntity; +import ru.ldeloff.hedgehogcloud.repository.RoleRepository; + +@Service +public class RoleServiceImpl implements RoleService { + RoleRepository roleRepository; + + public RoleServiceImpl(RoleRepository roleRepository) { + this.roleRepository = roleRepository; + } + + + public void saveRole(RoleEntity role) { + RoleEntity roleTemp = getByName(role.getName()); + if (roleTemp == null) { + roleRepository.save(role); + } + } + + @Override + public RoleEntity getByName(String name) { + return roleRepository.findByName(name); + } + +}