From 80cd5493597ee063697f9bdada100206aa81c981 Mon Sep 17 00:00:00 2001 From: Claus-Peter Huebner Date: Fri, 21 Jul 2023 19:50:47 +0200 Subject: [PATCH] reduce dltconnectorclient from writing in database --- backend/src/apis/DltConnectorClient.ts | 48 ++------------------------ 1 file changed, 3 insertions(+), 45 deletions(-) diff --git a/backend/src/apis/DltConnectorClient.ts b/backend/src/apis/DltConnectorClient.ts index fd6c0cb05..2f2e25858 100644 --- a/backend/src/apis/DltConnectorClient.ts +++ b/backend/src/apis/DltConnectorClient.ts @@ -14,43 +14,6 @@ const mutation = gql` } ` -/** - * write message id into db to transaction - * @param dltMessageId message id of dlt message - * @param transactionId typeorm transaction id - */ -const writeDltMessageId = async ( - dltMessageIdHex: string, - transactionId: number, -): Promise => { - try { - const transaction = await DbTransaction.findOne({ where: { id: transactionId } }) - if (transaction) { - const dltMessageId = Buffer.from(dltMessageIdHex, 'hex') - if (dltMessageId.length !== 32) { - logger.error( - 'Error dlt message id is invalid: %s, should by 32 Bytes long in binary after converting from hex', - dltMessageIdHex, - ) - return false - } - transaction.dltTransactionId = dltMessageId - await transaction.save() - logger.info( - 'transmit transaction over dlt connector, store message id: %s in db', - dltMessageIdHex, - ) - return true - } else { - logger.error('transaction with id: %d not found', transactionId) - return false - } - } catch (e) { - logger.error('exception by finding transaction in db: %s', e) - return false - } -} - // from ChatGPT function getTransactionTypeString(id: TransactionTypeId): string { const key = Object.keys(TransactionTypeId).find( @@ -109,7 +72,7 @@ export class DltConnectorClient { * transmit transaction via dlt-connector to iota * and update dltTransactionId of transaction in db with iota message id */ - public async transmitTransaction(transaction: DbTransaction): Promise { + public async transmitTransaction(transaction: DbTransaction): Promise { const typeString = getTransactionTypeString(transaction.typeId) const secondsSinceEpoch = Math.round(transaction.balanceDate.getTime() / 1000) const amountString = transaction.amount.toString() @@ -122,14 +85,9 @@ export class DltConnectorClient { createdAt: secondsSinceEpoch, }, }) - const writeResult = await writeDltMessageId( - result.transmitTransaction.dltTransactionIdHex, - transaction.id, - ) - return writeResult + return result.transmitTransaction.dltTransactionIdHex } catch (e) { - logger.error('Error send sending transaction to dlt-connector: %o', e) - return false + throw new LogError('Error send sending transaction to dlt-connector: %o', e) } } }