diff --git a/src/app.constants.ts b/src/app.constants.ts index a29cf71..0592c17 100644 --- a/src/app.constants.ts +++ b/src/app.constants.ts @@ -5,16 +5,18 @@ export const SERVICE_NAME = 'ad'; export const GRPC_PACKAGE_NAME = 'ad'; export const GRPC_SERVICE_NAME = 'AdService'; -// messaging +// messaging output export const AD_CREATED_ROUTING_KEY = 'ad.created'; + +// messaging input export const MATCHER_AD_CREATED_MESSAGE_HANDLER = 'matcherAdCreated'; -export const MATCHER_AD_CREATED_ROUTING_KEY = 'matcher.ad.created'; -export const MATCHER_AD_CREATED_QUEUE = 'matcher-ad-created'; +export const MATCHER_AD_CREATED_ROUTING_KEY = 'matcher-ad.created'; +export const MATCHER_AD_CREATED_QUEUE = 'ad.matcher-ad.created'; export const MATCHER_AD_CREATION_FAILED_MESSAGE_HANDLER = 'matcherAdCreationFailed'; export const MATCHER_AD_CREATION_FAILED_ROUTING_KEY = - 'matcher.ad.creation.failed'; -export const MATCHER_AD_CREATION_FAILED_QUEUE = 'matcher-ad-creation-failed'; + 'matcher-ad.creation-failed'; +export const MATCHER_AD_CREATION_FAILED_QUEUE = 'ad.matcher-ad.creation-failed'; // configuration export const SERVICE_CONFIGURATION_SET_QUEUE = 'ad-configuration-set'; diff --git a/src/modules/ad/interface/message-handlers/matcher-ad-created.message-handler.ts b/src/modules/ad/interface/message-handlers/matcher-ad-created.message-handler.ts index 9ed1e4a..eb8f44e 100644 --- a/src/modules/ad/interface/message-handlers/matcher-ad-created.message-handler.ts +++ b/src/modules/ad/interface/message-handlers/matcher-ad-created.message-handler.ts @@ -13,12 +13,17 @@ export class MatcherAdCreatedMessageHandler { name: MATCHER_AD_CREATED_MESSAGE_HANDLER, }) public async matcherAdCreated(message: string) { - const matcherAdCreatedIntegrationEvent: MatcherAdCreatedIntegrationEvent = - JSON.parse(message); - await this.commandBus.execute( - new ValidateAdCommand({ - id: matcherAdCreatedIntegrationEvent.id, - }), - ); + try { + const matcherAdCreatedIntegrationEvent: MatcherAdCreatedIntegrationEvent = + JSON.parse(message); + await this.commandBus.execute( + new ValidateAdCommand({ + id: matcherAdCreatedIntegrationEvent.id, + }), + ); + } catch (error: any) { + // do not throw error to acknowledge incoming message + // error handling should be done in the command handler, if relevant + } } } diff --git a/src/modules/ad/interface/message-handlers/matcher-ad-creation-failed.message-handler.ts b/src/modules/ad/interface/message-handlers/matcher-ad-creation-failed.message-handler.ts index 05e3691..8b0fdb0 100644 --- a/src/modules/ad/interface/message-handlers/matcher-ad-creation-failed.message-handler.ts +++ b/src/modules/ad/interface/message-handlers/matcher-ad-creation-failed.message-handler.ts @@ -13,12 +13,17 @@ export class MatcherAdCreationFailedMessageHandler { name: MATCHER_AD_CREATION_FAILED_MESSAGE_HANDLER, }) public async matcherAdCreationFailed(message: string) { - const matcherAdCreationFailedIntegrationEvent: MatcherAdCreationFailedIntegrationEvent = - JSON.parse(message); - await this.commandBus.execute( - new InvalidateAdCommand({ - id: matcherAdCreationFailedIntegrationEvent.id, - }), - ); + try { + const matcherAdCreationFailedIntegrationEvent: MatcherAdCreationFailedIntegrationEvent = + JSON.parse(message); + await this.commandBus.execute( + new InvalidateAdCommand({ + id: matcherAdCreationFailedIntegrationEvent.id, + }), + ); + } catch (error: any) { + // do not throw error to acknowledge incoming message + // error handling should be done in the command handler, if relevant + } } }