chore: removed subscription handler related files

This commit is contained in:
ankitsridhar16
2023-01-20 14:57:47 +05:30
parent bc55af27a7
commit 0bed5cd99a
3 changed files with 0 additions and 54 deletions

View File

@@ -1,43 +0,0 @@
import { Injectable } from '@nestjs/common';
import { PubSubService } from './pubsub/pubsub.service';
import { PrimitiveTypes } from './types/primitive-types';
import { CustomModuleTypes } from './types/custom-module-types';
import { SubscriptionType } from './types/subscription-types';
// Custom generic type to indicate the type of module
type ModuleType = PrimitiveTypes | CustomModuleTypes;
@Injectable()
export class SubscriptionHandler {
constructor(private readonly pubsub: PubSubService) {}
/**
* Publishes a subscription using the pubsub module
* @param topic a string containing the "module_name/identifier"
* @param subscriptionType type of subscription being published
* @param moduleType type of the module model being called
* @returns a promise of type void
*/
async publish(
topic: string,
subscriptionType: SubscriptionType,
moduleType: ModuleType,
) {
switch (subscriptionType) {
case SubscriptionType.Created:
await this.pubsub.publish(`${topic}/created`, moduleType);
break;
case SubscriptionType.Updated:
await this.pubsub.publish(`${topic}/updated`, moduleType);
break;
case SubscriptionType.Deleted:
await this.pubsub.publish(`${topic}/deleted`, moduleType);
break;
case SubscriptionType.DeleteMany:
await this.pubsub.publish(`${topic}/delete_many`, moduleType);
break;
default:
break;
}
}
}

View File

@@ -1,4 +0,0 @@
import { UserEnvironment } from '../user-environment/user-environments.model';
import { User } from '../user/user.model';
export type CustomModuleTypes = UserEnvironment | User;

View File

@@ -1,7 +0,0 @@
// Contains constants for the subscription types we use in Subscription Handler
export enum SubscriptionType {
Created = 'created',
Updated = 'updated',
Deleted = 'deleted',
DeleteMany = 'delete_many',
}