Skip to content

Commit 9fe4486

Browse files
RinkalBhojanitipusinghaw
authored andcommitted
fixed coderabbit comments for PR:1517
Signed-off-by: Rinkal Bhojani <[email protected]>
1 parent 69adb3e commit 9fe4486

File tree

8 files changed

+46
-111
lines changed

8 files changed

+46
-111
lines changed

.env.sample

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -110,21 +110,21 @@ AGENT_PROTOCOL=http
110110
GEO_LOCATION_MASTER_DATA_IMPORT_SCRIPT=/prisma/scripts/geo_location_data_import.sh
111111
UPDATE_CLIENT_CREDENTIAL_SCRIPT=/prisma/scripts/update_client_credential_data.sh
112112

113-
USER_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for user service
114-
API_GATEWAY_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for api-gateway
115-
ORGANIZATION_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for organization service
116-
AGENT_PROVISIONING_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for agent provisioning service
117-
AGENT_SERVICE_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for agent service
118-
VERIFICATION_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for verification service
119-
ISSUANCE_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for issuance service
120-
CONNECTION_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for connection service
121-
CREDENTAILDEFINITION_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for credential-definition service
122-
SCHEMA_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for schema service
123-
UTILITIES_NKEY_SEED= xxxxxxxxxxxxx // Please provide Nkeys secret for utilities service
124-
GEOLOCATION_NKEY_SEED= xxxxxxxxxxx // Please provide Nkeys secret for geo-location service
125-
X509_NKEY_SEED= xxxxxxxxxxx // Please provide Nkeys secret for x509 service
126-
OIDC4VC_ISSUANCE_NKEY_SEED= xxxxxxxxxxx // Please provide Nkeys secret for x509 service
127-
OIDC4VC_VERIFICATION_NKEY_SEED= xxxxxxxxxxx // Please provide Nkeys secret for x509 service
113+
USER_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for user service
114+
API_GATEWAY_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for api-gateway
115+
ORGANIZATION_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for organization service
116+
AGENT_PROVISIONING_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for agent provisioning service
117+
AGENT_SERVICE_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for agent service
118+
VERIFICATION_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for verification service
119+
ISSUANCE_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for issuance service
120+
CONNECTION_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for connection service
121+
CREDENTAILDEFINITION_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for credential-definition service
122+
SCHEMA_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for schema service
123+
UTILITIES_NKEY_SEED=xxxxxxxxxxxxx // Please provide Nkeys secret for utilities service
124+
GEOLOCATION_NKEY_SEED=xxxxxxxxxxx // Please provide Nkeys secret for geo-location service
125+
X509_NKEY_SEED=xxxxxxxxxxx // Please provide Nkeys secret for x509 service
126+
OIDC4VC_ISSUANCE_NKEY_SEED=xxxxxxxxxxx // Please provide Nkeys secret for x509 service
127+
OIDC4VC_VERIFICATION_NKEY_SEED=xxxxxxxxxxx // Please provide Nkeys secret for x509 service
128128

129129
AFJ_AGENT_TOKEN_PATH=/apps/agent-provisioning/AFJ/token/
130130

apps/api-gateway/src/agent-service/dto/create-schema.dto.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { ApiProperty } from '@nestjs/swagger';
2-
import { IsString, IsNotEmpty, IsArray } from 'class-validator';
2+
import { IsString, IsNotEmpty, IsArray, ArrayNotEmpty } from 'class-validator';
33

44
export class CreateTenantSchemaDto {
55
@ApiProperty()
@@ -19,11 +19,9 @@ export class CreateTenantSchemaDto {
1919

2020
@ApiProperty()
2121
@IsArray({ message: 'attributes must be an array' })
22-
@IsString({ each: true })
23-
// TODO: IsNotEmpty won't work for array. Must use @ArrayNotEmpty() instead
24-
// @ArrayNotEmpty({ message: 'please provide at least one attribute' })
25-
// @IsNotEmpty({ each: true, message: 'attribute must not be empty' })
26-
@IsNotEmpty({ message: 'please provide valid attributes' })
22+
@ArrayNotEmpty({ message: 'please provide at least one attribute' })
23+
@IsString({ each: true, message: 'each attribute must be a string' })
24+
@IsNotEmpty({ each: true, message: 'attribute must not be empty' })
2725
attributes: string[];
2826

2927
@ApiProperty()

apps/api-gateway/src/dtos/issue-credential-offer.dto .ts

Lines changed: 0 additions & 64 deletions
This file was deleted.

apps/api-gateway/src/helper-files/file-operation.helper.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
import { promisify } from 'util';
22
import * as fs from 'fs';
33

4-
export const createFile = async (path: string, fileName: string, data: string): Promise<void> => {
5-
// eslint-disable-next-line @typescript-eslint/no-use-before-define
6-
if (!checkIfFileOrDirectoryExists(path)) {
7-
fs.mkdirSync(path, { recursive: true });
4+
export const checkIfFileOrDirectoryExists = (path: string): boolean => fs.existsSync(path);
5+
6+
const writeFile = promisify(fs.writeFile);
7+
const mkdir = promisify(fs.mkdir);
8+
9+
export const createFile = async (dirPath: string, fileName: string, data: string): Promise<void> => {
10+
if (!checkIfFileOrDirectoryExists(dirPath)) {
11+
await mkdir(dirPath, { recursive: true });
812
}
9-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
10-
const writeFile = promisify(fs.writeFile);
11-
return fs.writeFileSync(`${path}/${fileName}`, data, 'utf8');
13+
await writeFile(`${dirPath}/${fileName}`, data, 'utf8');
1214
};
1315

14-
export const checkIfFileOrDirectoryExists = (path: string): boolean => fs.existsSync(path);
15-
1616
export const getFile = async (path: string, encoding: BufferEncoding): Promise<string | Buffer> => {
1717
const readFile = promisify(fs.readFile);
1818

apps/api-gateway/src/issuance/issuance.service.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
/* eslint-disable camelcase */
2-
/* eslint-disable @typescript-eslint/explicit-function-return-type */
3-
// TODO: Remove this
41
import { Injectable, Inject } from '@nestjs/common';
52
import { BaseService } from 'libs/service/base.service';
63
import { IUserRequest } from '@credebl/user-request/user-request.interface';

libs/context/src/contextInterceptorModule.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ import NestjsClsContextStorageService from './nestjsClsContextStorageService';
1515

1616
generateId: true,
1717
idGenerator: (context: ExecutionContext) => {
18+
const logger = new Logger('ContextInterceptorModule');
1819
try {
19-
const logger = new Logger('ContextInterceptorModule');
2020
const rpcContext = context.switchToRpc().getContext();
2121
const headers = rpcContext.getHeaders() ?? {};
2222
const contextId = headers.get?.('contextId');
@@ -34,7 +34,8 @@ import NestjsClsContextStorageService from './nestjsClsContextStorageService';
3434
}
3535
} catch (error) {
3636
// eslint-disable-next-line no-console
37-
console.log('[idGenerator] Error in idGenerator: ', error);
37+
logger.error('[idGenerator] Error in idGenerator, generating fallback UUID', error);
38+
return uuid();
3839
}
3940
}
4041
}

libs/context/src/contextModule.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { ClsModule } from 'nestjs-cls';
44

55
import { ContextStorageServiceKey } from './contextStorageService.interface';
66
import NestjsClsContextStorageService from './nestjsClsContextStorageService';
7+
import { Request } from 'express';
78

89
@Global()
910
@Module({

libs/logger/src/logging.interceptor.ts

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,6 @@ import Logger, { LoggerKey } from './logger.interface';
77
import { ClsService } from 'nestjs-cls';
88
import { v4 } from 'uuid';
99

10-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
11-
const isNullUndefinedOrEmpty = (obj: any): boolean =>
12-
null === obj || obj === undefined || ('object' === typeof obj && 0 === Object.keys(obj).length);
13-
1410
@Injectable()
1511
export class LoggingInterceptor implements NestInterceptor {
1612
constructor(
@@ -24,18 +20,18 @@ export class LoggingInterceptor implements NestInterceptor {
2420
return this.clsService.run(() => {
2521
this.logger.info('In LoggingInterceptor configuration');
2622
const rpcContext = context.switchToRpc().getContext();
27-
const headers = rpcContext.getHeaders();
23+
const headers = rpcContext.getHeaders?.() ?? rpcContext.getHeaders;
24+
const contextIdFromHeader = headers && 'function' === typeof headers.get ? headers.get('contextId') : undefined;
2825

29-
if (!isNullUndefinedOrEmpty(headers)) {
30-
this.logger.debug('We found context Id in header of logger Interceptor', headers.get('contextId'));
31-
this.contextStorageService.setContextId(headers.get('contextId'));
26+
if (contextIdFromHeader) {
27+
this.logger.debug('We found context Id in header of logger Interceptor', contextIdFromHeader);
28+
this.setupContextId(contextIdFromHeader);
3229
} else {
3330
const newContextId = v4();
34-
this.logger.debug('Not found context Id in header of logger Interceptor, generating a new one: ', newContextId);
35-
this.contextStorageService.set('x-correlation-id', newContextId);
36-
this.contextStorageService.set('contextId', newContextId);
37-
this.contextStorageService.setContextId(newContextId);
31+
this.logger.debug('Not found context Id in header of logger Interceptor, generating a new one:', newContextId);
32+
this.setupContextId(newContextId);
3833
}
34+
3935
return next.handle().pipe(
4036
catchError((err) => {
4137
this.logger.error('[intercept] Error in LoggingInterceptor', err);
@@ -44,4 +40,10 @@ export class LoggingInterceptor implements NestInterceptor {
4440
);
4541
});
4642
}
43+
44+
private setupContextId(contextIdFromHeader: string | undefined): void {
45+
this.contextStorageService.set('x-correlation-id', contextIdFromHeader);
46+
this.contextStorageService.set('contextId', contextIdFromHeader);
47+
this.contextStorageService.setContextId(contextIdFromHeader);
48+
}
4749
}

0 commit comments

Comments
 (0)