From 262ece8bf06f0b74d814157b3cfef952d5babeaf Mon Sep 17 00:00:00 2001 From: Valentin Zickner Date: Sun, 8 Aug 2021 21:14:15 +0200 Subject: [PATCH] introduce DataGatheringModule --- apps/api/src/app/account/account.module.ts | 25 +++++++------------ apps/api/src/app/admin/admin.module.ts | 21 ++++++++-------- apps/api/src/app/app.module.ts | 4 ++- apps/api/src/app/export/export.module.ts | 7 +++--- apps/api/src/app/import/import.module.ts | 5 ++-- apps/api/src/app/order/order.module.ts | 12 +++------ .../api/src/app/portfolio/portfolio.module.ts | 6 ++--- .../api/src/services/data-gathering.module.ts | 12 +++++++++ 8 files changed, 45 insertions(+), 47 deletions(-) create mode 100644 apps/api/src/services/data-gathering.module.ts diff --git a/apps/api/src/app/account/account.module.ts b/apps/api/src/app/account/account.module.ts index 9c9768911..c5947bc71 100644 --- a/apps/api/src/app/account/account.module.ts +++ b/apps/api/src/app/account/account.module.ts @@ -1,29 +1,22 @@ -import { ConfigurationService } from '@ghostfolio/api/services/configuration.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; -import { GhostfolioScraperApiService } from '@ghostfolio/api/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service'; -import { RakutenRapidApiService } from '@ghostfolio/api/services/data-provider/rakuten-rapid-api/rakuten-rapid-api.service'; -import { YahooFinanceService } from '@ghostfolio/api/services/data-provider/yahoo-finance/yahoo-finance.service'; import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data.service'; import { ImpersonationService } from '@ghostfolio/api/services/impersonation.service'; -import { PrismaService } from '@ghostfolio/api/services/prisma.service'; import { Module } from '@nestjs/common'; import { RedisCacheModule } from '../redis-cache/redis-cache.module'; import { AccountController } from './account.controller'; import { AccountService } from './account.service'; +import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; +import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; @Module({ - imports: [RedisCacheModule, DataProviderModule], + imports: [ + ConfigurationModule, + RedisCacheModule, + DataProviderModule, + PrismaModule + ], controllers: [AccountController], - providers: [ - AccountService, - ConfigurationService, - ExchangeRateDataService, - GhostfolioScraperApiService, - ImpersonationService, - PrismaService, - RakutenRapidApiService, - YahooFinanceService - ] + providers: [AccountService, ExchangeRateDataService, ImpersonationService] }) export class AccountModule {} diff --git a/apps/api/src/app/admin/admin.module.ts b/apps/api/src/app/admin/admin.module.ts index a7e453128..ef14722e8 100644 --- a/apps/api/src/app/admin/admin.module.ts +++ b/apps/api/src/app/admin/admin.module.ts @@ -1,22 +1,21 @@ -import { ConfigurationService } from '@ghostfolio/api/services/configuration.service'; -import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data.service'; -import { PrismaService } from '@ghostfolio/api/services/prisma.service'; import { Module } from '@nestjs/common'; import { AdminController } from './admin.controller'; import { AdminService } from './admin.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; +import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; +import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; @Module({ - imports: [DataProviderModule], + imports: [ + ConfigurationModule, + DataProviderModule, + DataGatheringModule, + PrismaModule + ], controllers: [AdminController], - providers: [ - AdminService, - ConfigurationService, - DataGatheringService, - ExchangeRateDataService, - PrismaService - ] + providers: [AdminService, ExchangeRateDataService] }) export class AdminModule {} diff --git a/apps/api/src/app/app.module.ts b/apps/api/src/app/app.module.ts index f71a7c222..7e57df9d7 100644 --- a/apps/api/src/app/app.module.ts +++ b/apps/api/src/app/app.module.ts @@ -31,6 +31,7 @@ import { UserModule } from './user/user.module'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; @Module({ imports: [ @@ -68,10 +69,11 @@ import { ConfigurationModule } from '@ghostfolio/api/services/configuration.modu SymbolModule, UserModule, DataProviderModule, + DataGatheringModule, PrismaModule, ConfigurationModule ], controllers: [AppController], - providers: [CronService, DataGatheringService, ExchangeRateDataService] + providers: [CronService, ExchangeRateDataService] }) export class AppModule {} diff --git a/apps/api/src/app/export/export.module.ts b/apps/api/src/app/export/export.module.ts index c84465998..2ed9da09f 100644 --- a/apps/api/src/app/export/export.module.ts +++ b/apps/api/src/app/export/export.module.ts @@ -1,8 +1,5 @@ import { CacheService } from '@ghostfolio/api/app/cache/cache.service'; import { RedisCacheModule } from '@ghostfolio/api/app/redis-cache/redis-cache.module'; -import { ConfigurationService } from '@ghostfolio/api/services/configuration.service'; -import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; -import { PrismaService } from '@ghostfolio/api/services/prisma.service'; import { Module } from '@nestjs/common'; import { ExportController } from './export.controller'; @@ -10,15 +7,17 @@ import { ExportService } from './export.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; @Module({ imports: [ ConfigurationModule, RedisCacheModule, DataProviderModule, + DataGatheringModule, PrismaModule ], controllers: [ExportController], - providers: [CacheService, DataGatheringService, ExportService] + providers: [CacheService, ExportService] }) export class ExportModule {} diff --git a/apps/api/src/app/import/import.module.ts b/apps/api/src/app/import/import.module.ts index a1e217f32..68e459a6f 100644 --- a/apps/api/src/app/import/import.module.ts +++ b/apps/api/src/app/import/import.module.ts @@ -1,7 +1,6 @@ import { CacheService } from '@ghostfolio/api/app/cache/cache.service'; import { OrderService } from '@ghostfolio/api/app/order/order.service'; import { RedisCacheModule } from '@ghostfolio/api/app/redis-cache/redis-cache.module'; -import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; import { Module } from '@nestjs/common'; import { ImportController } from './import.controller'; @@ -9,15 +8,17 @@ import { ImportService } from './import.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; @Module({ imports: [ ConfigurationModule, + DataGatheringModule, RedisCacheModule, DataProviderModule, PrismaModule ], controllers: [ImportController], - providers: [CacheService, DataGatheringService, ImportService, OrderService] + providers: [CacheService, ImportService, OrderService] }) export class ImportModule {} diff --git a/apps/api/src/app/order/order.module.ts b/apps/api/src/app/order/order.module.ts index ffb1b8dc4..2d5d41182 100644 --- a/apps/api/src/app/order/order.module.ts +++ b/apps/api/src/app/order/order.module.ts @@ -1,7 +1,4 @@ -import { ConfigurationService } from '@ghostfolio/api/services/configuration.service'; -import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; import { ImpersonationService } from '@ghostfolio/api/services/impersonation.service'; -import { PrismaService } from '@ghostfolio/api/services/prisma.service'; import { Module } from '@nestjs/common'; import { CacheService } from '../cache/cache.service'; @@ -11,20 +8,17 @@ import { OrderService } from './order.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; @Module({ imports: [ ConfigurationModule, RedisCacheModule, DataProviderModule, + DataGatheringModule, PrismaModule ], controllers: [OrderController], - providers: [ - CacheService, - DataGatheringService, - ImpersonationService, - OrderService - ] + providers: [CacheService, ImpersonationService, OrderService] }) export class OrderModule {} diff --git a/apps/api/src/app/portfolio/portfolio.module.ts b/apps/api/src/app/portfolio/portfolio.module.ts index 11710c639..2aeae3777 100644 --- a/apps/api/src/app/portfolio/portfolio.module.ts +++ b/apps/api/src/app/portfolio/portfolio.module.ts @@ -5,8 +5,6 @@ import { MarketDataService } from '@ghostfolio/api/app/core/market-data.service' import { OrderService } from '@ghostfolio/api/app/order/order.service'; import { RedisCacheModule } from '@ghostfolio/api/app/redis-cache/redis-cache.module'; import { UserService } from '@ghostfolio/api/app/user/user.service'; -import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; -import { GhostfolioScraperApiService } from '@ghostfolio/api/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service'; import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data.service'; import { ImpersonationService } from '@ghostfolio/api/services/impersonation.service'; import { RulesService } from '@ghostfolio/api/services/rules.service'; @@ -18,12 +16,14 @@ import { PortfolioService } from './portfolio.service'; import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; +import { DataGatheringModule } from '@ghostfolio/api/services/data-gathering.module'; @Module({ imports: [ ConfigurationModule, RedisCacheModule, DataProviderModule, + DataGatheringModule, PrismaModule ], controllers: [PortfolioController], @@ -31,9 +31,7 @@ import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; AccountService, CacheService, CurrentRateService, - DataGatheringService, ExchangeRateDataService, - GhostfolioScraperApiService, ImpersonationService, MarketDataService, OrderService, diff --git a/apps/api/src/services/data-gathering.module.ts b/apps/api/src/services/data-gathering.module.ts new file mode 100644 index 000000000..4d6e3bbe9 --- /dev/null +++ b/apps/api/src/services/data-gathering.module.ts @@ -0,0 +1,12 @@ +import { Module } from '@nestjs/common'; +import { DataGatheringService } from '@ghostfolio/api/services/data-gathering.service'; +import { ConfigurationModule } from '@ghostfolio/api/services/configuration.module'; +import { DataProviderModule } from '@ghostfolio/api/services/data-provider/data-provider.module'; +import { PrismaModule } from '@ghostfolio/api/services/prisma.module'; + +@Module({ + imports: [ConfigurationModule, DataProviderModule, PrismaModule], + providers: [DataGatheringService], + exports: [DataGatheringService] +}) +export class DataGatheringModule {}