Skip to content
Snippets Groups Projects
Commit 64a20345 authored by Alexey Lunin's avatar Alexey Lunin
Browse files

remove retry from consumer

parent e7687d51
No related branches found
No related tags found
No related merge requests found
Pipeline #67259 passed with stage
in 1 minute and 20 seconds
......@@ -29,7 +29,6 @@ import {
PROOF_DECLINE,
IdReqDto,
} from "@ocm-engine/dtos";
import asyncRetry from "async-retry";
@Injectable()
export class EventHandlerService {
......@@ -38,107 +37,91 @@ export class EventHandlerService {
constructor(private readonly agentService: AgentService) {}
async handle<T>(event: CloudEventDto<T>) {
let data;
let data: any;
let dto;
await asyncRetry(
async () => {
switch (event.type) {
case CONNECTION_CREATE:
data = await this.agentService.createInvitation();
break;
case CONNECTION_ACCEPT:
dto = event.data as CreateInvitationResponseDto;
data = await this.agentService.acceptInvitation(dto.invitationUrl);
break;
case CONNECTION_LIST:
data = await this.agentService.fetchConnections();
break;
case CONNECTION_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getConnectionById(dto.id);
break;
case SCHEMA_CREATE:
dto = event.data as CreateSchemaRequestDto;
data = await this.agentService.createSchema(dto);
break;
case SCHEMA_LIST:
data = await this.agentService.fetchSchemas();
break;
case SCHEMA_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getSchemaById(dto.id);
break;
case CRED_DEF_CREATE:
data = await this.agentService.createCredentialDefinition(
event.data as CreateCredentialDefinitionRequsetDto,
);
break;
case CRED_ISSUE:
data = await this.agentService.issueCredential(
event.data as IssueCredentialRequestDto,
);
break;
case CRED_LIST:
data = await this.agentService.credentials();
break;
case CRED_OFFER_LIST:
data = await this.agentService.credentialByStatedOfferReceived();
break;
case CRED_OFFER_ACCEPT:
dto = event.data as IdReqDto;
data = await this.agentService.acceptCredential(
dto.id,
);
break;
case PROOF_ISSUE:
dto = event.data as IssueProofRequestDto;
data = await this.agentService.issueProof(dto);
break;
case PROOF_LIST:
data = await this.agentService.proofs();
break;
case PROOF_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getProofById(dto.id);
break;
case PROOF_ACCEPT:
data = await this.agentService.acceptProof(
event.data as ProofReqDto,
);
break;
case PROOF_DECLINE:
dto = event.data as IdReqDto;
data = await this.agentService.declineProofRequest(
dto.id,
);
break;
case MESSAGE_MAKE:
dto = event.data as MakeBasicMessageRequestDto;
data = await this.agentService.sendMessage(dto);
break;
}
},
{
retries: 5,
onRetry: (error: unknown) => {
this.logger.log(JSON.stringify(error, null, 2));
},
},
);
switch (event.type) {
case CONNECTION_CREATE:
data = await this.agentService.createInvitation();
break;
case CONNECTION_ACCEPT:
dto = event.data as CreateInvitationResponseDto;
data = await this.agentService.acceptInvitation(dto.invitationUrl);
break;
case CONNECTION_LIST:
data = await this.agentService.fetchConnections();
break;
case CONNECTION_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getConnectionById(dto.id);
break;
case SCHEMA_CREATE:
dto = event.data as CreateSchemaRequestDto;
data = await this.agentService.createSchema(dto);
break;
case SCHEMA_LIST:
data = await this.agentService.fetchSchemas();
break;
case SCHEMA_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getSchemaById(dto.id);
break;
case CRED_DEF_CREATE:
data = await this.agentService.createCredentialDefinition(
event.data as CreateCredentialDefinitionRequsetDto,
);
break;
case CRED_ISSUE:
data = await this.agentService.issueCredential(
event.data as IssueCredentialRequestDto,
);
break;
case CRED_LIST:
data = await this.agentService.credentials();
break;
case CRED_OFFER_LIST:
data = await this.agentService.credentialByStatedOfferReceived();
break;
case CRED_OFFER_ACCEPT:
dto = event.data as IdReqDto;
data = await this.agentService.acceptCredential(dto.id);
break;
case PROOF_ISSUE:
dto = event.data as IssueProofRequestDto;
data = await this.agentService.issueProof(dto);
break;
case PROOF_LIST:
data = await this.agentService.proofs();
break;
case PROOF_GET:
dto = event.data as IdReqDto;
data = await this.agentService.getProofById(dto.id);
break;
case PROOF_ACCEPT:
data = await this.agentService.acceptProof(event.data as ProofReqDto);
break;
case PROOF_DECLINE:
dto = event.data as IdReqDto;
data = await this.agentService.declineProofRequest(dto.id);
break;
case MESSAGE_MAKE:
dto = event.data as MakeBasicMessageRequestDto;
data = await this.agentService.sendMessage(dto);
break;
}
event.data = data;
return event;
......
......@@ -26,7 +26,7 @@ export class ConsumerService extends NatsBaseService {
private registerConsumer = (stream: string) => {
const consumerConfig: ConsumerConfig = {
max_deliver: 3,
max_deliver: 5,
ack_wait: 60 * 1000_000_000, // increase wait time to 1 minute
name: this.agentConfig.agentConsumerName,
ack_policy: AckPolicy.Explicit,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment