mirror of
https://github.com/dadosfera/maestro.git
synced 2026-11-01 10:29:08 +00:00
REFACTOR: inputs inside its own module
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
|
||||
import { Info } from 'src/clients/inputs/interfaces';
|
||||
import { Method } from 'axios';
|
||||
import { Info } from 'protospack/dist/lib/interfaces';
|
||||
|
||||
export class InputModel {
|
||||
category: string;
|
||||
@@ -13,15 +12,6 @@ export class InputModel {
|
||||
oauth_code: string;
|
||||
start_date: string;
|
||||
};
|
||||
options?: {
|
||||
oauth?: {
|
||||
get_tokens_url: string;
|
||||
get_tokens_method?: Method;
|
||||
get_tokens_url_params: string;
|
||||
get_tokens_set_response: Record<string, string>;
|
||||
content_type: string;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
class GoogleAnalyticsClientSecrets {
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
import { credentials } from '@grpc/grpc-js';
|
||||
import {
|
||||
ClientProviderOptions,
|
||||
GrpcOptions,
|
||||
Transport,
|
||||
} from '@nestjs/microservices';
|
||||
import { InputPackages, InputProtoFilePath } from 'protospack';
|
||||
|
||||
export class InputsGrpcClient {
|
||||
private config: GrpcOptions = {
|
||||
transport: Transport.GRPC,
|
||||
options: {
|
||||
url: process.env.INFACTORY_URL,
|
||||
package: InputPackages,
|
||||
credentials: process.env.LOCAL_ENV ? undefined : credentials.createSsl(),
|
||||
protoPath: InputProtoFilePath,
|
||||
loader: {
|
||||
enums: String,
|
||||
objects: true,
|
||||
arrays: true,
|
||||
},
|
||||
},
|
||||
};
|
||||
providerOptions: ClientProviderOptions = {
|
||||
name: 'InputsGrpcClient',
|
||||
...this.config,
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { ClientsModule } from '@nestjs/microservices';
|
||||
import { InputsGrpcClient } from './inputs-client.config';
|
||||
import { InputsController } from './inputs.controller';
|
||||
import { InputsService } from './inputs.service';
|
||||
import { DadosferaLogger } from '@dadosfera/dadosfera-logs';
|
||||
import { InputsClientService } from 'src/clients/inputs/client.service';
|
||||
|
||||
const client = new InputsGrpcClient();
|
||||
|
||||
@Module({
|
||||
controllers: [InputsController],
|
||||
providers: [InputsService, InputsClientService, DadosferaLogger],
|
||||
imports: [ClientsModule.register([client.providerOptions])],
|
||||
exports: [InputsService],
|
||||
})
|
||||
export class InputsModule {}
|
||||
@@ -3,7 +3,8 @@ import { Timeout } from '@nestjs/schedule';
|
||||
import { DecodeGrpcStruct } from 'protospack';
|
||||
import CronParser, { CronExpression } from 'cron-parser';
|
||||
import { InputsClientService } from 'src/clients/inputs/client.service';
|
||||
import { IIdRequest, Info } from 'src/clients/inputs/interfaces';
|
||||
import { IIdRequest } from 'src/clients/inputs/interfaces';
|
||||
import { Info } from 'protospack/dist/lib/interfaces';
|
||||
|
||||
@Injectable()
|
||||
export class InputsService {
|
||||
|
||||
Reference in New Issue
Block a user