Skip to content
Snippets Groups Projects
Commit 7a7c64c2 authored by Berend Sliedrecht's avatar Berend Sliedrecht
Browse files

cleanup to remove nats client and swagger


Signed-off-by: default avatarBerend Sliedrecht <sliedrecht@berend.io>
parent d934bcf1
No related branches found
No related tags found
2 merge requests!9feat(ssi): Establish a trusted connection with yourself,!8Project house-keeping, refactoring and reorganizing
Showing
with 6 additions and 3986 deletions
...@@ -29,7 +29,6 @@ import { ...@@ -29,7 +29,6 @@ import {
IndyVdrPoolConfig, IndyVdrPoolConfig,
IndyVdrSovDidResolver, IndyVdrSovDidResolver,
} from '@aries-framework/indy-vdr'; } from '@aries-framework/indy-vdr';
import { subscribe } from './utils/listener.js';
import { import {
LedgerIds, LedgerIds,
ledgerNamespaces, ledgerNamespaces,
...@@ -37,8 +36,7 @@ import { ...@@ -37,8 +36,7 @@ import {
} from './utils/ledgerConfig.js'; } from './utils/ledgerConfig.js';
import { AgentLogger } from './utils/logger.js'; import { AgentLogger } from './utils/logger.js';
import { registerPublicDids } from './ledger/register.js'; import { registerPublicDids } from './ledger/register.js';
import { NatsClientService } from '../client/nats.client.js'; import { logger } from '../globalUtils/logger.js';
import logger from '../globalUtils/logger.js';
export type AppAgent = Agent<AgentService['modules']>; export type AppAgent = Agent<AgentService['modules']>;
...@@ -188,5 +186,3 @@ export class AgentService { ...@@ -188,5 +186,3 @@ export class AgentService {
await this.agent.shutdown(); await this.agent.shutdown();
} }
} }
export default AgentService;
import { ConnectionRecord } from '@aries-framework/core'; import { ConnectionRecord } from '@aries-framework/core';
import { Injectable } from '@nestjs/common'; import { Injectable } from '@nestjs/common';
import AgentService, { AppAgent } from '../agent.service.js'; import { AgentService, AppAgent } from '../agent.service.js';
@Injectable() @Injectable()
export class ConnectionService { export class ConnectionService {
......
import logger from '../../globalUtils/logger.js'; import { logger } from '../../globalUtils/logger.js';
import axios from 'axios'; import axios from 'axios';
import { logAxiosError } from '../utils/helperFunctions.js'; import { logAxiosError } from '../utils/helperFunctions.js';
import { LedgerIds, ledgerNamespaces, NYM_URL } from '../utils/ledgerConfig.js'; import { LedgerIds, ledgerNamespaces, NYM_URL } from '../utils/ledgerConfig.js';
...@@ -57,5 +57,3 @@ export const registerPublicDids = async ({ ...@@ -57,5 +57,3 @@ export const registerPublicDids = async ({
} }
return responses; return responses;
}; };
export default registerPublicDids;
import { AxiosError } from 'axios'; import { AxiosError } from 'axios';
import logger from '../../globalUtils/logger.js'; import { logger } from '../../globalUtils/logger.js';
export function logAxiosError(err: AxiosError) { export function logAxiosError(err: AxiosError) {
if (err.response) { if (err.response) {
...@@ -15,7 +15,3 @@ export function logAxiosError(err: AxiosError) { ...@@ -15,7 +15,3 @@ export function logAxiosError(err: AxiosError) {
logger.error('Request error: ', err); logger.error('Request error: ', err);
} }
} }
export default {
logAxiosError,
};
...@@ -31,7 +31,3 @@ export const ledgerNamespaces = { ...@@ -31,7 +31,3 @@ export const ledgerNamespaces = {
BCOVRIN_TEST: 'bcovrin:test', BCOVRIN_TEST: 'bcovrin:test',
GREEN_LIGHT: 'bcovrin:greenlight', GREEN_LIGHT: 'bcovrin:greenlight',
}; };
export default {
LEDGER_GENESIS,
};
import { subscribe } from './listener.js';
describe('listener', () => {
it('should subscribe agent to available events', async () => {
const agent = {
events: {
on: (eventName: string, cb: () => void) => {},
},
};
const natsClient = {
publish: () => {},
};
const spyPublish = jest.spyOn(natsClient, 'publish');
let lastCb = null;
const spy = jest
.spyOn(agent.events, 'on')
.mockImplementation((eventName: string, cb: () => void) => {
lastCb = cb;
});
// @ts-ignore
subscribe(agent, natsClient);
expect(spy).toHaveBeenCalled();
expect(spy).toHaveBeenCalledTimes(7);
spy.mockRestore();
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
lastCb({ payload: 'payload' });
expect(spyPublish).toHaveBeenCalled();
expect(spyPublish).toHaveBeenCalledTimes(1);
});
});
import { Agent } from '@aries-framework/core';
import logger from '../../globalUtils/logger.js';
import { NatsClientService } from '../../client/nats.client.js';
import { listenerConfig } from './listenerConfig.js';
/**
* Subscribes to events on nats
*
* @param agent - the agent that has been initialized on startup
* @param natsClient - the client that specifies how events are published
*/
export const subscribe = (agent: Agent, natsClient: NatsClientService) => {
for (let i = 0; i < listenerConfig.length; i += 1) {
agent.events.on(listenerConfig[i], ({ payload }) => {
logger.info(
`${listenerConfig[i]} called. Payload: ${JSON.stringify(payload)}`,
);
natsClient.publish(listenerConfig[i], payload);
});
}
};
export default {
subscribe,
};
import {
BasicMessageEventTypes,
ConnectionEventTypes,
CredentialEventTypes,
ProofEventTypes,
RoutingEventTypes,
TransportEventTypes,
} from '@aries-framework/core';
export const listenerConfig = [
BasicMessageEventTypes.BasicMessageStateChanged,
ConnectionEventTypes.ConnectionStateChanged,
CredentialEventTypes.CredentialStateChanged,
ProofEventTypes.ProofStateChanged,
RoutingEventTypes.MediationStateChanged,
RoutingEventTypes.RecipientKeylistUpdated,
TransportEventTypes.OutboundWebSocketClosedEvent,
];
export default {
listenerConfig,
};
import { BaseLogger, LogLevel } from '@aries-framework/core'; import { BaseLogger, LogLevel } from '@aries-framework/core';
import logger from '../../globalUtils/logger.js'; import { logger } from '../../globalUtils/logger.js';
export class AgentLogger extends BaseLogger { export class AgentLogger extends BaseLogger {
public test( public test(
...@@ -58,5 +58,3 @@ export class AgentLogger extends BaseLogger { ...@@ -58,5 +58,3 @@ export class AgentLogger extends BaseLogger {
logger.error(message, data); logger.error(message, data);
} }
} }
export default AgentLogger;
import { Inject, Injectable } from '@nestjs/common';
import { ClientProxy } from '@nestjs/microservices';
import { NATSServices } from '../common/constants.js';
import logger from '../globalUtils/logger.js';
@Injectable()
export class NatsClientService {
constructor(@Inject(NATSServices.SERVICE_NAME) private client: ClientProxy) {}
/**
* Publishes events on nats
* Generates the event as an object with 'endpoint' key
* that specifies the ServiceName/eventName.
*
* @param eventName - the event name
* @param data - the data to be passed as payload of the event
*/
publish<D = unknown>(eventName: string, data: D) {
logger.info(
`Publish nats event: ${NATSServices.SERVICE_NAME}/${eventName}`,
);
const event = {
endpoint: `${NATSServices.SERVICE_NAME}/${eventName}`,
};
this.client.emit(event, data);
}
}
export default { NatsClientService };
import winston, { Logger } from 'winston'; import winston, { Logger } from 'winston';
import ecsFormat from '@elastic/ecs-winston-format'; import ecsFormat from '@elastic/ecs-winston-format';
const logger: Logger = winston.createLogger({ export const logger: Logger = winston.createLogger({
format: ecsFormat({ convertReqRes: true }), format: ecsFormat({ convertReqRes: true }),
transports: [new winston.transports.Console()], transports: [new winston.transports.Console()],
}); });
...@@ -9,5 +9,3 @@ const logger: Logger = winston.createLogger({ ...@@ -9,5 +9,3 @@ const logger: Logger = winston.createLogger({
logger.on('error', (error: Error) => { logger.on('error', (error: Error) => {
console.error('Error in logger caught', error); console.error('Error in logger caught', error);
}); });
export default logger;
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';
import { INestApplication } from '@nestjs/common';
/**
* Setup for swagger endpoint documentation
*
*
* @param app - Nest.js internal config object
*/
export default function swaggerSetup(app: INestApplication): void {
const swaggerConfig = new DocumentBuilder()
.setTitle('Gaia-x SSI Abstraction service')
.setDescription('API documentation for GAIA-X SSI Abstraction service')
.setVersion('1.0')
.build();
const document = SwaggerModule.createDocument(app, swaggerConfig);
SwaggerModule.setup('/swagger', app, document);
}
...@@ -36,5 +36,3 @@ export class AgentMid implements NestMiddleware { ...@@ -36,5 +36,3 @@ export class AgentMid implements NestMiddleware {
next(); next();
} }
} }
export default { AgentMid };
This diff is collapsed.
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