http://jira.mfd.msk:8088/browse/BKI-3215 Added packageName to SignalClientException for logging it on error
This commit is contained in:
parent
dc89f17761
commit
6571e4d90f
5 changed files with 26 additions and 12 deletions
|
|
@ -55,7 +55,12 @@ public class GlobalExceptionHandler {
|
||||||
commonError.setErrorText(errorText);
|
commonError.setErrorText(errorText);
|
||||||
|
|
||||||
if (ex instanceof SignalClientException) {
|
if (ex instanceof SignalClientException) {
|
||||||
log.warn("Response error: {}", errorText);
|
String packageName = ((SignalClientException) ex).getPackageName();
|
||||||
|
if(packageName != null ) {
|
||||||
|
log.warn("Response error: {}. PackageName: {}", errorText, packageName);
|
||||||
|
} else {
|
||||||
|
log.warn("Response error: {}", errorText);
|
||||||
|
}
|
||||||
return new ResponseEntity<>(commonError, headers, HttpStatus.BAD_REQUEST);
|
return new ResponseEntity<>(commonError, headers, HttpStatus.BAD_REQUEST);
|
||||||
} else {
|
} else {
|
||||||
Exception cause = ((SignalServerException) ex).getCause();
|
Exception cause = ((SignalServerException) ex).getCause();
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,10 @@ import ru.nbch.credit_tracker.enums.XmlErrorFormat;
|
||||||
@Getter
|
@Getter
|
||||||
public class SignalClientException extends SignalException {
|
public class SignalClientException extends SignalException {
|
||||||
|
|
||||||
public SignalClientException(EnumKeyMessage errorMessage, XmlErrorFormat errorFormat) {
|
private final String packageName;
|
||||||
|
|
||||||
|
public SignalClientException(EnumKeyMessage errorMessage, XmlErrorFormat errorFormat, String packageName) {
|
||||||
super(errorMessage, errorFormat);
|
super(errorMessage, errorFormat);
|
||||||
|
this.packageName = packageName;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -156,13 +156,13 @@ public class SignalFacade {
|
||||||
AuthorizationService.AuthResult authResult = authorizationService.findAuthInfo(monitoringRequest.getUserId(), monitoringRequest.getPassword());
|
AuthorizationService.AuthResult authResult = authorizationService.findAuthInfo(monitoringRequest.getUserId(), monitoringRequest.getPassword());
|
||||||
if (!authResult.isSuccess()) {
|
if (!authResult.isSuccess()) {
|
||||||
signalService.rejectPackage(monitoringRequest);
|
signalService.rejectPackage(monitoringRequest);
|
||||||
throw clientExcp(authResult.getError(), XmlErrorFormat.MonitoringError);
|
throw clientExcp(authResult.getError(), monitoringRequest.getPackageName(), XmlErrorFormat.MonitoringError);
|
||||||
}
|
}
|
||||||
|
|
||||||
// проверка на уникальность пакета
|
// проверка на уникальность пакета
|
||||||
if (signalService.isPackageNotUnique(monitoringRequest)) {
|
if (signalService.isPackageNotUnique(monitoringRequest)) {
|
||||||
signalService.rejectPackage(monitoringRequest);
|
signalService.rejectPackage(monitoringRequest);
|
||||||
throw clientExcp(SignalError.ERROR_007, XmlErrorFormat.MonitoringError);
|
throw clientExcp(SignalError.ERROR_007, monitoringRequest.getPackageName(), XmlErrorFormat.MonitoringError);
|
||||||
}
|
}
|
||||||
|
|
||||||
packageId = signalService.registerPackage(monitoringRequest);
|
packageId = signalService.registerPackage(monitoringRequest);
|
||||||
|
|
|
||||||
|
|
@ -31,32 +31,34 @@ public class ValidationService {
|
||||||
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "PackageName");
|
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "PackageName");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String packageName = request.getPackageName();
|
||||||
|
|
||||||
if (!validatePackageName(request.getPackageName())) {
|
if (!validatePackageName(request.getPackageName())) {
|
||||||
throw clientExcp(SignalError.ERROR_008, XmlErrorFormat.MonitoringError);
|
throw clientExcp(SignalError.ERROR_008, packageName, XmlErrorFormat.MonitoringError);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.getUserId() == null) {
|
if (request.getUserId() == null) {
|
||||||
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "UserId");
|
throw clientExcp(SignalError.ERROR_002, packageName, XmlErrorFormat.MonitoringError, "UserId");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.getPassword() == null) {
|
if (request.getPassword() == null) {
|
||||||
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "Password");
|
throw clientExcp(SignalError.ERROR_002, packageName, XmlErrorFormat.MonitoringError, "Password");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.getSubjects() == null) {
|
if (request.getSubjects() == null) {
|
||||||
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "Subjects");
|
throw clientExcp(SignalError.ERROR_002, packageName, XmlErrorFormat.MonitoringError, "Subjects");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.getSubjects().getSubject().isEmpty()) {
|
if (request.getSubjects().getSubject().isEmpty()) {
|
||||||
throw clientExcp(SignalError.ERROR_002, XmlErrorFormat.MonitoringError, "Subject");
|
throw clientExcp(SignalError.ERROR_002, packageName, XmlErrorFormat.MonitoringError, "Subject");
|
||||||
}
|
}
|
||||||
|
|
||||||
for (Subject subject : request.getSubjects().getSubject()) {
|
for (Subject subject : request.getSubjects().getSubject()) {
|
||||||
if (!validateNPId(subject.getId())) {
|
if (!validateNPId(subject.getId())) {
|
||||||
throw clientExcp(SignalError.ERROR_010, XmlErrorFormat.MonitoringError, subject.getId());
|
throw clientExcp(SignalError.ERROR_010, packageName, XmlErrorFormat.MonitoringError, subject.getId());
|
||||||
}
|
}
|
||||||
if (!validatePhone(subject.getClientId())) {
|
if (!validatePhone(subject.getClientId())) {
|
||||||
throw clientExcp(SignalError.ERROR_003, XmlErrorFormat.MonitoringError, subject.getId());
|
throw clientExcp(SignalError.ERROR_003, packageName, XmlErrorFormat.MonitoringError, subject.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,11 @@ import ru.nbch.credit_tracker.exceptions.SignalServerException;
|
||||||
public class ExceptionUtils {
|
public class ExceptionUtils {
|
||||||
|
|
||||||
public static SignalClientException clientExcp(IEnumKeyCode enumKeyCode, XmlErrorFormat xmlErrorFormat, Object... args) {
|
public static SignalClientException clientExcp(IEnumKeyCode enumKeyCode, XmlErrorFormat xmlErrorFormat, Object... args) {
|
||||||
return new SignalClientException(new EnumKeyMessage(enumKeyCode, args), xmlErrorFormat);
|
return clientExcp(enumKeyCode, null, xmlErrorFormat, args);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static SignalClientException clientExcp(IEnumKeyCode enumKeyCode, String packageName, XmlErrorFormat xmlErrorFormat, Object... args) {
|
||||||
|
return new SignalClientException(new EnumKeyMessage(enumKeyCode, args), xmlErrorFormat, packageName);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static SignalServerException serverExcp(IEnumKeyCode enumKeyCode, XmlErrorFormat xmlErrorFormat, Exception cause, Object... args) {
|
public static SignalServerException serverExcp(IEnumKeyCode enumKeyCode, XmlErrorFormat xmlErrorFormat, Exception cause, Object... args) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue