diff --git a/apps/api/src/services/data-provider.service.ts b/apps/api/src/services/data-provider.service.ts index 18f7eb330..4a6936def 100644 --- a/apps/api/src/services/data-provider.service.ts +++ b/apps/api/src/services/data-provider.service.ts @@ -136,7 +136,7 @@ export class DataProviderService implements DataProviderInterface { }>[] = []; for (const { dataSource, symbol } of aDataGatheringItems) { const dataProvider = this.getDataProvider(dataSource); - if (dataProvider.hasHistoricalData(symbol)) { + if (dataProvider.canHandle(symbol)) { promises.push( dataProvider .getHistorical([symbol], undefined, from, to) diff --git a/apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts b/apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts index 9f58cb384..64e0b6c99 100644 --- a/apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts +++ b/apps/api/src/services/data-provider/alpha-vantage/alpha-vantage.service.ts @@ -24,7 +24,7 @@ export class AlphaVantageService implements DataProviderInterface { }); } - public hasHistoricalData(symbol: string) { + public canHandle(symbol: string) { return this.configurationService.get('ALPHA_VANTAGE_API_KEY'); } diff --git a/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts b/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts index d2dd4cdec..8b8e4290d 100644 --- a/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts +++ b/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts @@ -24,7 +24,7 @@ export class GhostfolioScraperApiService implements DataProviderInterface { public constructor(private prisma: PrismaService) {} - public hasHistoricalData(symbol: string) { + public canHandle(symbol: string) { return isGhostfolioScraperApiSymbol(symbol); } diff --git a/apps/api/src/services/data-provider/rakuten-rapid-api/rakuten-rapid-api.service.ts b/apps/api/src/services/data-provider/rakuten-rapid-api/rakuten-rapid-api.service.ts index 97088125a..7af775f8b 100644 --- a/apps/api/src/services/data-provider/rakuten-rapid-api/rakuten-rapid-api.service.ts +++ b/apps/api/src/services/data-provider/rakuten-rapid-api/rakuten-rapid-api.service.ts @@ -28,6 +28,13 @@ export class RakutenRapidApiService implements DataProviderInterface { private readonly configurationService: ConfigurationService ) {} + public canHandle(symbol: string) { + return ( + isRakutenRapidApiSymbol(symbol) && + this.configurationService.get('RAKUTEN_RAPID_API_KEY') + ); + } + public async get( aSymbols: string[] ): Promise<{ [symbol: string]: IDataProviderResponse }> { @@ -58,13 +65,6 @@ export class RakutenRapidApiService implements DataProviderInterface { return {}; } - public hasHistoricalData(symbol: string) { - return ( - isRakutenRapidApiSymbol(symbol) && - this.configurationService.get('RAKUTEN_RAPID_API_KEY') - ); - } - public async getHistorical( aSymbols: string[], aGranularity: Granularity = 'day', diff --git a/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts b/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts index 7716fe6e6..b22d7e7cf 100644 --- a/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts +++ b/apps/api/src/services/data-provider/yahoo-finance/yahoo-finance.service.ts @@ -28,6 +28,10 @@ export class YahooFinanceService implements DataProviderInterface { public constructor() {} + public canHandle(symbol: string) { + return true; + } + public async get( aSymbols: string[] ): Promise<{ [symbol: string]: IDataProviderResponse }> { @@ -90,10 +94,6 @@ export class YahooFinanceService implements DataProviderInterface { } } - public hasHistoricalData(symbol: string) { - return true; - } - public async getHistorical( aSymbols: string[], aGranularity: Granularity = 'day', diff --git a/apps/api/src/services/interfaces/data-provider.interface.ts b/apps/api/src/services/interfaces/data-provider.interface.ts index eae07d557..b36be4cb4 100644 --- a/apps/api/src/services/interfaces/data-provider.interface.ts +++ b/apps/api/src/services/interfaces/data-provider.interface.ts @@ -7,7 +7,7 @@ import { } from './interfaces'; export interface DataProviderInterface { - hasHistoricalData(symbol: string): boolean; + canHandle(symbol: string): boolean; get(aSymbols: string[]): Promise<{ [symbol: string]: IDataProviderResponse }>;