diff --git a/backend/settings.gradle.kts b/backend/settings.gradle.kts index d7fc8f3..c0e0823 100644 --- a/backend/settings.gradle.kts +++ b/backend/settings.gradle.kts @@ -1 +1 @@ -rootProject.name = "lf12_starter_backend" +rootProject.name = "casino" diff --git a/backend/src/main/java/de/szut/lf8_starter/Lf12StarterApplication.java b/backend/src/main/java/de/szut/casino/CasinoApplication.java similarity index 59% rename from backend/src/main/java/de/szut/lf8_starter/Lf12StarterApplication.java rename to backend/src/main/java/de/szut/casino/CasinoApplication.java index f46f592..d506b49 100644 --- a/backend/src/main/java/de/szut/lf8_starter/Lf12StarterApplication.java +++ b/backend/src/main/java/de/szut/casino/CasinoApplication.java @@ -1,13 +1,13 @@ -package de.szut.lf8_starter; +package de.szut.casino; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication -public class Lf12StarterApplication { +public class CasinoApplication { public static void main(String[] args) { - SpringApplication.run(Lf12StarterApplication.class, args); + SpringApplication.run(CasinoApplication.class, args); } } diff --git a/backend/src/main/java/de/szut/lf8_starter/config/OpenAPIConfiguration.java b/backend/src/main/java/de/szut/casino/config/OpenAPIConfiguration.java similarity index 98% rename from backend/src/main/java/de/szut/lf8_starter/config/OpenAPIConfiguration.java rename to backend/src/main/java/de/szut/casino/config/OpenAPIConfiguration.java index 7ba261a..f102caf 100644 --- a/backend/src/main/java/de/szut/lf8_starter/config/OpenAPIConfiguration.java +++ b/backend/src/main/java/de/szut/casino/config/OpenAPIConfiguration.java @@ -1,4 +1,4 @@ -package de.szut.lf8_starter.config; +package de.szut.casino.config; diff --git a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ErrorDetails.java b/backend/src/main/java/de/szut/casino/exceptionHandling/ErrorDetails.java similarity index 82% rename from backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ErrorDetails.java rename to backend/src/main/java/de/szut/casino/exceptionHandling/ErrorDetails.java index 6464b61..cf287c7 100644 --- a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ErrorDetails.java +++ b/backend/src/main/java/de/szut/casino/exceptionHandling/ErrorDetails.java @@ -1,4 +1,4 @@ -package de.szut.lf8_starter.exceptionHandling; +package de.szut.casino.exceptionHandling; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/GlobalExceptionHandler.java b/backend/src/main/java/de/szut/casino/exceptionHandling/GlobalExceptionHandler.java similarity index 95% rename from backend/src/main/java/de/szut/lf8_starter/exceptionHandling/GlobalExceptionHandler.java rename to backend/src/main/java/de/szut/casino/exceptionHandling/GlobalExceptionHandler.java index 828331b..b307601 100644 --- a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/GlobalExceptionHandler.java +++ b/backend/src/main/java/de/szut/casino/exceptionHandling/GlobalExceptionHandler.java @@ -1,4 +1,4 @@ -package de.szut.lf8_starter.exceptionHandling; +package de.szut.casino.exceptionHandling; import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.responses.ApiResponse; diff --git a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ResourceNotFoundException.java b/backend/src/main/java/de/szut/casino/exceptionHandling/ResourceNotFoundException.java similarity index 86% rename from backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ResourceNotFoundException.java rename to backend/src/main/java/de/szut/casino/exceptionHandling/ResourceNotFoundException.java index 7a0cfd8..2217a39 100644 --- a/backend/src/main/java/de/szut/lf8_starter/exceptionHandling/ResourceNotFoundException.java +++ b/backend/src/main/java/de/szut/casino/exceptionHandling/ResourceNotFoundException.java @@ -1,4 +1,4 @@ -package de.szut.lf8_starter.exceptionHandling; +package de.szut.casino.exceptionHandling; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ResponseStatus; diff --git a/backend/src/main/java/de/szut/lf8_starter/security/KeycloakLogoutHandler.java b/backend/src/main/java/de/szut/casino/security/KeycloakLogoutHandler.java similarity index 97% rename from backend/src/main/java/de/szut/lf8_starter/security/KeycloakLogoutHandler.java rename to backend/src/main/java/de/szut/casino/security/KeycloakLogoutHandler.java index 3cc82f7..2403c82 100644 --- a/backend/src/main/java/de/szut/lf8_starter/security/KeycloakLogoutHandler.java +++ b/backend/src/main/java/de/szut/casino/security/KeycloakLogoutHandler.java @@ -1,5 +1,7 @@ -package de.szut.lf8_starter.security; +package de.szut.casino.security; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import org.springframework.http.ResponseEntity; import org.springframework.security.core.Authentication; @@ -9,9 +11,6 @@ import org.springframework.stereotype.Component; import org.springframework.web.client.RestTemplate; import org.springframework.web.util.UriComponentsBuilder; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; - @Slf4j @Component public class KeycloakLogoutHandler implements LogoutHandler { diff --git a/backend/src/main/java/de/szut/lf8_starter/security/KeycloakSecurityConfig.java b/backend/src/main/java/de/szut/casino/security/KeycloakSecurityConfig.java similarity index 88% rename from backend/src/main/java/de/szut/lf8_starter/security/KeycloakSecurityConfig.java rename to backend/src/main/java/de/szut/casino/security/KeycloakSecurityConfig.java index 0c42201..e2d0bc8 100644 --- a/backend/src/main/java/de/szut/lf8_starter/security/KeycloakSecurityConfig.java +++ b/backend/src/main/java/de/szut/casino/security/KeycloakSecurityConfig.java @@ -1,29 +1,25 @@ -package de.szut.lf8_starter.security; - -import java.util.*; -import java.util.stream.Collectors; +package de.szut.casino.security; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.http.HttpMethod; import org.springframework.security.config.Customizer; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; -import org.springframework.security.core.authority.mapping.GrantedAuthoritiesMapper; import org.springframework.security.core.session.SessionRegistry; import org.springframework.security.core.session.SessionRegistryImpl; -import org.springframework.security.oauth2.core.oidc.user.OidcUserAuthority; -import org.springframework.security.oauth2.core.user.OAuth2UserAuthority; import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; -import org.springframework.security.oauth2.server.resource.authentication.JwtGrantedAuthoritiesConverter; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.authentication.session.RegisterSessionAuthenticationStrategy; import org.springframework.security.web.authentication.session.SessionAuthenticationStrategy; import org.springframework.security.web.session.HttpSessionEventPublisher; import org.springframework.security.web.util.matcher.AntPathRequestMatcher; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + @Configuration @EnableWebSecurity class KeycloakSecurityConfig { diff --git a/backend/src/main/java/de/szut/lf8_starter/config/SampleDataCreator.java b/backend/src/main/java/de/szut/lf8_starter/config/SampleDataCreator.java deleted file mode 100644 index 9a7b889..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/config/SampleDataCreator.java +++ /dev/null @@ -1,33 +0,0 @@ -package de.szut.lf8_starter.config; - - -import de.szut.lf8_starter.hello.HelloEntity; -import de.szut.lf8_starter.hello.HelloRepository; -import org.springframework.boot.ApplicationArguments; -import org.springframework.boot.ApplicationRunner; -import org.springframework.context.annotation.Bean; -import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; - -@Component -public class SampleDataCreator implements ApplicationRunner { - - private HelloRepository repository; - - public SampleDataCreator(HelloRepository repository) { - this.repository = repository; - } - - public void run(ApplicationArguments args) { - repository.save(new HelloEntity("Hallo Welt!")); - repository.save(new HelloEntity("Schöner Tag heute")); - repository.save(new HelloEntity("FooBar")); - - } - - @Bean - public RestTemplate restTemplate() { - return new RestTemplate(); - } - -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/HelloController.java b/backend/src/main/java/de/szut/lf8_starter/hello/HelloController.java deleted file mode 100644 index 87912bd..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/HelloController.java +++ /dev/null @@ -1,98 +0,0 @@ -package de.szut.lf8_starter.hello; - - -import de.szut.lf8_starter.exceptionHandling.ResourceNotFoundException; -import de.szut.lf8_starter.hello.dto.HelloCreateDto; -import de.szut.lf8_starter.hello.dto.HelloGetDto; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.media.Content; -import io.swagger.v3.oas.annotations.media.Schema; -import io.swagger.v3.oas.annotations.responses.ApiResponse; -import io.swagger.v3.oas.annotations.responses.ApiResponses; -import jakarta.validation.Valid; -import org.springframework.http.HttpStatus; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -import java.util.stream.Collectors; - -@RestController -@RequestMapping(value = "hellos") -public class HelloController { - private final HelloService service; - private final HelloMapper helloMapper; - - public HelloController(HelloService service, HelloMapper mappingService) { - this.service = service; - this.helloMapper = mappingService; - } - - @Operation(summary = "creates a new hello with its id and message") - @ApiResponses(value = { - @ApiResponse(responseCode = "201", description = "created hello", - content = {@Content(mediaType = "application/json", - schema = @Schema(implementation = HelloGetDto.class))}), - @ApiResponse(responseCode = "400", description = "invalid JSON posted", - content = @Content), - @ApiResponse(responseCode = "401", description = "not authorized", - content = @Content)}) - @PostMapping - public HelloGetDto create(@RequestBody @Valid HelloCreateDto helloCreateDto) { - HelloEntity helloEntity = this.helloMapper.mapCreateDtoToEntity(helloCreateDto); - helloEntity = this.service.create(helloEntity); - return this.helloMapper.mapToGetDto(helloEntity); - } - - @Operation(summary = "delivers a list of hellos") - @ApiResponses(value = { - @ApiResponse(responseCode = "200", description = "list of hellos", - content = {@Content(mediaType = "application/json", - schema = @Schema(implementation = HelloGetDto.class))}), - @ApiResponse(responseCode = "401", description = "not authorized", - content = @Content)}) - @GetMapping - public List findAll() { - return this.service - .readAll() - .stream() - .map(e -> this.helloMapper.mapToGetDto(e)) - .collect(Collectors.toList()); - } - - @Operation(summary = "deletes a Hello by id") - @ApiResponses(value = { - @ApiResponse(responseCode = "204", description = "delete successful"), - @ApiResponse(responseCode = "401", description = "not authorized", - content = @Content), - @ApiResponse(responseCode = "404", description = "resource not found", - content = @Content)}) - @DeleteMapping("/{id}") - @ResponseStatus(code = HttpStatus.NO_CONTENT) - public void deleteHelloById(@PathVariable long id) { - var entity = this.service.readById(id); - if (entity == null) { - throw new ResourceNotFoundException("HelloEntity not found on id = " + id); - } else { - this.service.delete(entity); - } - } - - @Operation(summary = "find hellos by message") - @ApiResponses(value = { - @ApiResponse(responseCode = "200", description = "List of hellos who have the given message", - content = {@Content(mediaType = "application/json", - schema = @Schema(implementation = HelloGetDto.class))}), - @ApiResponse(responseCode = "404", description = "qualification description does not exist", - content = @Content), - @ApiResponse(responseCode = "401", description = "not authorized", - content = @Content)}) - @GetMapping("/findByMessage") - public List findAllEmployeesByQualification(@RequestParam String message) { - return this.service - .findByMessage(message) - .stream() - .map(e -> this.helloMapper.mapToGetDto(e)) - .collect(Collectors.toList()); - } -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/HelloEntity.java b/backend/src/main/java/de/szut/lf8_starter/hello/HelloEntity.java deleted file mode 100644 index 1b42cfc..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/HelloEntity.java +++ /dev/null @@ -1,27 +0,0 @@ -package de.szut.lf8_starter.hello; - -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; - -@NoArgsConstructor -@AllArgsConstructor -@Getter -@Setter -@Entity -@Table(name = "hello") -public class HelloEntity { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - private String message; - - public HelloEntity(String message) { - this.message = message; - } -} - diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/HelloMapper.java b/backend/src/main/java/de/szut/lf8_starter/hello/HelloMapper.java deleted file mode 100644 index d4feb7e..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/HelloMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package de.szut.lf8_starter.hello; - - -import de.szut.lf8_starter.hello.dto.HelloCreateDto; -import de.szut.lf8_starter.hello.dto.HelloGetDto; -import org.springframework.stereotype.Service; - -@Service -public class HelloMapper { - - public HelloGetDto mapToGetDto(HelloEntity entity) { - return new HelloGetDto(entity.getId(), entity.getMessage()); - } - - public HelloEntity mapCreateDtoToEntity(HelloCreateDto dto) { - var entity = new HelloEntity(); - entity.setMessage(dto.getMessage()); - return entity; - } -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/HelloRepository.java b/backend/src/main/java/de/szut/lf8_starter/hello/HelloRepository.java deleted file mode 100644 index 77c76e4..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/HelloRepository.java +++ /dev/null @@ -1,12 +0,0 @@ -package de.szut.lf8_starter.hello; - - -import org.springframework.data.jpa.repository.JpaRepository; - -import java.util.List; - -public interface HelloRepository extends JpaRepository { - - - List findByMessage(String message); -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/HelloService.java b/backend/src/main/java/de/szut/lf8_starter/hello/HelloService.java deleted file mode 100644 index eb254e8..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/HelloService.java +++ /dev/null @@ -1,40 +0,0 @@ -package de.szut.lf8_starter.hello; - -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.Optional; - -@Service -public class HelloService { - private final HelloRepository repository; - - public HelloService(HelloRepository repository) { - this.repository = repository; - } - - public HelloEntity create(HelloEntity entity) { - return this.repository.save(entity); - } - - public List readAll() { - return this.repository.findAll(); - } - - public HelloEntity readById(long id) { - Optional optionalQualification = this.repository.findById(id); - if (optionalQualification.isEmpty()) { - return null; - } - return optionalQualification.get(); - } - - - public void delete(HelloEntity entity) { - this.repository.delete(entity); - } - - public List findByMessage(String message) { - return this.repository.findByMessage(message); - } -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloCreateDto.java b/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloCreateDto.java deleted file mode 100644 index fe47d1e..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloCreateDto.java +++ /dev/null @@ -1,20 +0,0 @@ -package de.szut.lf8_starter.hello.dto; - -import com.fasterxml.jackson.annotation.JsonCreator; -import jakarta.validation.constraints.Size; -import lombok.Getter; -import lombok.Setter; - - -@Getter -@Setter -public class HelloCreateDto { - - @Size(min = 3, message = "at least length of 3") - private String message; - - @JsonCreator - public HelloCreateDto(String message) { - this.message = message; - } -} diff --git a/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloGetDto.java b/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloGetDto.java deleted file mode 100644 index babac4f..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/hello/dto/HelloGetDto.java +++ /dev/null @@ -1,17 +0,0 @@ -package de.szut.lf8_starter.hello.dto; - -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.Setter; - -@AllArgsConstructor -@Getter -@Setter -public class HelloGetDto { - - private long id; - - private String message; - -} - diff --git a/backend/src/main/java/de/szut/lf8_starter/welcome/WelcomeController.java b/backend/src/main/java/de/szut/lf8_starter/welcome/WelcomeController.java deleted file mode 100644 index 6ed067b..0000000 --- a/backend/src/main/java/de/szut/lf8_starter/welcome/WelcomeController.java +++ /dev/null @@ -1,27 +0,0 @@ -package de.szut.lf8_starter.welcome; - - - -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.security.core.Authentication; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.security.Principal; - -@RestController -public class WelcomeController { - - @GetMapping("/welcome") - public String welcome() { - return "welcome to lf8_starter"; - } - - @GetMapping("/roles") - public ResponseEntity getRoles(Authentication authentication) { - return ResponseEntity.ok(authentication.getAuthorities()); - } - - -} diff --git a/backend/src/test/java/de/szut/lf8_starter/Lf8StarterApplicationTests.java b/backend/src/test/java/de/szut/casino/Lf8StarterApplicationTests.java similarity index 87% rename from backend/src/test/java/de/szut/lf8_starter/Lf8StarterApplicationTests.java rename to backend/src/test/java/de/szut/casino/Lf8StarterApplicationTests.java index 942f2cb..2db076f 100644 --- a/backend/src/test/java/de/szut/lf8_starter/Lf8StarterApplicationTests.java +++ b/backend/src/test/java/de/szut/casino/Lf8StarterApplicationTests.java @@ -1,4 +1,4 @@ -package de.szut.lf8_starter; +package de.szut.casino; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest;