backend-api fix NullPointerException в RequestInfoAccepter (теперь только warn)

This commit is contained in:
AKurakin 2023-08-18 13:51:21 +03:00
parent d6cefd3902
commit 51ccc27090

View file

@ -14,6 +14,10 @@ import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
/**
* Сервис для сигнализирования результатов запросов клиентов. Ассинхронное обновление статуса.
* Клиент запрашивает периодически (или по событию) таблицу Map_RequestInfo и видит результат выполнения запросов.
*/
@Service
public class RequestInfoAccepter extends QueueConsumer implements InitializingBean {
private final Logger log = LoggerFactory.getLogger(getClass());
@ -37,9 +41,15 @@ public class RequestInfoAccepter extends QueueConsumer implements InitializingBe
private void updateRequestInfo(BaseRequest<RequestInfoUpdate> requestInfoUpdateBaseRequest) {
//will throw exception for any class other than RequestInfoUpdate
RequestInfoUpdate statusInfo = requestInfoUpdateBaseRequest.getRequestPayload();
if (statusInfo == null || statusInfo.getId() == null) {
log.warn("BaseRequest id={}, RequestPayload={}: requestInfo id was null",
requestInfoUpdateBaseRequest.getId(), statusInfo);
return;
}
RequestInfo requestInfo = requestInfoImdg.getSingleObjectByID(statusInfo.getId());
if (requestInfo == null) {
log.warn("unknown requestInfo id={}", statusInfo.getId());
log.warn("unknown requestInfo id={}; statusInfo: {}",
statusInfo.getId(), statusInfo);
return;
}
requestInfo.setStatus(statusInfo.getStatus());