Reformatted code

This commit is contained in:
Graham Cox
2022-05-19 10:14:05 +01:00
parent 67b8a66173
commit e7a7728799
27 changed files with 278 additions and 283 deletions

View File

@@ -1,67 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.7</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.baeldung</groupId>
<artifactId>tasks-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>tasks-service</name>
<description>Tasks Service for LightRun Article</description>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-artemis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
</dependency>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.7</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.baeldung</groupId>
<artifactId>tasks-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>tasks-service</name>
<description>Tasks Service for LightRun Article</description>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-artemis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-jms-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

View File

@@ -6,8 +6,8 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class TasksServiceApplication {
public static void main(String[] args) {
SpringApplication.run(TasksServiceApplication.class, args);
}
public static void main(String[] args) {
SpringApplication.run(TasksServiceApplication.class, args);
}
}

View File

@@ -13,10 +13,5 @@ package com.baeldung.tasksservice.adapters.http;
import java.time.Instant;
public record TaskResponse(String id,
String title,
Instant created,
String createdBy,
String assignedTo,
String status) {
public record TaskResponse(String id, String title, Instant created, String createdBy, String assignedTo, String status) {
}

View File

@@ -15,9 +15,6 @@ import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.service.TasksService;
import com.baeldung.tasksservice.service.UnknownTaskException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.DeleteMapping;
@@ -32,6 +29,10 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.service.TasksService;
import com.baeldung.tasksservice.service.UnknownTaskException;
@RestController
@RequestMapping("/")
class TasksController {
@@ -46,13 +47,12 @@ class TasksController {
}
@GetMapping
public List<TaskResponse> searchTasks(@RequestParam("status") Optional<String> status,
@RequestParam("createdBy") Optional<String> createdBy) {
public List<TaskResponse> searchTasks(@RequestParam("status") Optional<String> status, @RequestParam("createdBy") Optional<String> createdBy) {
var tasks = tasksService.search(status, createdBy);
return tasks.stream()
.map(this::buildResponse)
.collect(Collectors.toList());
.map(this::buildResponse)
.collect(Collectors.toList());
}
@GetMapping("/{id}")
@@ -67,16 +67,14 @@ class TasksController {
}
@PatchMapping("/{id}")
public TaskResponse patchTask(@PathVariable("id") String id,
@RequestBody PatchTaskRequest body) {
public TaskResponse patchTask(@PathVariable("id") String id, @RequestBody PatchTaskRequest body) {
var task = tasksService.updateTask(id, body.status(), body.assignedTo());
return buildResponse(task);
}
private TaskResponse buildResponse(final TaskRecord task) {
return new TaskResponse(task.getId(), task.getTitle(), task.getCreated(), task.getCreatedBy(),
task.getAssignedTo(), task.getStatus());
return new TaskResponse(task.getId(), task.getTitle(), task.getCreated(), task.getCreatedBy(), task.getAssignedTo(), task.getStatus());
}
@ExceptionHandler(UnknownTaskException.class)

View File

@@ -1,8 +1,8 @@
package com.baeldung.tasksservice.adapters.jms;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Service;
import com.baeldung.tasksservice.service.DeletedUserService;

View File

@@ -11,11 +11,12 @@
package com.baeldung.tasksservice.adapters.repository;
import java.time.Instant;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.time.Instant;
@Entity
@Table(name = "tasks")
@@ -32,8 +33,7 @@ public class TaskRecord {
private String assignedTo;
private String status;
public TaskRecord(final String id, final String title, final Instant created, final String createdBy,
final String assignedTo, final String status) {
public TaskRecord(final String id, final String title, final Instant created, final String createdBy, final String assignedTo, final String status) {
this.id = id;
this.title = title;
this.created = created;

View File

@@ -2,26 +2,26 @@ package com.baeldung.tasksservice.service;
import javax.transaction.Transactional;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.adapters.repository.TasksRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.adapters.repository.TasksRepository;
@Service
public class DeletedUserService {
@Autowired
private TasksRepository tasksRepository;
@Autowired
private TasksRepository tasksRepository;
@Transactional
public void handleDeletedUser(String user) {
var ownedByUser = tasksRepository.findByCreatedBy(user);
tasksRepository.deleteAll(ownedByUser);
@Transactional
public void handleDeletedUser(String user) {
var ownedByUser = tasksRepository.findByCreatedBy(user);
tasksRepository.deleteAll(ownedByUser);
var assignedToUser = tasksRepository.findByAssignedTo(user);
for (TaskRecord record : assignedToUser) {
record.setAssignedTo(null);
record.setStatus("PENDING");
var assignedToUser = tasksRepository.findByAssignedTo(user);
for (TaskRecord record : assignedToUser) {
record.setAssignedTo(null);
record.setStatus("PENDING");
}
}
}
}

View File

@@ -11,29 +11,33 @@
package com.baeldung.tasksservice.service;
import javax.transaction.Transactional;
import java.time.Instant;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.adapters.repository.TasksRepository;
import javax.transaction.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baeldung.tasksservice.adapters.repository.TaskRecord;
import com.baeldung.tasksservice.adapters.repository.TasksRepository;
@Service
public class TasksService {
@Autowired
private TasksRepository tasksRepository;
public TaskRecord getTaskById(String id) {
return tasksRepository.findById(id).orElseThrow(() -> new UnknownTaskException(id));
return tasksRepository.findById(id)
.orElseThrow(() -> new UnknownTaskException(id));
}
@Transactional
public void deleteTaskById(String id) {
var task = tasksRepository.findById(id).orElseThrow(() -> new UnknownTaskException(id));
var task = tasksRepository.findById(id)
.orElseThrow(() -> new UnknownTaskException(id));
tasksRepository.delete(task);
}
@@ -51,7 +55,8 @@ public class TasksService {
@Transactional
public TaskRecord updateTask(String id, Optional<String> newStatus, Optional<String> newAssignedTo) {
var task = tasksRepository.findById(id).orElseThrow(() -> new UnknownTaskException(id));
var task = tasksRepository.findById(id)
.orElseThrow(() -> new UnknownTaskException(id));
newStatus.ifPresent(task::setStatus);
newAssignedTo.ifPresent(task::setAssignedTo);
@@ -60,12 +65,8 @@ public class TasksService {
}
public TaskRecord createTask(String title, String createdBy) {
var task = new TaskRecord(UUID.randomUUID().toString(),
title,
Instant.now(),
createdBy,
null,
"PENDING");
var task = new TaskRecord(UUID.randomUUID()
.toString(), title, Instant.now(), createdBy, null, "PENDING");
tasksRepository.save(task);
return task;
}

View File

@@ -1,13 +1,9 @@
server.port=8082
spring.artemis.mode=EMBEDDED
spring.artemis.host=localhost
spring.artemis.port=61616
spring.artemis.embedded.enabled=true
spring.jms.template.default-destination=my-queue-1
logging.level.org.apache.activemq.audit.base=WARN
logging.level.org.apache.activemq.audit.message=WARN