Необязательность реузальтат пользовательских пре/пост обработчиков
This commit is contained in:
parent
d8c3efc982
commit
25b7b10bb7
@ -127,29 +127,31 @@ class InQueue extends EventEmitter {
|
||||
throw new ServerError(SERR_APP_SERVER_BEFORE, e.message);
|
||||
}
|
||||
//Проверяем структуру ответа функции предобработки
|
||||
let sCheckResult = validateObject(
|
||||
resBefore,
|
||||
objInQueueSchema.InQueueProcessorFnBefore,
|
||||
"Результат функции предобработки входящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Выставим статус сообщению очереди - исполнено сервером приложений
|
||||
q = await this.dbConn.setQueueState({
|
||||
nQueueId: q.nId,
|
||||
nExecState: objQueueSchema.NQUEUE_EXEC_STATE_APP_OK
|
||||
});
|
||||
//Фиксируем успех исполнения
|
||||
if (resBefore.blMsg) {
|
||||
q = await this.dbConn.setQueueAppSrvResult({
|
||||
if (resBefore) {
|
||||
let sCheckResult = validateObject(
|
||||
resBefore,
|
||||
objInQueueSchema.InQueueProcessorFnBefore,
|
||||
"Результат функции предобработки входящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Выставим статус сообщению очереди - исполнено сервером приложений
|
||||
q = await this.dbConn.setQueueState({
|
||||
nQueueId: q.nId,
|
||||
blMsg: resBefore.blMsg,
|
||||
blResp: null
|
||||
nExecState: objQueueSchema.NQUEUE_EXEC_STATE_APP_OK
|
||||
});
|
||||
//Фиксируем успех исполнения
|
||||
if (resBefore.blMsg) {
|
||||
q = await this.dbConn.setQueueAppSrvResult({
|
||||
nQueueId: q.nId,
|
||||
blMsg: resBefore.blMsg,
|
||||
blResp: null
|
||||
});
|
||||
}
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
}
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
}
|
||||
}
|
||||
//Вызываем обработчик со стороны БД (если он есть)
|
||||
@ -184,27 +186,29 @@ class InQueue extends EventEmitter {
|
||||
throw new ServerError(SERR_APP_SERVER_AFTER, e.message);
|
||||
}
|
||||
//Проверяем структуру ответа функции предобработки
|
||||
let sCheckResult = validateObject(
|
||||
resAfter,
|
||||
objInQueueSchema.InQueueProcessorFnAfter,
|
||||
"Результат функции постобработки входящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Выставим статус сообщению очереди - исполнено сервером приложений
|
||||
q = await this.dbConn.setQueueState({
|
||||
nQueueId: q.nId,
|
||||
nExecState: objQueueSchema.NQUEUE_EXEC_STATE_APP_OK
|
||||
});
|
||||
//Фиксируем успех исполнения
|
||||
q = await this.dbConn.setQueueAppSrvResult({
|
||||
nQueueId: q.nId,
|
||||
blMsg: q.blMsg,
|
||||
blResp: resAfter.blResp
|
||||
});
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
if (resAfter) {
|
||||
let sCheckResult = validateObject(
|
||||
resAfter,
|
||||
objInQueueSchema.InQueueProcessorFnAfter,
|
||||
"Результат функции постобработки входящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Выставим статус сообщению очереди - исполнено сервером приложений
|
||||
q = await this.dbConn.setQueueState({
|
||||
nQueueId: q.nId,
|
||||
nExecState: objQueueSchema.NQUEUE_EXEC_STATE_APP_OK
|
||||
});
|
||||
//Фиксируем успех исполнения
|
||||
q = await this.dbConn.setQueueAppSrvResult({
|
||||
nQueueId: q.nId,
|
||||
blMsg: q.blMsg,
|
||||
blResp: resAfter.blResp
|
||||
});
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Всё успешно - отдаём результат клиенту
|
||||
|
@ -103,19 +103,21 @@ const appProcess = async prms => {
|
||||
throw new ServerError(SERR_APP_SERVER_BEFORE, e.message);
|
||||
}
|
||||
//Проверяем структуру ответа функции предобработки
|
||||
let sCheckResult = validateObject(
|
||||
resBefore,
|
||||
objOutQueueProcessorSchema.OutQueueProcessorFnBefore,
|
||||
"Результат функции предобработки исходящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Применим её
|
||||
options = _.cloneDeep(resBefore.options);
|
||||
if (resBefore.blMsg) prms.queue.blMsg = resBefore.blMsg;
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
if (resBefore) {
|
||||
let sCheckResult = validateObject(
|
||||
resBefore,
|
||||
objOutQueueProcessorSchema.OutQueueProcessorFnBefore,
|
||||
"Результат функции предобработки исходящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Применим её
|
||||
options = _.cloneDeep(resBefore.options);
|
||||
if (resBefore.blMsg) prms.queue.blMsg = resBefore.blMsg;
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Отправляем сообщение удалённому серверу
|
||||
@ -131,18 +133,22 @@ const appProcess = async prms => {
|
||||
throw new ServerError(SERR_APP_SERVER_AFTER, e.message);
|
||||
}
|
||||
//Проверяем структуру ответа функции предобработки
|
||||
let sCheckResult = validateObject(
|
||||
resAfter,
|
||||
objOutQueueProcessorSchema.OutQueueProcessorFnAfter,
|
||||
"Результат функции постобработки исходящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Применим её
|
||||
prms.queue.blResp = resAfter.blResp;
|
||||
if (resAfter) {
|
||||
let sCheckResult = validateObject(
|
||||
resAfter,
|
||||
objOutQueueProcessorSchema.OutQueueProcessorFnAfter,
|
||||
"Результат функции постобработки исходящего сообщения"
|
||||
);
|
||||
//Если структура ответа в норме
|
||||
if (!sCheckResult) {
|
||||
//Применим её
|
||||
prms.queue.blResp = resAfter.blResp;
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
}
|
||||
} else {
|
||||
//Или расскажем об ошибке
|
||||
throw new ServerError(SERR_OBJECT_BAD_INTERFACE, sCheckResult);
|
||||
prms.queue.blResp = new Buffer(serverResp.toString());
|
||||
}
|
||||
} else {
|
||||
prms.queue.blResp = new Buffer(serverResp.toString());
|
||||
|
Loading…
x
Reference in New Issue
Block a user