modified request interceptor
parent
8813ed9f7d
commit
d264c406bc
|
|
@ -300,8 +300,9 @@ public class KalenderRestController {
|
||||||
*/
|
*/
|
||||||
@CrossOrigin("*")
|
@CrossOrigin("*")
|
||||||
@PostMapping("/api/updateState")
|
@PostMapping("/api/updateState")
|
||||||
public ResponseEntity<String> updateState(@RequestBody StateChangeRequest request) throws ARException {
|
public ResponseEntity<String> updateState(@RequestBody StateChangeRequest request, HttpServletRequest httpRequest) throws ARException {
|
||||||
logRequest("/updateState", request.toString());
|
logRequest("/updateState", request.toString());
|
||||||
|
httpRequest.setAttribute("changeUpdateState", request);
|
||||||
var response = stateChange.createStateChange(request);
|
var response = stateChange.createStateChange(request);
|
||||||
return ResponseEntity.ok(response);
|
return ResponseEntity.ok(response);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ import org.springframework.web.method.HandlerMethod;
|
||||||
import org.springframework.web.servlet.HandlerInterceptor;
|
import org.springframework.web.servlet.HandlerInterceptor;
|
||||||
|
|
||||||
import com.nttdata.calender.changes.ChangeUpdateRequest;
|
import com.nttdata.calender.changes.ChangeUpdateRequest;
|
||||||
|
import com.nttdata.calender.states.StateChangeRequest;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
@ -23,57 +24,56 @@ public class RequestInterceptor implements HandlerInterceptor {
|
||||||
@Override
|
@Override
|
||||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
|
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
|
||||||
throws Exception {
|
throws Exception {
|
||||||
// Print current datetime before handling the request
|
|
||||||
String currentDateTime = LocalDateTime.now().format(dateTimeFormatter);
|
String currentDateTime = LocalDateTime.now().format(dateTimeFormatter);
|
||||||
long transactionId = System.currentTimeMillis();
|
long transactionId = System.currentTimeMillis();
|
||||||
String out = "Transaction ID = " + transactionId + " " + currentDateTime + " - handling request: "
|
String out = String.format("Transaction ID = %d %s - handling request: %s", transactionId, currentDateTime,
|
||||||
+ request.getRequestURI();
|
request.getRequestURI());
|
||||||
logger.info(out);
|
logger.info(out);
|
||||||
return true; // Continue with the request
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String output(String time, long id, String user, String status, String action, String ticket,
|
private static String output(String time, long id, String user, String status, String action, String ticket,
|
||||||
String result) {
|
String result) {
|
||||||
return String.format("Time: %s\nTransaction ID: %d\nUser: %s\nStatus: %s\nAction: %s\nTicket: %s\nResult: %s",
|
return String.format("%s\nTransaction ID: %d\nUser: %s\nStatus: %s\nAction: %s\nTicket: %s\nResult: %s",
|
||||||
time, id, user, status, action, ticket, result);
|
time, id, user, status, action, ticket, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
|
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
|
||||||
throws Exception {
|
throws Exception {
|
||||||
|
|
||||||
// Only react for POST requests
|
|
||||||
if ("POST".equalsIgnoreCase(request.getMethod())) {
|
if ("POST".equalsIgnoreCase(request.getMethod())) {
|
||||||
// Print current datetime after handling the request
|
|
||||||
String currentDateTime = LocalDateTime.now().format(dateTimeFormatter);
|
String currentDateTime = LocalDateTime.now().format(dateTimeFormatter);
|
||||||
long transactionId = System.currentTimeMillis();
|
long transactionId = System.currentTimeMillis();
|
||||||
String changeNr = "";
|
String changeNr = "";
|
||||||
|
|
||||||
if (handler instanceof HandlerMethod) {
|
if (handler instanceof HandlerMethod) {
|
||||||
HandlerMethod handlerMethod = (HandlerMethod) handler;
|
HandlerMethod handlerMethod = (HandlerMethod) handler;
|
||||||
if (handlerMethod.getMethod().getName().equals("updateChange")) {
|
String action = handlerMethod.getMethod().getName();
|
||||||
ChangeUpdateRequest changeUpdateRequest = (ChangeUpdateRequest) request
|
Object requestBody = request.getAttribute("requestBody");
|
||||||
.getAttribute("changeUpdateRequest");
|
|
||||||
if (changeUpdateRequest != null) {
|
if (requestBody instanceof ChangeUpdateRequest) {
|
||||||
changeNr = changeUpdateRequest.getChangeNr();
|
ChangeUpdateRequest changeUpdateRequest = (ChangeUpdateRequest) requestBody;
|
||||||
}
|
changeNr = changeUpdateRequest.getChangeNr();
|
||||||
|
action += " | Date change";
|
||||||
|
} else if (requestBody instanceof StateChangeRequest) {
|
||||||
|
StateChangeRequest changeStateRequest = (StateChangeRequest) requestBody;
|
||||||
|
changeNr = changeStateRequest.getChangeNr();
|
||||||
|
action += " | State transition";
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println("\n" + output(currentDateTime, transactionId, "User", "Success", request.getRequestURI(),
|
String status = (ex == null) ? "Success" : "Error";
|
||||||
changeNr, "Successful"));
|
String result = (ex == null) ? "Successful" : ex.getMessage();
|
||||||
}
|
String out = output(currentDateTime, transactionId, "User", status,
|
||||||
|
request.getRequestURI() + " | " + action, changeNr, result);
|
||||||
|
|
||||||
// if (ex == null) {
|
if (ex == null) {
|
||||||
// String out = currentDateTime + "Transaction ID = " + transactionId
|
logger.info(out);
|
||||||
// + "\nDone / Success\nHandling Request: " + request.getRequestURI() + "\n";
|
} else {
|
||||||
// logger.info(out);
|
logger.error(out);
|
||||||
// System.out.println(out);
|
}
|
||||||
// } else {
|
|
||||||
// String out = "Transaction ID = " + transactionId + " " + currentDateTime + " [ERROR] handling request: "
|
System.out.println("\n" + out);
|
||||||
// + request.getRequestURI() + "\n" + ex.getMessage() + "\n";
|
}
|
||||||
// logger.error(out);
|
|
||||||
// System.err.println(out);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue