Move router creation logic to service
This commit is contained in:
@@ -3,38 +3,25 @@ package com.litoralregas.openvpn.router;
|
||||
import jakarta.validation.Valid;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/routers")
|
||||
public class RouterController {
|
||||
|
||||
private final RouterRepository repository;
|
||||
private final RouterService service;
|
||||
|
||||
public RouterController(RouterRepository repository) {
|
||||
this.repository = repository;
|
||||
public RouterController(RouterService service) {
|
||||
this.service = service;
|
||||
}
|
||||
|
||||
@GetMapping
|
||||
public List<Router> getAll() {
|
||||
return repository.findAll();
|
||||
return service.findAll();
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
public Router create(@Valid @RequestBody CreateRouterRequest request) {
|
||||
Router router = new Router();
|
||||
|
||||
router.setId(UUID.randomUUID());
|
||||
router.setName(request.getName());
|
||||
router.setSerialNumber(request.getSerialNumber());
|
||||
router.setLanIp(request.getLanIp());
|
||||
router.setLanSubnet(request.getLanSubnet());
|
||||
router.setStatus("PENDING");
|
||||
router.setCreatedAt(LocalDateTime.now());
|
||||
router.setUpdatedAt(LocalDateTime.now());
|
||||
|
||||
return repository.save(router);
|
||||
return service.create(request);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.litoralregas.openvpn.router;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@Service
|
||||
public class RouterService {
|
||||
|
||||
private final RouterRepository repository;
|
||||
|
||||
public RouterService(RouterRepository repository) {
|
||||
this.repository = repository;
|
||||
}
|
||||
|
||||
public List<Router> findAll() {
|
||||
return repository.findAll();
|
||||
}
|
||||
|
||||
public Router create(CreateRouterRequest request) {
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
|
||||
Router router = new Router();
|
||||
router.setId(UUID.randomUUID());
|
||||
router.setName(request.getName());
|
||||
router.setSerialNumber(request.getSerialNumber());
|
||||
router.setLanIp(request.getLanIp());
|
||||
router.setLanSubnet(request.getLanSubnet());
|
||||
router.setStatus("PENDING");
|
||||
router.setCreatedAt(now);
|
||||
router.setUpdatedAt(now);
|
||||
|
||||
return repository.save(router);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user