forked from Shared/esg
Introduce plate, chassis, and third-party car endpoints, a wall-clock inquiry deadline with transport-only retries, and ownership-safe no-match errors so another person's identity never leaks. Co-authored-by: Cursor <cursoragent@cursor.com>
51 lines
1.8 KiB
TypeScript
51 lines
1.8 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { MongooseModule } from '@nestjs/mongoose';
|
|
import { ProviderFactory } from './factory/provider.factory';
|
|
import { HamtaProvider } from './implementations/hamta.provider';
|
|
import { MoallemProvider } from './implementations/moallem.provider';
|
|
import { ParsianProvider } from './implementations/parsian.provider';
|
|
import { TejaratNouProvider } from './implementations/tejaratnou.provider';
|
|
import { AmitisProvider } from './implementations/amitis.provider';
|
|
import { ProviderOrchestratorService } from './strategy/provider-orchestrator.service';
|
|
import { GeneralToken, GeneralTokenSchema } from './schemas/general-token.schema';
|
|
import {
|
|
InquiryResultCache,
|
|
InquiryResultCacheSchema,
|
|
} from './schemas/inquiry-result-cache.schema';
|
|
import { CentInsurCarPolicyClient } from './shared/centinsur-car-policy.client';
|
|
import { CentInsurCarProviderSupport } from './shared/centinsur-car-provider.support';
|
|
import { GeneralTokenService } from './services/general-token.service';
|
|
import { InquiryResultCacheService } from './services/inquiry-result-cache.service';
|
|
|
|
/**
|
|
* Provider adapters, factory, and orchestration strategy.
|
|
*/
|
|
@Module({
|
|
imports: [
|
|
MongooseModule.forFeature([
|
|
{ name: GeneralToken.name, schema: GeneralTokenSchema },
|
|
{ name: InquiryResultCache.name, schema: InquiryResultCacheSchema },
|
|
]),
|
|
],
|
|
providers: [
|
|
HamtaProvider,
|
|
MoallemProvider,
|
|
ParsianProvider,
|
|
TejaratNouProvider,
|
|
AmitisProvider,
|
|
GeneralTokenService,
|
|
InquiryResultCacheService,
|
|
CentInsurCarPolicyClient,
|
|
CentInsurCarProviderSupport,
|
|
ProviderFactory,
|
|
ProviderOrchestratorService,
|
|
],
|
|
exports: [
|
|
ProviderFactory,
|
|
ProviderOrchestratorService,
|
|
GeneralTokenService,
|
|
InquiryResultCacheService,
|
|
],
|
|
})
|
|
export class ProvidersModule {}
|