Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 6 additions & 8 deletions privileges_microservice/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@
<artifactId>jjwt-impl</artifactId>
<version>0.12.6</version>
</dependency>


<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt-jackson</artifactId>
Expand Down Expand Up @@ -159,9 +161,9 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.11.0</version> <!-- Replace with the latest version -->
<configuration>
<source>17</source>
<target>17</target>
<release>17</release>
<source>21</source>
<target>21</target>
<release>21</release>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
Expand All @@ -178,10 +180,6 @@
</plugin>
</plugins>
</build>
<properties>
<maven.compiler.source>24</maven.compiler.source>
<maven.compiler.target>24</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>


</project>
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public class PrivilegeNameControllerAdvice extends ExceptionHandlerReporter {
private static final Logger logger = LoggerFactory.getLogger(PrivilegeNameControllerAdvice.class);
@ExceptionHandler(PrivilegeNotFoundException.class)
public ResponseEntity<List<ErrorResponse>> managePrivilegeNotFoundException(){
var list = List.of(new ErrorResponse(getIssueDateFormatted(),getResolveIssueDetails(), getMessage()));
var list = List.of(new ErrorResponse(getIssueDateFormatted(),getResolveIssueDetails(), getMessage(),getException()));
logger.warn("Error response : {}, error code : {}", list, HttpStatus.FORBIDDEN.value());
return new ResponseEntity<>(list, HttpStatus.NOT_FOUND);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,29 @@

import com.users.application.dtos.ContactFormRequest;
import com.users.application.dtos.ContactUsResponse;
import com.users.application.entities.ContactForm;
import com.users.application.executor.ServiceConcurrentExecutor;
import com.users.application.executor.UserServiceConcurrentExecutor;
import com.users.application.services.ContactFormService;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import jakarta.validation.Valid;
import java.util.*;
import java.util.concurrent.Executors;

@RestController
@RequestMapping("/api/contact")
@Validated
public class ContactFormController {
public class ContactFormController extends UserServiceConcurrentExecutor {

private final ContactFormService service;
private final ServiceConcurrentExecutor serviceConcurrentExecutor;
public ContactFormController(ContactFormService service) {
this.serviceConcurrentExecutor = ServiceConcurrentExecutor.getInstance();

super(Executors.newVirtualThreadPerTaskExecutor());
this.service = service;
}

@PostMapping("/submit")
public ResponseEntity<ContactUsResponse> submitEnquiry( @RequestBody ContactFormRequest request) {

var response = serviceConcurrentExecutor.buildContactFormServiceExecutor(service,request,false);
var response = super.buildContactFormServiceExecutor(service,request,false);
if (response.equals("Enquiry successfully submitted")) {
return ResponseEntity.ok(new ContactUsResponse("success", "Enquiry successfully submitted"));
}else{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import com.privileges.application.dtos.FindByNameRequest;
import com.privileges.application.dtos.PrivilegesResponse;
import com.privileges.application.service.PrivilegesService;
import com.users.application.executor.ServiceConcurrentExecutor;
import com.users.application.executor.UserServiceConcurrentExecutor;
import com.utils.application.ResponseContract;
import com.utils.application.globalExceptions.errorResponse.ErrorResponse;
import org.slf4j.Logger;
Expand All @@ -14,25 +14,25 @@
import org.springframework.web.util.UriComponentsBuilder;

import java.util.List;
import java.util.concurrent.Executors;

@RestController
@RequestMapping("/dev/privileges/api")
public class PrivilegeController {
public class PrivilegeController extends UserServiceConcurrentExecutor {
Logger logger = LoggerFactory.getLogger(PrivilegeController.class);
private final PrivilegesService privilegesService;
private final ServiceConcurrentExecutor serviceConcurrentExecutor;


public PrivilegeController(PrivilegesService privilegesService) {
super(Executors.newVirtualThreadPerTaskExecutor());
this.privilegesService = privilegesService;
this.serviceConcurrentExecutor = ServiceConcurrentExecutor.getInstance();
}

@PostMapping("/addPrivilege")
public ResponseEntity<List<? extends ResponseContract>> addPrivileges(@RequestBody AddPrivilegesRequest request, UriComponentsBuilder uriBuilder) {
privilegesService.setAddPrivilegesRequest(request);

var list = this.serviceConcurrentExecutor.buildServiceExecutor(privilegesService, "AddPrivileges").get(0);
var list = super.buildServiceExecutor(privilegesService, "AddPrivileges").get(0);
if (list instanceof PrivilegesResponse response) {

// creating status 201
Expand All @@ -47,7 +47,7 @@ public ResponseEntity<List<? extends ResponseContract>> addPrivileges(@RequestBo

@GetMapping("/printPrivilege")
public ResponseEntity<List<? extends ResponseContract>> printPrivileges() {
var list = this.serviceConcurrentExecutor.buildServiceExecutor(privilegesService, "getAllPrivileges");
var list = super.buildServiceExecutor(privilegesService, "getAllPrivileges");
return ResponseEntity.ok(list);
}

Expand All @@ -57,7 +57,7 @@ public ResponseEntity<List<? extends ResponseContract>> printPrivilegeByName(@Pa
.builder()
.privilegeName(name)
.build());
var list = this.serviceConcurrentExecutor.buildServiceExecutor(privilegesService, "getPrivilegeByName").get(0);
var list = super.buildServiceExecutor(privilegesService, "getPrivilegeByName").get(0);
if (list instanceof PrivilegesResponse response) {
return ResponseEntity.ok(List.of(response));
} else {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,51 +1,42 @@
package com.users.application.controllers;



import com.users.application.dtos.*;
import com.users.application.mappers.UsersMapper;
import com.users.application.executor.UserServiceConcurrentExecutor;
import com.users.application.services.UsersService;
import com.utils.application.ResponseContract;
import com.users.application.executor.ServiceConcurrentExecutor;
import com.utils.application.globalExceptions.errorResponse.ErrorResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.util.UriComponentsBuilder;

import java.util.List;
import java.util.concurrent.Executors;


@RestController
@RequestMapping("/dev/api/auth")
public class UsersAuthController {
Logger logger = LoggerFactory.getLogger(UsersAuthController.class);
private UsersService service;
private ServiceConcurrentExecutor serviceConcurrentExecutor;
private UsersMapper mapper;
public class UsersAuthController extends UserServiceConcurrentExecutor {
private final Logger logger = LoggerFactory.getLogger(UsersAuthController.class);
private final UsersService service;
@Autowired
public UsersAuthController(@Autowired UsersMapper mapper, @Autowired UsersService service) {
this.serviceConcurrentExecutor = ServiceConcurrentExecutor.getInstance();
public UsersAuthController( @Autowired UsersService service) {
super(Executors.newVirtualThreadPerTaskExecutor());
this.service = service;
this.mapper = mapper;
}

@PostMapping("/sign-up")
public ResponseEntity<List<? extends ResponseContract>> userRegisters(@RequestBody UsersRegisterRequest request, UriComponentsBuilder uriBuilder){

service.setUsersRegisterRequest(request);
UsersService.setServiceHandler("registerUsers");
var set = serviceConcurrentExecutor.buildServiceExecutor(service);
var set = super.executeUserService(service,"registerUsers",request);

if (set.get(0) instanceof UsersResponse) {
if (set.getFirst() instanceof UsersResponse) {

// creating status 201
var uri = uriBuilder.path("/dev/api/findUserByIdentityNumber/{id}").buildAndExpand(request.getUserIdentityNo()).toUri();
return ResponseEntity.created(uri).body(set);
} else {

ErrorResponse error = (ErrorResponse) set;
logger.warn("Error response : {}", error);
return ResponseEntity.badRequest().body(List.of(error));
Expand All @@ -54,29 +45,21 @@ public ResponseEntity<List<? extends ResponseContract>> userRegisters(@RequestBo

@PostMapping("/login")
public ResponseEntity<List<? extends ResponseContract>> login(@RequestBody LoginRequest request) {
UsersService.setServiceHandler("userLogin");
service.setLoginRequest(request);
var list = this.serviceConcurrentExecutor.buildServiceExecutor(service).get(0);
var list = super.executeUserService(service,"userLogin",request).getFirst();
if (list instanceof UsersResponse users) {
return ResponseEntity.ok(List.of(users));
} else {

ErrorResponse error = (ErrorResponse) list;
logger.warn("Error response : {}", error);
logger.warn("Error response : {}, error stack : {}", error, error.getException().getStackTrace());
return ResponseEntity.badRequest().body(List.of(error));
}
}

@PostMapping("/reset-password")
public ResponseEntity<List<? extends ResponseContract>> resetPassword( @RequestBody UpdatePasswordRequest request) {
UsersService.setServiceHandler("reset-password");
service.setUpdatePasswordRequest(request);


var list = this.serviceConcurrentExecutor.buildServiceExecutor(service);

if (list.get(0) instanceof UsersResponse) {
var list = super.executeUserService(service,"reset-password",request);

if (list.getFirst() instanceof UsersResponse) {
list.clear();
return ResponseEntity.ok(list);
} else {
Expand All @@ -89,14 +72,11 @@ public ResponseEntity<List<? extends ResponseContract>> resetPassword( @RequestB

@PostMapping("/forgot-password")
public ResponseEntity<List<? extends ResponseContract>> forgotPassword(@RequestBody FindByEmailRequest request){
UsersService.setFindByEmailRequest(request);
UsersService.setServiceHandler("forgot-password");
var response = serviceConcurrentExecutor.buildServiceExecutor(service);
if (response.get(0) instanceof UsersResponse) {

var response = super.executeUserService(service,"forgot-password",request);
if (response.getFirst() instanceof UsersResponse) {
return ResponseEntity.ok(response);
} else {

ErrorResponse error = (ErrorResponse) response;
logger.warn("Error response : {}", error);
return ResponseEntity.badRequest().body(List.of(error));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,77 +3,80 @@

import com.users.application.dtos.*;

import com.users.application.executor.UserServiceConcurrentExecutor;
import com.users.application.services.UsersService;
import com.utils.application.ResponseContract;
import com.users.application.executor.ServiceConcurrentExecutor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import com.utils.application.globalExceptions.errorResponse.ErrorResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;
import java.util.concurrent.Executors;

@RestController
@RequestMapping("/dev/api/users")
public class UsersController {
public class UsersController extends UserServiceConcurrentExecutor {
Logger logger = LoggerFactory.getLogger(UsersController.class);

private final UsersService service;
private final ServiceConcurrentExecutor serviceConcurrentExecutor;



@Autowired

public UsersController( @Autowired UsersService service) {
this.serviceConcurrentExecutor = ServiceConcurrentExecutor.getInstance();
public UsersController(@Autowired UsersService service) {
super(Executors.newVirtualThreadPerTaskExecutor());
this.service = service;

}

@GetMapping("/getAllUsers")
public ResponseEntity<List<? extends ResponseContract>> getAllUsers() {
UsersService.setServiceHandler("getAllUsers");
var list = this.serviceConcurrentExecutor.buildServiceExecutor(service);

var list = super.executeUserService(service, "getAllUsers", null);
return ResponseEntity.ok(list);
}


@GetMapping("/getAllUsers/{id}")
public ResponseEntity<List<? extends ResponseContract>> getUserById(@PathVariable Long id) {
UsersService.setServiceHandler("getUsersById");
service.setFindByIdRequest(new FindByIdRequest(id));
var list = this.serviceConcurrentExecutor.buildServiceExecutor(service).get(0);
if (list instanceof UsersResponse users) {

var list = super.executeUserService(service, "getUsersById", new FindByIdRequest(id)).getFirst();
if (list instanceof UsersResponse users) {
return ResponseEntity.ok(List.of(users));
} else {

ErrorResponse error = (ErrorResponse) list;
logger.warn("Error response : {}", error);
return ResponseEntity.badRequest().body(List.of(error));
}
return ResponseEntity.badRequest().body(List.of(error));
}
}

@GetMapping("/getUsersByFullName/{fullName}")
public ResponseEntity<List<? extends ResponseContract>> getUserByFullName(@PathVariable String fullName) {
UsersService.setServiceHandler("getUsersByFullName");
service.setUsersFullNameRequest(new UsersFullNameRequest(fullName));
var list = this.serviceConcurrentExecutor.buildServiceExecutor(service).get(0);
if (list instanceof UsersResponse users) {
var list = super.executeUserService(service,"getUsersByFullName",new UsersFullNameRequest(fullName)).getFirst();
if (list instanceof UsersResponse users) {
return ResponseEntity.ok(List.of(users));
} else {

ErrorResponse error = (ErrorResponse) list;
logger.warn("Error response : {}", error);
return ResponseEntity.badRequest().body(List.of(error));
} }
return ResponseEntity.badRequest().body(List.of(error));
}
}

@PostMapping("/findUserByIdentityNumber/{id}")
public ResponseEntity<List<? extends ResponseContract>> getUserByIdNo(@RequestBody IdentityNoRequest request) {
UsersService.setServiceHandler("getUsersByIdentityNo");
service.setIdentityNoRequest(request);
var list = this.serviceConcurrentExecutor.buildServiceExecutor(service);
return ResponseEntity.ok(list);
var list = super.executeUserService(service,"getUsersByIdentityNo",request).getFirst();

if (list instanceof UsersResponse) {
return ResponseEntity.ok(List.of(list));
}else{
ErrorResponse error = (ErrorResponse) list;
logger.warn("Error response : {}", error);
return ResponseEntity.badRequest().body(List.of(error));
}
}

}
Loading
Loading