diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpBulkClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpBulkClient.java index a1fcd5c..f1f55ab 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpBulkClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpBulkClient.java @@ -1,5 +1,8 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpBalanceSheetStatement; @@ -37,20 +40,20 @@ public synchronized FmpCompanies[] companies(FmpPart part) { } public synchronized FmpBalanceSheetStatement[] balanceSheetStatements(FmpYear year, FmpPeriod period) { - fmpBulkBalanceSheetService.param("year", year); - fmpBulkBalanceSheetService.param("period", period); + fmpBulkBalanceSheetService.param(PARAM_YEAR, year); + fmpBulkBalanceSheetService.param(PARAM_PERIOD, period); return fmpBulkBalanceSheetService.download(); } public synchronized FmpCashFlowStatement[] cashFlowStatements(FmpYear year, FmpPeriod period) { - fmpBulkCashFlowService.param("year", year); - fmpBulkCashFlowService.param("period", period); + fmpBulkCashFlowService.param(PARAM_YEAR, year); + fmpBulkCashFlowService.param(PARAM_PERIOD, period); return fmpBulkCashFlowService.download(); } public synchronized FmpCashFlowStatementGrowth[] cashFlowStatementGrowth(FmpYear year, FmpPeriod period) { - fmpBulkCashFlowStatementGrowthService.param("year", year); - fmpBulkCashFlowStatementGrowthService.param("period", period); + fmpBulkCashFlowStatementGrowthService.param(PARAM_YEAR, year); + fmpBulkCashFlowStatementGrowthService.param(PARAM_PERIOD, period); return fmpBulkCashFlowStatementGrowthService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpCalendarClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpCalendarClient.java index ddef2ef..a2ad9ef 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpCalendarClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpCalendarClient.java @@ -1,5 +1,9 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpDividend; @@ -55,7 +59,7 @@ public synchronized FmpDividendsCalendar[] dividends() { } public synchronized FmpDividend[] dividends(FmpSymbol symbol) { - fmpDividendService.param("symbol", symbol); + fmpDividendService.param(PARAM_SYMBOL, symbol); return fmpDividendService.download(); } @@ -64,25 +68,25 @@ public synchronized FmpEarningsCalendar[] earnings() { } public synchronized FmpEarning[] earnings(FmpSymbol symbol) { - fmpEarningsService.param("symbol", symbol); + fmpEarningsService.param(PARAM_SYMBOL, symbol); return fmpEarningsService.download(); } public synchronized FmpIposCalendar[] ipos(Optional from, Optional to) { - fmpIposCalendarService.param("from", from); - fmpIposCalendarService.param("to", to); + fmpIposCalendarService.param(PARAM_FROM, from); + fmpIposCalendarService.param(PARAM_TO, to); return fmpIposCalendarService.download(); } public synchronized FmpIposDisclosure[] disclosures(Optional from, Optional to) { - fmpIposDisclosureService.param("from", from); - fmpIposDisclosureService.param("to", to); + fmpIposDisclosureService.param(PARAM_FROM, from); + fmpIposDisclosureService.param(PARAM_TO, to); return fmpIposDisclosureService.download(); } public synchronized FmpIposProspectus[] prospectus(Optional from, Optional to) { - fmpIposProspectusService.param("from", from); - fmpIposProspectusService.param("to", to); + fmpIposProspectusService.param(PARAM_FROM, from); + fmpIposProspectusService.param(PARAM_TO, to); return fmpIposProspectusService.download(); } @@ -91,7 +95,7 @@ public synchronized FmpSplitsCalendar[] splits() { } public synchronized FmpSplit[] splits(FmpSymbol symbol) { - fmpSplitService.param("symbol", symbol); + fmpSplitService.param(PARAM_SYMBOL, symbol); return fmpSplitService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpChartClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpChartClient.java index f38210b..c9d5493 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpChartClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpChartClient.java @@ -6,6 +6,9 @@ import static dev.sorn.fmp4j.types.FmpInterval.ONE_HOUR; import static dev.sorn.fmp4j.types.FmpInterval.ONE_MINUTE; import static dev.sorn.fmp4j.types.FmpInterval.THIRTY_MINUTE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -48,17 +51,17 @@ public FmpChartClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { public synchronized FmpHistoricalPriceEodLight[] historicalPriceEodLight( FmpSymbol symbol, Optional from, Optional to) { - fmpHistoricalPriceEodLightService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalPriceEodLightService.param("from", date)); - to.ifPresent(date -> fmpHistoricalPriceEodLightService.param("to", date)); + fmpHistoricalPriceEodLightService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalPriceEodLightService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalPriceEodLightService.param(PARAM_TO, date)); return fmpHistoricalPriceEodLightService.download(); } public synchronized FmpHistoricalPriceEodFull[] historicalPriceEodFull( FmpSymbol symbol, Optional from, Optional to) { - fmpHistoricalPriceEodFullService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalPriceEodFullService.param("from", date)); - to.ifPresent(date -> fmpHistoricalPriceEodFullService.param("to", date)); + fmpHistoricalPriceEodFullService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalPriceEodFullService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalPriceEodFullService.param(PARAM_TO, date)); return fmpHistoricalPriceEodFullService.download(); } @@ -66,39 +69,39 @@ public synchronized FmpHistoricalChart[] historical( FmpSymbol symbol, FmpInterval interval, Optional from, Optional to) { return switch (interval) { case ONE_MINUTE -> { - fmpHistoricalChartService1MinService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService1MinService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService1MinService.param("to", date)); + fmpHistoricalChartService1MinService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService1MinService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService1MinService.param(PARAM_TO, date)); yield fmpHistoricalChartService1MinService.download(); } case FIVE_MINUTE -> { - fmpHistoricalChartService5MinService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService5MinService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService5MinService.param("to", date)); + fmpHistoricalChartService5MinService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService5MinService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService5MinService.param(PARAM_TO, date)); yield fmpHistoricalChartService5MinService.download(); } case FIFTEEN_MINUTE -> { - fmpHistoricalChartService15MinService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService15MinService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService15MinService.param("to", date)); + fmpHistoricalChartService15MinService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService15MinService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService15MinService.param(PARAM_TO, date)); yield fmpHistoricalChartService15MinService.download(); } case THIRTY_MINUTE -> { - fmpHistoricalChartService30MinService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService30MinService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService30MinService.param("to", date)); + fmpHistoricalChartService30MinService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService30MinService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService30MinService.param(PARAM_TO, date)); yield fmpHistoricalChartService30MinService.download(); } case ONE_HOUR -> { - fmpHistoricalChartService1HourService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService1HourService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService1HourService.param("to", date)); + fmpHistoricalChartService1HourService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService1HourService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService1HourService.param(PARAM_TO, date)); yield fmpHistoricalChartService1HourService.download(); } case FOUR_HOUR -> { - fmpHistoricalChartService4HourService.param("symbol", symbol); - from.ifPresent(date -> fmpHistoricalChartService4HourService.param("from", date)); - to.ifPresent(date -> fmpHistoricalChartService4HourService.param("to", date)); + fmpHistoricalChartService4HourService.param(PARAM_SYMBOL, symbol); + from.ifPresent(date -> fmpHistoricalChartService4HourService.param(PARAM_FROM, date)); + to.ifPresent(date -> fmpHistoricalChartService4HourService.param(PARAM_TO, date)); yield fmpHistoricalChartService4HourService.download(); } }; diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpCompanyClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpCompanyClient.java index a90fdaa..3646d2c 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpCompanyClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpCompanyClient.java @@ -1,5 +1,7 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpCompany; @@ -17,7 +19,7 @@ public FmpCompanyClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { } public synchronized FmpCompany[] bySymbol(FmpSymbol symbol) { - fmpCompanyService.param("symbol", symbol); + fmpCompanyService.param(PARAM_SYMBOL, symbol); return fmpCompanyService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpEarningsClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpEarningsClient.java index f673394..66cfa66 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpEarningsClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpEarningsClient.java @@ -2,6 +2,11 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPage.page; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -40,21 +45,21 @@ public FmpEarningsClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { public synchronized FmpEarningsCallTranscript[] transcripts( FmpSymbol symbol, FmpYear year, FmpQuarter quarter, Optional limit) { - fmpEarningsCallTranscriptService.param("symbol", symbol); - fmpEarningsCallTranscriptService.param("year", year); - fmpEarningsCallTranscriptService.param("quarter", quarter); - limit.ifPresent(l -> fmpEarningsCallTranscriptService.param("limit", l)); + fmpEarningsCallTranscriptService.param(PARAM_SYMBOL, symbol); + fmpEarningsCallTranscriptService.param(PARAM_YEAR, year); + fmpEarningsCallTranscriptService.param(PARAM_QUARTER, quarter); + limit.ifPresent(l -> fmpEarningsCallTranscriptService.param(PARAM_LIMIT, l)); return fmpEarningsCallTranscriptService.download(); } public synchronized FmpEarningsCallTranscriptDate[] dates(FmpSymbol symbol) { - fmpEarningsCallTranscriptDatesService.param("symbol", symbol); + fmpEarningsCallTranscriptDatesService.param(PARAM_SYMBOL, symbol); return fmpEarningsCallTranscriptDatesService.download(); } public synchronized FmpEarningsCallTranscriptLatest[] latest(Optional limit, Optional page) { - fmpEarningsCallTranscriptLatestService.param("limit", limit.orElse(limit(100))); - fmpEarningsCallTranscriptLatestService.param("page", page.orElse(page(0))); + fmpEarningsCallTranscriptLatestService.param(PARAM_LIMIT, limit.orElse(limit(100))); + fmpEarningsCallTranscriptLatestService.param(PARAM_PAGE, page.orElse(page(0))); return fmpEarningsCallTranscriptLatestService.download(); } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpEconomicsClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpEconomicsClient.java index 11160bd..8125bba 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpEconomicsClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpEconomicsClient.java @@ -1,5 +1,8 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpTreasuryRate; @@ -15,8 +18,8 @@ public FmpEconomicsClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { } public synchronized FmpTreasuryRate[] treasuryRates(LocalDate from, LocalDate to) { - fmpTreasuryRatesService.param("from", from); - fmpTreasuryRatesService.param("to", to); + fmpTreasuryRatesService.param(PARAM_FROM, from); + fmpTreasuryRatesService.param(PARAM_TO, to); return fmpTreasuryRatesService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpEtfClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpEtfClient.java index 0a1f29a..84c05cb 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpEtfClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpEtfClient.java @@ -1,5 +1,7 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpEtfAssetExposure; @@ -32,27 +34,27 @@ public FmpEtfClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { } public synchronized FmpEtfAssetExposure[] assetExposure(FmpSymbol symbol) { - etfAssetExposureService.param("symbol", symbol); + etfAssetExposureService.param(PARAM_SYMBOL, symbol); return etfAssetExposureService.download(); } public synchronized FmpEtfCountryWeighting[] countryWeightings(FmpSymbol symbol) { - etfCountryWeightingService.param("symbol", symbol); + etfCountryWeightingService.param(PARAM_SYMBOL, symbol); return etfCountryWeightingService.download(); } public synchronized FmpEtfHolding[] holdings(FmpSymbol symbol) { - etfHoldingService.param("symbol", symbol); + etfHoldingService.param(PARAM_SYMBOL, symbol); return etfHoldingService.download(); } public synchronized FmpEtfInfo[] info(FmpSymbol symbol) { - etfInfoService.param("symbol", symbol); + etfInfoService.param(PARAM_SYMBOL, symbol); return etfInfoService.download(); } public synchronized FmpEtfSectorWeighting[] sectorWeightings(FmpSymbol symbol) { - etfSectorWeightingService.param("symbol", symbol); + etfSectorWeightingService.param(PARAM_SYMBOL, symbol); return etfSectorWeightingService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpNewsClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpNewsClient.java index 060b6ea..f3d7dc9 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpNewsClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpNewsClient.java @@ -2,6 +2,11 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPage.page; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.Optional.empty; import dev.sorn.fmp4j.cfg.FmpConfig; @@ -75,11 +80,11 @@ protected synchronized FmpNews[] news( Optional to, Optional page, Optional limit) { - service.param("symbols", symbols); - from.ifPresent(date -> service.param("from", date)); - to.ifPresent(date -> service.param("to", date)); - service.param("page", page.orElse(page(0))); - service.param("limit", limit.orElse(limit(100))); + service.param(PARAM_SYMBOLS, symbols); + from.ifPresent(date -> service.param(PARAM_FROM, date)); + to.ifPresent(date -> service.param(PARAM_TO, date)); + service.param(PARAM_PAGE, page.orElse(page(0))); + service.param(PARAM_LIMIT, limit.orElse(limit(100))); return service.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpQuoteClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpQuoteClient.java index 280d111..5bcc94c 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpQuoteClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpQuoteClient.java @@ -1,5 +1,7 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpFullQuote; @@ -23,17 +25,17 @@ public FmpQuoteClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { } public synchronized FmpFullQuote[] full(FmpSymbol symbol) { - quoteService.param("symbol", symbol); + quoteService.param(PARAM_SYMBOL, symbol); return quoteService.download(); } public synchronized FmpPartialQuote[] partial(FmpSymbol symbol) { - shortQuoteService.param("symbol", symbol); + shortQuoteService.param(PARAM_SYMBOL, symbol); return shortQuoteService.download(); } public synchronized FmpStockPriceChange[] priceChange(FmpSymbol symbol) { - stockPriceChangeService.param("symbol", symbol); + stockPriceChangeService.param(PARAM_SYMBOL, symbol); return stockPriceChangeService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpSearchClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpSearchClient.java index 4753607..cb2bcc5 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpSearchClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpSearchClient.java @@ -1,5 +1,7 @@ package dev.sorn.fmp4j.clients; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; + import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; import dev.sorn.fmp4j.models.FmpSearchByCik; @@ -65,7 +67,7 @@ public synchronized FmpSearchBySymbol[] bySymbol(FmpSymbol query) { } public synchronized FmpSearchPressRelease[] pressReleases(FmpSymbol symbol) { - fmpSearchPressReleasesService.param("symbols", symbol); + fmpSearchPressReleasesService.param(PARAM_SYMBOLS, symbol); return fmpSearchPressReleasesService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpSecFilingsSearchClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpSecFilingsSearchClient.java index ba6858a..a75273b 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpSecFilingsSearchClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpSecFilingsSearchClient.java @@ -2,6 +2,11 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPage.page; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,11 +30,11 @@ public FmpSecFilingsSearchClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClien public synchronized FmpSecFilingsSearchBySymbol[] bySymbol( FmpSymbol symbol, LocalDate from, LocalDate to, Optional page, Optional limit) { - fmpSecFilingsSearchBySymbol.param("symbol", symbol); - fmpSecFilingsSearchBySymbol.param("from", from); - fmpSecFilingsSearchBySymbol.param("to", to); - fmpSecFilingsSearchBySymbol.param("page", page.orElse(DEFAULT_PAGE)); - fmpSecFilingsSearchBySymbol.param("limit", limit.orElse(DEFAULT_LIMIT)); + fmpSecFilingsSearchBySymbol.param(PARAM_SYMBOL, symbol); + fmpSecFilingsSearchBySymbol.param(PARAM_FROM, from); + fmpSecFilingsSearchBySymbol.param(PARAM_TO, to); + fmpSecFilingsSearchBySymbol.param(PARAM_PAGE, page.orElse(DEFAULT_PAGE)); + fmpSecFilingsSearchBySymbol.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return fmpSecFilingsSearchBySymbol.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/clients/FmpStatementClient.java b/src/main/java/dev/sorn/fmp4j/clients/FmpStatementClient.java index faae724..d1008cf 100644 --- a/src/main/java/dev/sorn/fmp4j/clients/FmpStatementClient.java +++ b/src/main/java/dev/sorn/fmp4j/clients/FmpStatementClient.java @@ -3,6 +3,10 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPeriod.ANNUAL; import static dev.sorn.fmp4j.types.FmpStructure.FLAT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_STRUCTURE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -99,148 +103,148 @@ public FmpStatementClient(FmpConfig fmpConfig, FmpHttpClient fmpHttpClient) { public synchronized FmpIncomeStatement[] income( FmpSymbol symbol, Optional period, Optional limit) { - incomeStatementService.param("symbol", symbol); - incomeStatementService.param("period", period.orElse(ANNUAL)); - incomeStatementService.param("limit", limit.orElse(DEFAULT_LIMIT)); + incomeStatementService.param(PARAM_SYMBOL, symbol); + incomeStatementService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + incomeStatementService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return incomeStatementService.download(); } public synchronized FmpFinancialStatementAsReported[] incomeAsReported( FmpSymbol symbol, Optional period, Optional limit) { - incomeStatementAsReportedService.param("symbol", symbol); - incomeStatementAsReportedService.param("period", period.orElse(ANNUAL)); - incomeStatementAsReportedService.param("limit", limit.orElse(DEFAULT_LIMIT)); + incomeStatementAsReportedService.param(PARAM_SYMBOL, symbol); + incomeStatementAsReportedService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + incomeStatementAsReportedService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return incomeStatementAsReportedService.download(); } public synchronized FmpIncomeStatementGrowth[] incomeGrowth( FmpSymbol symbol, Optional period, Optional limit) { - incomeStatementGrowthService.param("symbol", symbol); - incomeStatementGrowthService.param("period", period.orElse(ANNUAL)); - incomeStatementGrowthService.param("limit", limit.orElse(DEFAULT_LIMIT)); + incomeStatementGrowthService.param(PARAM_SYMBOL, symbol); + incomeStatementGrowthService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + incomeStatementGrowthService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return incomeStatementGrowthService.download(); } public synchronized FmpIncomeStatement[] incomeTtm(FmpSymbol symbol, Optional limit) { - incomeStatementTtmService.param("symbol", symbol); - incomeStatementTtmService.param("limit", limit.orElse(DEFAULT_LIMIT)); + incomeStatementTtmService.param(PARAM_SYMBOL, symbol); + incomeStatementTtmService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return incomeStatementTtmService.download(); } public synchronized FmpBalanceSheetStatement[] balanceSheet( FmpSymbol symbol, Optional period, Optional limit) { - balanceSheetStatementService.param("symbol", symbol); - balanceSheetStatementService.param("period", period.orElse(ANNUAL)); - balanceSheetStatementService.param("limit", limit.orElse(DEFAULT_LIMIT)); + balanceSheetStatementService.param(PARAM_SYMBOL, symbol); + balanceSheetStatementService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + balanceSheetStatementService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return balanceSheetStatementService.download(); } public synchronized FmpFinancialStatementAsReported[] balanceSheetAsReported( FmpSymbol symbol, Optional period, Optional limit) { - balanceSheetStatementAsReportedService.param("symbol", symbol); - balanceSheetStatementAsReportedService.param("period", period.orElse(ANNUAL)); - balanceSheetStatementAsReportedService.param("limit", limit.orElse(DEFAULT_LIMIT)); + balanceSheetStatementAsReportedService.param(PARAM_SYMBOL, symbol); + balanceSheetStatementAsReportedService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + balanceSheetStatementAsReportedService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return balanceSheetStatementAsReportedService.download(); } public synchronized FmpBalanceSheetStatementGrowth[] balanceSheetGrowth( FmpSymbol symbol, Optional period, Optional limit) { - balanceSheetStatementGrowthService.param("symbol", symbol); - balanceSheetStatementGrowthService.param("period", period.orElse(ANNUAL)); - balanceSheetStatementGrowthService.param("limit", limit.orElse(DEFAULT_LIMIT)); + balanceSheetStatementGrowthService.param(PARAM_SYMBOL, symbol); + balanceSheetStatementGrowthService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + balanceSheetStatementGrowthService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return balanceSheetStatementGrowthService.download(); } public synchronized FmpBalanceSheetStatement[] balanceSheetTtm(FmpSymbol symbol, Optional limit) { - balanceSheetStatementTtmService.param("symbol", symbol); - balanceSheetStatementTtmService.param("limit", limit.orElse(DEFAULT_LIMIT)); + balanceSheetStatementTtmService.param(PARAM_SYMBOL, symbol); + balanceSheetStatementTtmService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return balanceSheetStatementTtmService.download(); } public synchronized FmpCashFlowStatement[] cashFlow( FmpSymbol symbol, Optional period, Optional limit) { - cashFlowStatementService.param("symbol", symbol); - cashFlowStatementService.param("period", period.orElse(ANNUAL)); - cashFlowStatementService.param("limit", limit.orElse(DEFAULT_LIMIT)); + cashFlowStatementService.param(PARAM_SYMBOL, symbol); + cashFlowStatementService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + cashFlowStatementService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return cashFlowStatementService.download(); } public synchronized FmpFinancialStatementAsReported[] cashFlowAsReported( FmpSymbol symbol, Optional period, Optional limit) { - cashFlowStatementAsReportedService.param("symbol", symbol); - cashFlowStatementAsReportedService.param("period", period.orElse(ANNUAL)); - cashFlowStatementAsReportedService.param("limit", limit.orElse(DEFAULT_LIMIT)); + cashFlowStatementAsReportedService.param(PARAM_SYMBOL, symbol); + cashFlowStatementAsReportedService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + cashFlowStatementAsReportedService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return cashFlowStatementAsReportedService.download(); } public synchronized FmpCashFlowStatementGrowth[] cashFlowGrowth( FmpSymbol symbol, Optional period, Optional limit) { - cashFlowStatementGrowthService.param("symbol", symbol); - cashFlowStatementGrowthService.param("period", period.orElse(ANNUAL)); - cashFlowStatementGrowthService.param("limit", limit.orElse(DEFAULT_LIMIT)); + cashFlowStatementGrowthService.param(PARAM_SYMBOL, symbol); + cashFlowStatementGrowthService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + cashFlowStatementGrowthService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return cashFlowStatementGrowthService.download(); } public synchronized FmpCashFlowStatement[] cashFlowTtm(FmpSymbol symbol, Optional limit) { - cashFlowStatementTtmService.param("symbol", symbol); - cashFlowStatementTtmService.param("limit", limit.orElse(DEFAULT_LIMIT)); + cashFlowStatementTtmService.param(PARAM_SYMBOL, symbol); + cashFlowStatementTtmService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return cashFlowStatementTtmService.download(); } public synchronized FmpFinancialGrowth[] financialGrowth( FmpSymbol symbol, Optional period, Optional limit) { - financialGrowthService.param("symbol", symbol); - financialGrowthService.param("period", period.orElse(ANNUAL)); - financialGrowthService.param("limit", limit.orElse(DEFAULT_LIMIT)); + financialGrowthService.param(PARAM_SYMBOL, symbol); + financialGrowthService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + financialGrowthService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return financialGrowthService.download(); } public synchronized FmpKeyMetric[] keyMetrics( FmpSymbol symbol, Optional period, Optional limit) { - keyMetricService.param("symbol", symbol); - keyMetricService.param("period", period.orElse(ANNUAL)); - keyMetricService.param("limit", limit.orElse(DEFAULT_LIMIT)); + keyMetricService.param(PARAM_SYMBOL, symbol); + keyMetricService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + keyMetricService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return keyMetricService.download(); } public synchronized FmpKeyMetricTtm[] keyMetricsTtm(FmpSymbol symbol) { - keyMetricTtmService.param("symbol", symbol); + keyMetricTtmService.param(PARAM_SYMBOL, symbol); return keyMetricTtmService.download(); } public synchronized FmpRatio[] ratios(FmpSymbol symbol, Optional period, Optional limit) { - ratioService.param("symbol", symbol); - ratioService.param("period", period.orElse(ANNUAL)); - ratioService.param("limit", limit.orElse(DEFAULT_LIMIT)); + ratioService.param(PARAM_SYMBOL, symbol); + ratioService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + ratioService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return ratioService.download(); } public synchronized FmpRatioTtm[] ratiosTtm(FmpSymbol symbol) { - ratioTtmService.param("symbol", symbol); + ratioTtmService.param(PARAM_SYMBOL, symbol); return ratioTtmService.download(); } public synchronized FmpEnterpriseValue[] enterpriseValues( FmpSymbol symbol, Optional period, Optional limit) { - enterpriseValuesService.param("symbol", symbol); - enterpriseValuesService.param("period", period.orElse(ANNUAL)); - enterpriseValuesService.param("limit", limit.orElse(DEFAULT_LIMIT)); + enterpriseValuesService.param(PARAM_SYMBOL, symbol); + enterpriseValuesService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + enterpriseValuesService.param(PARAM_LIMIT, limit.orElse(DEFAULT_LIMIT)); return enterpriseValuesService.download(); } public synchronized FmpRevenueGeographicSegmentation[] revenueGeographicSegmentations( FmpSymbol symbol, Optional period, Optional structure) { - revenueGeographicSegmentationService.param("symbol", symbol); - revenueGeographicSegmentationService.param("period", period.orElse(ANNUAL)); - revenueGeographicSegmentationService.param("structure", structure.orElse(FLAT)); + revenueGeographicSegmentationService.param(PARAM_SYMBOL, symbol); + revenueGeographicSegmentationService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + revenueGeographicSegmentationService.param(PARAM_STRUCTURE, structure.orElse(FLAT)); return revenueGeographicSegmentationService.download(); } public synchronized FmpRevenueProductSegmentation[] revenueProductSegmentations( FmpSymbol symbol, Optional period, Optional structure) { - revenueProductSegmentationService.param("symbol", symbol); - revenueProductSegmentationService.param("period", period.orElse(ANNUAL)); - revenueProductSegmentationService.param("structure", structure.orElse(FLAT)); + revenueProductSegmentationService.param(PARAM_SYMBOL, symbol); + revenueProductSegmentationService.param(PARAM_PERIOD, period.orElse(ANNUAL)); + revenueProductSegmentationService.param(PARAM_STRUCTURE, structure.orElse(FLAT)); return revenueProductSegmentationService.download(); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthService.java index 9ed02e0..acf7a79 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementService.java index 5a1fc27..87bb4ba 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmService.java index 888cb27..5719207 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,11 +23,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class); + return Map.of(PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementService.java index a96e2f5..28a9b14 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,7 +23,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("year", FmpYear.class, "period", FmpPeriod.class); + return Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthService.java index 94b054f..0ab4163 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,7 +23,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("year", FmpYear.class, "period", FmpPeriod.class); + return Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementService.java b/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementService.java index 1e7cd3b..b56b46a 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,7 +23,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("year", FmpYear.class, "period", FmpPeriod.class); + return Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthService.java b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthService.java index 242e6cd..6434bb9 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementService.java b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementService.java index 75576a2..9376b7f 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmService.java b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmService.java index 4c920fc..bffcc9e 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,11 +23,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class); + return Map.of(PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpCompanyService.java b/src/main/java/dev/sorn/fmp4j/services/FmpCompanyService.java index fda8ef6..d260c97 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpCompanyService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpCompanyService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpDividendService.java b/src/main/java/dev/sorn/fmp4j/services/FmpDividendService.java index 3021f6a..b1a6ec0 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpDividendService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpDividendService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEarningService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEarningService.java index 2beab3f..3a7de05 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEarningService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEarningService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesService.java index a943866..6cf20a7 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestService.java index 37e9958..38ff269 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -26,6 +28,6 @@ protected Map> requiredParams() { @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class, "page", FmpPage.class); + return Map.of(PARAM_LIMIT, FmpLimit.class, PARAM_PAGE, FmpPage.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptService.java index 879be62..b6ab976 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptService.java @@ -1,6 +1,10 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -23,11 +27,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class, "year", FmpYear.class, "quarter", FmpQuarter.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class, PARAM_YEAR, FmpYear.class, PARAM_QUARTER, FmpQuarter.class); } @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class); + return Map.of(PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesService.java index 1476b53..421f11b 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureService.java index f7eb925..1e478eb 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingService.java index 0188410..6bad24f 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEtfHoldingService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEtfHoldingService.java index b184c5c..ddb678d 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEtfHoldingService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEtfHoldingService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEtfInfoService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEtfInfoService.java index 5f8ccff..86609f6 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEtfInfoService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEtfInfoService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingService.java b/src/main/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingService.java index 1cbeea3..2894aec 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpFinancialGrowthService.java b/src/main/java/dev/sorn/fmp4j/services/FmpFinancialGrowthService.java index 82eb1c2..f874e4c 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpFinancialGrowthService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpFinancialGrowthService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class, "period", FmpPeriod.class); + return Map.of(PARAM_LIMIT, FmpLimit.class, PARAM_PERIOD, FmpPeriod.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedService.java b/src/main/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedService.java index eed362b..0f26c46 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,11 +28,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalChartService.java b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalChartService.java index 4da461b..8d02068 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalChartService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalChartService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,11 +28,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullService.java b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullService.java index 6fdf3be..0ccd5fc 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,11 +24,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightService.java b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightService.java index 2bb89a3..72294ed 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,11 +24,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthService.java index 966d6d7..0c014f7 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementService.java index 4d78863..75b40d1 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmService.java index f961b9b..94f5579 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,11 +23,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("limit", FmpLimit.class); + return Map.of(PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIposCalendarService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIposCalendarService.java index afe9fc2..2ee879f 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIposCalendarService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIposCalendarService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,6 +27,6 @@ protected Map> requiredParams() { @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIposDisclosureService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIposDisclosureService.java index a2630dd..c425c86 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIposDisclosureService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIposDisclosureService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,6 +27,6 @@ protected Map> requiredParams() { @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpIposProspectusService.java b/src/main/java/dev/sorn/fmp4j/services/FmpIposProspectusService.java index f4c82d6..b26fa4a 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpIposProspectusService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpIposProspectusService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -25,6 +27,6 @@ protected Map> requiredParams() { @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricService.java b/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricService.java index 8d4d444..308ebcd 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmService.java b/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmService.java index 65bc389..86bd349 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpNewsService.java b/src/main/java/dev/sorn/fmp4j/services/FmpNewsService.java index d284a80..57cbd2a 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpNewsService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpNewsService.java @@ -1,6 +1,11 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -26,11 +31,19 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbols", FmpSymbol.class); + return Map.of(PARAM_SYMBOLS, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class, "page", FmpPage.class, "limit", FmpLimit.class); + return Map.of( + PARAM_FROM, + LocalDate.class, + PARAM_TO, + LocalDate.class, + PARAM_PAGE, + FmpPage.class, + PARAM_LIMIT, + FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpPartialQuoteService.java b/src/main/java/dev/sorn/fmp4j/services/FmpPartialQuoteService.java index f1c9b02..4ba7c43 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpPartialQuoteService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpPartialQuoteService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpQuoteService.java b/src/main/java/dev/sorn/fmp4j/services/FmpQuoteService.java index 3bb6bae..b710159 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpQuoteService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpQuoteService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpRatioService.java b/src/main/java/dev/sorn/fmp4j/services/FmpRatioService.java index 740e3d7..2543b30 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpRatioService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpRatioService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "limit", FmpLimit.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpRatioTtmService.java b/src/main/java/dev/sorn/fmp4j/services/FmpRatioTtmService.java index e0ceae8..84d6740 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpRatioTtmService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpRatioTtmService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationService.java b/src/main/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationService.java index ff5aa32..c5b501c 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_STRUCTURE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "structure", FmpStructure.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_STRUCTURE, FmpStructure.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationService.java b/src/main/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationService.java index 9364c11..a625426 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationService.java @@ -1,6 +1,9 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_STRUCTURE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -22,11 +25,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("period", FmpPeriod.class, "structure", FmpStructure.class); + return Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_STRUCTURE, FmpStructure.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesService.java b/src/main/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesService.java index 8dac567..fb6a08d 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -21,7 +22,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbols", FmpSymbol.class); + return Map.of(PARAM_SYMBOLS, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolService.java b/src/main/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolService.java index fd5d254..5deabbb 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolService.java @@ -1,6 +1,11 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -23,11 +28,11 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class, "from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class, PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } @Override protected Map> optionalParams() { - return Map.of("page", FmpPage.class, "limit", FmpLimit.class); + return Map.of(PARAM_PAGE, FmpPage.class, PARAM_LIMIT, FmpLimit.class); } } diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpSplitService.java b/src/main/java/dev/sorn/fmp4j/services/FmpSplitService.java index 3d586fd..1bf7fc1 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpSplitService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpSplitService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpStockPriceChangeService.java b/src/main/java/dev/sorn/fmp4j/services/FmpStockPriceChangeService.java index ba420ed..dd5d0ad 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpStockPriceChangeService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpStockPriceChangeService.java @@ -1,6 +1,7 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +21,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/services/FmpTreasuryRatesService.java b/src/main/java/dev/sorn/fmp4j/services/FmpTreasuryRatesService.java index d751d85..2713cd2 100644 --- a/src/main/java/dev/sorn/fmp4j/services/FmpTreasuryRatesService.java +++ b/src/main/java/dev/sorn/fmp4j/services/FmpTreasuryRatesService.java @@ -1,6 +1,8 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.json.FmpJsonUtils.typeRef; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import dev.sorn.fmp4j.cfg.FmpConfig; import dev.sorn.fmp4j.http.FmpHttpClient; @@ -20,7 +22,7 @@ protected String relativeUrl() { @Override protected Map> requiredParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } @Override diff --git a/src/main/java/dev/sorn/fmp4j/utils/FmpParameters.java b/src/main/java/dev/sorn/fmp4j/utils/FmpParameters.java new file mode 100644 index 0000000..e1dfb0e --- /dev/null +++ b/src/main/java/dev/sorn/fmp4j/utils/FmpParameters.java @@ -0,0 +1,19 @@ +package dev.sorn.fmp4j.utils; + +public final class FmpParameters { + // Alphabetically sorted + public static final String PARAM_FROM = "from"; + public static final String PARAM_LIMIT = "limit"; + public static final String PARAM_PAGE = "page"; + public static final String PARAM_PERIOD = "period"; + public static final String PARAM_QUARTER = "quarter"; + public static final String PARAM_STRUCTURE = "structure"; + public static final String PARAM_SYMBOL = "symbol"; + public static final String PARAM_SYMBOLS = "symbols"; + public static final String PARAM_TO = "to"; + public static final String PARAM_YEAR = "year"; + + private FmpParameters() { + // prevent direct instantiation + } +} diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthServiceTest.java index ae23d1e..9ee9b72 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementGrowthServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,7 +52,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -58,7 +61,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/balance-sheet-statement-growth/?symbol=%s&period=%s&limit=%d.json", diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementServiceTest.java index ae4ec8b..d21408c 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,14 +52,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/balance-sheet-statement/?symbol=%s.json", symbol)) .statusCode(200) @@ -77,7 +80,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 3; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/balance-sheet-statement/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmServiceTest.java index 79069be..2554977 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBalanceSheetStatementTtmServiceTest.java @@ -3,6 +3,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -38,7 +40,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -47,7 +49,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_LIMIT, FmpLimit.class), params); } @Test @@ -55,7 +57,7 @@ void successful_download() { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/balance-sheet-statement-ttm/?symbol=%s&limit=%d.json", symbol, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementServiceTest.java index 4bf1625..7e89842 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBulkBalanceSheetStatementServiceTest.java @@ -4,6 +4,8 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpPeriod.period; import static dev.sorn.fmp4j.types.FmpYear.year; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +42,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("year", FmpYear.class, "period", FmpPeriod.class), params); + assertEquals(Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class), params); } @Test @@ -58,8 +60,8 @@ void successful_download_with_required_params(String periodString) { // given var year = year("2023"); var period = period(periodString); - service.param("year", year); - service.param("period", period); + service.param(PARAM_YEAR, year); + service.param(PARAM_PERIOD, period); httpStub.configureResponse() .body(testResource("stable/balance-sheet-statement-bulk/?year=%s&period=%s.csv", year, period)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthServiceTest.java index 4127ace..59f8536 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementGrowthServiceTest.java @@ -4,6 +4,9 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpPeriod.period; import static dev.sorn.fmp4j.types.FmpYear.year; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -37,7 +40,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("year", FmpYear.class, "period", FmpPeriod.class), params); + assertEquals(Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class), params); } @Test @@ -53,9 +56,9 @@ void optional_params() { void successful_download() { // given var year = year("2025"); - var period = period("quarter"); - service.param("year", year); - service.param("period", period); + var period = period(PARAM_QUARTER); + service.param(PARAM_YEAR, year); + service.param(PARAM_PERIOD, period); httpStub.configureResponse() .body(testResource("stable/cash-flow-statement-growth-bulk/?year=%s&period=%s.csv", year, period)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementServiceTest.java index 005d1e8..19b93e3 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpBulkCashFlowStatementServiceTest.java @@ -4,6 +4,8 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpPeriod.period; import static dev.sorn.fmp4j.types.FmpYear.year; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -39,7 +41,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("year", FmpYear.class, "period", FmpPeriod.class), params); + assertEquals(Map.of(PARAM_YEAR, FmpYear.class, PARAM_PERIOD, FmpPeriod.class), params); } @Test @@ -57,8 +59,8 @@ void successful_download_with_required_params(String periodString) { // given var year = year("2023"); var period = period(periodString); - service.param("year", year); - service.param("period", period); + service.param(PARAM_YEAR, year); + service.param(PARAM_PERIOD, period); httpStub.configureResponse() .body(testResource("stable/cash-flow-statement-bulk/?year=%s&period=%s.csv", year, period)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthServiceTest.java index 59cf5cb..302a700 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementGrowthServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,7 +52,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -58,7 +61,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/cash-flow-statement-growth/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementServiceTest.java index 2a4464d..2f56a93 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,14 +52,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/cash-flow-statement/?symbol=%s.json", symbol)) .statusCode(200) @@ -77,7 +80,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 3; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/cash-flow-statement/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmServiceTest.java index e23c901..d7701e7 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpCashFlowStatementTtmServiceTest.java @@ -3,6 +3,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -37,7 +39,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -46,7 +48,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_LIMIT, FmpLimit.class), params); } @Test @@ -54,7 +56,7 @@ void successful_download() { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/cash-flow-statement-ttm/?symbol=%s&limit=%d.json", symbol, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpCompanyServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpCompanyServiceTest.java index 63e657d..634e39c 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpCompanyServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpCompanyServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -35,7 +36,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -51,7 +52,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/profile/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpDividendServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpDividendServiceTest.java index b1c8e2a..d305d0f 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpDividendServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpDividendServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -37,7 +38,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -53,7 +54,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/dividends/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEarningServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEarningServiceTest.java index cb7cb4d..fd41806 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEarningServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEarningServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -37,7 +38,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -53,7 +54,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/earnings/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesServiceTest.java index 374446a..71d32ef 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptDatesServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -37,7 +38,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -53,7 +54,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/earning-call-transcript-dates/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestServiceTest.java index d4869a3..117a6d7 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptLatestServiceTest.java @@ -4,6 +4,8 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPage.page; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -48,7 +50,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("limit", FmpLimit.class, "page", FmpPage.class), params); + assertEquals(Map.of(PARAM_LIMIT, FmpLimit.class, PARAM_PAGE, FmpPage.class), params); } @Test @@ -56,8 +58,8 @@ void successful_download() { // given var page = page(0); var limit = limit(2); - service.param("page", page); - service.param("limit", limit); + service.param(PARAM_PAGE, page); + service.param(PARAM_LIMIT, limit); httpStub.configureResponse() .body(testResource("stable/earning-call-transcript-latest/?page=%s&limit=%s.json", page, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptServiceTest.java index d956ffa..a8c7996 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEarningsCallTranscriptServiceTest.java @@ -5,6 +5,10 @@ import static dev.sorn.fmp4j.types.FmpQuarter.quarter; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; import static dev.sorn.fmp4j.types.FmpYear.year; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_YEAR; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -42,7 +46,12 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class, "year", FmpYear.class, "quarter", FmpQuarter.class), params); + assertEquals( + Map.of( + PARAM_SYMBOL, FmpSymbol.class, + PARAM_YEAR, FmpYear.class, + PARAM_QUARTER, FmpQuarter.class), + params); } @Test @@ -51,7 +60,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_LIMIT, FmpLimit.class), params); } @Test @@ -60,9 +69,9 @@ void successful_download() { var symbol = symbol("AAPL"); var year = year(2020); var quarter = quarter(3); - service.param("symbol", symbol); - service.param("year", year); - service.param("quarter", quarter); + service.param(PARAM_SYMBOL, symbol); + service.param(PARAM_YEAR, year); + service.param(PARAM_QUARTER, quarter); httpStub.configureResponse() .body(testResource( "stable/earning-call-transcript/?symbol=%s&year=%s&quarter=%s.json", symbol, year, quarter)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesServiceTest.java index 40e523b..2d366ed 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEnterpriseValuesServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -41,7 +44,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -50,7 +53,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -62,7 +65,7 @@ void successful_download(String period) { // given var symbol = symbol("AAPL"); var limit = 3; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/enterprise-values/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureServiceTest.java index 33a24b7..5021902 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEtfAssetExposureServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -36,7 +37,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -52,7 +53,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("NVO"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/etf/asset-exposure/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingServiceTest.java index 2558d3c..30beec0 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEtfCountryWeightingServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -36,7 +37,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -52,7 +53,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("SPY"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/etf/country-weightings/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEtfHoldingServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEtfHoldingServiceTest.java index 61c7770..2239e5d 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEtfHoldingServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEtfHoldingServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -37,7 +38,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -53,7 +54,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("SCHD"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/etf/holdings/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEtfInfoServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEtfInfoServiceTest.java index 2350a64..2ae9949 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEtfInfoServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEtfInfoServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -35,7 +36,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -51,7 +52,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("SPY"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/etf/info/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingServiceTest.java index 14980ef..11937d1 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpEtfSectorWeightingServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -36,7 +37,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -52,7 +53,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("SPY"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/etf/sector-weightings/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpFinancialGrowthServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpFinancialGrowthServiceTest.java index 60253b2..8d569b4 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpFinancialGrowthServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpFinancialGrowthServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -41,7 +44,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -50,7 +53,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -59,7 +62,7 @@ void successful_download(String period) { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/financial-growth/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedServiceTest.java index eef78ba..dc44ce2 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpFinancialStatementAsReportedServiceTest.java @@ -2,6 +2,10 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -42,7 +46,7 @@ void required_params(String type) { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @ParameterizedTest @@ -55,7 +59,7 @@ void optional_params(String type) { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -64,7 +68,7 @@ void successful_download(String type, FmpSymbol symbol, String period) { // given var service = new FmpFinancialStatementAsReportedService(config, client, type); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/%s-statement-as-reported/?symbol=%s&period=%s&limit=%d.json", @@ -83,7 +87,7 @@ void successful_download(String type, FmpSymbol symbol, String period) { static Stream reportCompanyProvider() { var reports = List.of("income", "balance-sheet", "cash-flow"); var symbols = List.of("KO", "O"); - var periods = List.of("annual", "quarter"); + var periods = List.of("annual", PARAM_QUARTER); return reports.stream().flatMap(report -> symbols.stream() .flatMap(company -> periods.stream().map(period -> Arguments.of(report, company, period)))); } diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpFullQuoteServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpFullQuoteServiceTest.java index 4fcf8e2..a792c0f 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpFullQuoteServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpFullQuoteServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.lang.String.format; import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -39,7 +40,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -55,7 +56,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/quote/?symbol=AAPL.json")) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalChartServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalChartServiceTest.java index d4bd55e..32c27e7 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalChartServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalChartServiceTest.java @@ -4,6 +4,9 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpInterval.interval; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -47,7 +50,7 @@ void required_params(String interval) { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @ParameterizedTest @@ -63,7 +66,7 @@ void optional_params(String interval) { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @ParameterizedTest @@ -77,9 +80,9 @@ void successful_download(String interval) { var symbol = symbol("AAPL"); var from = LocalDate.parse("2024-01-01"); var to = LocalDate.parse("2024-01-02"); - service.param("symbol", symbol); - service.param("from", from); - service.param("to", to); + service.param(PARAM_SYMBOL, symbol); + service.param(PARAM_FROM, from); + service.param(PARAM_TO, to); httpStub.configureResponse() .body(testResource( "stable/historical-chart/%s/?symbol=%s&from=%s&to=%s.json", interval, symbol, from, to)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullServiceTest.java index be4f538..7f226cc 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodFullServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -38,7 +41,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -47,7 +50,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test @@ -56,9 +59,9 @@ void successful_download() { var symbol = symbol("AAPL"); var from = LocalDate.parse("2024-02-22"); var to = LocalDate.parse("2024-02-28"); - service.param("symbol", symbol); - service.param("from", from); - service.param("to", to); + service.param(PARAM_SYMBOL, symbol); + service.param(PARAM_FROM, from); + service.param(PARAM_TO, to); httpStub.configureResponse() .body(testResource("stable/historical-price-eod/full/?symbol=%s&from=%s&to=%s.json", symbol, from, to)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightServiceTest.java index 41faab5..91509b2 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpHistoricalPriceEodLightServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.Collections.emptySet; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -38,7 +41,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -47,7 +50,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test @@ -56,9 +59,9 @@ void successful_download() { var symbol = symbol("AAPL"); var from = LocalDate.parse("2024-02-22"); var to = LocalDate.parse("2024-02-28"); - service.param("symbol", symbol); - service.param("from", from); - service.param("to", to); + service.param(PARAM_SYMBOL, symbol); + service.param(PARAM_FROM, from); + service.param(PARAM_TO, to); httpStub.configureResponse() .body(testResource("stable/historical-price-eod/light/?symbol=%s&from=%s&to=%s.json", symbol, from, to)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthServiceTest.java index dcfa173..cdd038d 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementGrowthServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,7 +52,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @ParameterizedTest @@ -58,7 +61,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/income-statement-growth/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementServiceTest.java index 22feb87..718125b 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementServiceTest.java @@ -5,6 +5,9 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPeriod.period; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -43,7 +46,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -52,14 +55,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/income-statement/?symbol=%s.json", symbol)) .statusCode(200) @@ -78,9 +81,9 @@ void successful_download() { @CsvSource({"AAPL,annual,3", "AAPL,quarter,3", "GLIBK,quarter,1"}) void successful_download_with_optional_period_and_limit(String symbol, String period, int limit) { // given - service.param("symbol", symbol(symbol)); - service.param("period", period(period)); - service.param("limit", limit(limit)); + service.param(PARAM_SYMBOL, symbol(symbol)); + service.param(PARAM_PERIOD, period(period)); + service.param(PARAM_LIMIT, limit(limit)); httpStub.configureResponse() .body(testResource("stable/income-statement/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmServiceTest.java index 9410c3a..a28d909 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIncomeStatementTtmServiceTest.java @@ -3,6 +3,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -37,7 +39,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -46,7 +48,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_LIMIT, FmpLimit.class), params); } @Test @@ -54,7 +56,7 @@ void successful_download() { // given var symbol = symbol("AAPL"); var limit = 2; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/income-statement-ttm/?symbol=%s&limit=%d.json", symbol, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIposCalendarServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIposCalendarServiceTest.java index 5d52561..b412284 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIposCalendarServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIposCalendarServiceTest.java @@ -2,6 +2,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -45,7 +47,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIposDisclosureServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIposDisclosureServiceTest.java index dc4a9da..45b5e41 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIposDisclosureServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIposDisclosureServiceTest.java @@ -2,6 +2,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -45,7 +47,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpIposProspectusServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpIposProspectusServiceTest.java index 027fdcd..001bba7 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpIposProspectusServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpIposProspectusServiceTest.java @@ -2,6 +2,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -45,7 +47,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricServiceTest.java index d4ac16b..80c5671 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,14 +52,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/key-metrics/?symbol=%s.json", symbol)) .statusCode(200) @@ -77,7 +80,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 3; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/key-metrics/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmServiceTest.java index 460b493..0501044 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpKeyMetricTtmServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import dev.sorn.fmp4j.KeyMetricTtmTestData; @@ -34,7 +35,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -50,7 +51,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/key-metrics-ttm/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpNewsServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpNewsServiceTest.java index 35ea52b..b0ad0c0 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpNewsServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpNewsServiceTest.java @@ -2,6 +2,11 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +45,7 @@ void required_params(String path) { var params = service.requiredParams(); // then - assertEquals(Map.of("symbols", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOLS, FmpSymbol.class), params); } @ParameterizedTest @@ -54,7 +59,11 @@ void optional_params(String type) { // then assertEquals( - Map.of("from", LocalDate.class, "to", LocalDate.class, "page", FmpPage.class, "limit", FmpLimit.class), + Map.of( + PARAM_FROM, LocalDate.class, + PARAM_TO, LocalDate.class, + PARAM_PAGE, FmpPage.class, + PARAM_LIMIT, FmpLimit.class), params); } @@ -67,7 +76,7 @@ void optional_params(String type) { void successful_download(String type, FmpSymbol symbol) { // given var service = new FmpNewsService(config, client, type); - service.param("symbols", symbol); + service.param(PARAM_SYMBOLS, symbol); httpStub.configureResponse() .body(testResource("stable/news/%s/?symbols=%s.json", type, symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpPartialQuoteServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpPartialQuoteServiceTest.java index fcee105..4f0f0de 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpPartialQuoteServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpPartialQuoteServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.lang.String.format; import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -39,7 +40,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -55,7 +56,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/quote-short/?symbol=AAPL.json")) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpRatioServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpRatioServiceTest.java index 91266a2..04f4cbc 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpRatioServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpRatioServiceTest.java @@ -3,6 +3,9 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,14 +52,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_LIMIT, FmpLimit.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/ratios/?symbol=%s.json", symbol)) .statusCode(200) @@ -77,7 +80,7 @@ void successful_download_with_optional_period_and_limit(String period) { // given var symbol = symbol("AAPL"); var limit = 3; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/ratios/?symbol=%s&period=%s&limit=%d.json", symbol, period, limit)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpRatioTtmServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpRatioTtmServiceTest.java index bd8fdd7..9c999ff 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpRatioTtmServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpRatioTtmServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import dev.sorn.fmp4j.RatioTtmTestData; @@ -34,7 +35,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -50,7 +51,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/ratios-ttm/?symbol=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationServiceTest.java index ed1defa..f4d7871 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpRevenueGeographicSegmentationServiceTest.java @@ -3,6 +3,10 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_STRUCTURE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -40,7 +44,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -49,14 +53,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "structure", FmpStructure.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_STRUCTURE, FmpStructure.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/revenue-geographic-segmentation/?symbol=%s.json", symbol)) .statusCode(200) @@ -77,7 +81,7 @@ void successful_download_annual_flat() { var symbol = symbol("AAPL"); var period = "annual"; var structure = "flat"; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/revenue-geographic-segmentation/?symbol=%s&period=%s&structure=%s.json", @@ -97,9 +101,9 @@ void successful_download_annual_flat() { void successful_download_quarter_flat() { // given var symbol = symbol("AAPL"); - var period = "quarter"; + var period = PARAM_QUARTER; var structure = "flat"; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/revenue-geographic-segmentation/?symbol=%s&period=%s&structure=%s.json", diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationServiceTest.java index eb97a50..2986b31 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpRevenueProductSegmentationServiceTest.java @@ -3,6 +3,10 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PERIOD; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_QUARTER; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_STRUCTURE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -39,7 +43,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -48,14 +52,14 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("period", FmpPeriod.class, "structure", FmpStructure.class), params); + assertEquals(Map.of(PARAM_PERIOD, FmpPeriod.class, PARAM_STRUCTURE, FmpStructure.class), params); } @Test void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/revenue-product-segmentation/?symbol=%s.json", symbol)) .statusCode(200) @@ -76,7 +80,7 @@ void successful_download_annual_flat() { var symbol = symbol("AAPL"); var period = "annual"; var structure = "flat"; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/revenue-product-segmentation/?symbol=%s&period=%s&structure=%s.json", @@ -96,9 +100,9 @@ void successful_download_annual_flat() { void successful_download_quarter_flat() { // given var symbol = symbol("AAPL"); - var period = "quarter"; + var period = PARAM_QUARTER; var structure = "flat"; - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource( "stable/revenue-product-segmentation/?symbol=%s&period=%s&structure=%s.json", diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesServiceTest.java index a473bbb..f264d67 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpSearchPressReleasesServiceTest.java @@ -3,6 +3,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOLS; import static org.junit.jupiter.api.Assertions.assertEquals; import dev.sorn.fmp4j.FmpSearchPressReleaseTestData; @@ -35,7 +36,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbols", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOLS, FmpSymbol.class), params); } @Test @@ -51,7 +52,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("V"); - service.param("symbols", symbol); + service.param(PARAM_SYMBOLS, symbol); httpStub.configureResponse() .body(testResource("stable/news/press-releases/?symbols=%s.json", symbol)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolServiceTest.java index 47a35ca..1e8e94c 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpSecFilingsSearchBySymbolServiceTest.java @@ -5,6 +5,11 @@ import static dev.sorn.fmp4j.types.FmpLimit.limit; import static dev.sorn.fmp4j.types.FmpPage.page; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -41,7 +46,8 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class, "from", LocalDate.class, "to", LocalDate.class), params); + assertEquals( + Map.of(PARAM_SYMBOL, FmpSymbol.class, PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test @@ -50,7 +56,7 @@ void optional_params() { var params = service.optionalParams(); // then - assertEquals(Map.of("page", FmpPage.class, "limit", FmpLimit.class), params); + assertEquals(Map.of(PARAM_PAGE, FmpPage.class, PARAM_LIMIT, FmpLimit.class), params); } @Test @@ -61,11 +67,11 @@ void successful_download() { var to = LocalDate.parse("2025-01-01"); var page = page(0); var limit = limit(2); - service.param("symbol", symbol); - service.param("from", from); - service.param("to", to); - service.param("page", page); - service.param("limit", limit); + service.param(PARAM_SYMBOL, symbol); + service.param(PARAM_FROM, from); + service.param(PARAM_TO, to); + service.param(PARAM_PAGE, page); + service.param(PARAM_LIMIT, limit); httpStub.configureResponse() .body(testResource( "stable/sec-filings-search/symbol/?symbol=%s&from=%s&to=%s&page=%d&limit=%d.json", diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpServiceTest.java index e58f5da..7a4b6c2 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpServiceTest.java @@ -1,6 +1,11 @@ package dev.sorn.fmp4j.services; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_LIMIT; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_PAGE; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -52,8 +57,8 @@ void should_accept_list_with_correct_type() { List symbols = List.of(symbol("AAPL"), symbol("GOOGL"), symbol("MSFT")); // when // then - assertDoesNotThrow(() -> service.param("symbol", symbols)); - assertEquals(symbols, service.params.get("symbol")); + assertDoesNotThrow(() -> service.param(PARAM_SYMBOL, symbols)); + assertEquals(symbols, service.params.get(PARAM_SYMBOL)); } @Test @@ -62,8 +67,8 @@ void accepts_set_with_correct_type() { Set symbols = Set.of(symbol("AAPL"), symbol("APPL"), symbol("MSFT")); // when // then - assertDoesNotThrow(() -> service.param("symbol", symbols)); - assertEquals(symbols, service.params.get("symbol")); + assertDoesNotThrow(() -> service.param(PARAM_SYMBOL, symbols)); + assertEquals(symbols, service.params.get(PARAM_SYMBOL)); } @Test @@ -73,7 +78,7 @@ void rejects_collection_with_incorrect_type() { // when FmpServiceException exception = - assertThrows(FmpServiceException.class, () -> service.param("symbol", invalidList)); + assertThrows(FmpServiceException.class, () -> service.param(PARAM_SYMBOL, invalidList)); // then assertTrue(exception.getMessage().contains("Integer")); @@ -84,8 +89,8 @@ void rejects_collection_with_incorrect_type() { @Test void handles_empty_collection() { // given // when // then - assertDoesNotThrow(() -> service.param("symbol", List.of())); - assertEquals(List.of(), service.params.get("symbol")); + assertDoesNotThrow(() -> service.param(PARAM_SYMBOL, List.of())); + assertEquals(List.of(), service.params.get(PARAM_SYMBOL)); } @Test @@ -94,8 +99,8 @@ void accepts_optional_with_correct_type() { Optional optionalSymbol = Optional.of(symbol("AAPL")); // when // then - assertDoesNotThrow(() -> service.param("symbol", optionalSymbol)); - assertEquals(optionalSymbol, service.params.get("symbol")); + assertDoesNotThrow(() -> service.param(PARAM_SYMBOL, optionalSymbol)); + assertEquals(optionalSymbol, service.params.get(PARAM_SYMBOL)); } @Test @@ -105,7 +110,7 @@ void rejects_optional_with_incorrect_type() { // when FmpServiceException exception = - assertThrows(FmpServiceException.class, () -> service.param("symbol", invalidOptional)); + assertThrows(FmpServiceException.class, () -> service.param(PARAM_SYMBOL, invalidOptional)); // then assertTrue(exception.getMessage().contains("Integer")); @@ -119,13 +124,13 @@ void handles_empty_optional() { Optional emptyOptional = Optional.empty(); // when // then - assertDoesNotThrow(() -> service.param("symbol", emptyOptional)); - assertEquals(emptyOptional, service.params.get("symbol")); + assertDoesNotThrow(() -> service.param(PARAM_SYMBOL, emptyOptional)); + assertEquals(emptyOptional, service.params.get(PARAM_SYMBOL)); } @Test void rejects_invalid_type_for_optional_param() { - assertThrows(FmpServiceException.class, () -> service.param("from", "2025-01-01")); + assertThrows(FmpServiceException.class, () -> service.param(PARAM_FROM, "2025-01-01")); } @Test @@ -139,7 +144,7 @@ void validates_nested_collections() { List> nestedList = Arrays.asList(Arrays.asList("AAPL", "GOOGL")); // when // then - assertThrows(FmpServiceException.class, () -> service.param("symbol", nestedList)); + assertThrows(FmpServiceException.class, () -> service.param(PARAM_SYMBOL, nestedList)); } @Test @@ -149,7 +154,7 @@ void should_show_all_missing_required_params() { var msg = thrownEx.getMessage(); // then assertTrue( - msg.contains("limit") || msg.contains("page"), + msg.contains(PARAM_LIMIT) || msg.contains(PARAM_PAGE), "Expected exception message to mention either 'limit' and 'page' as the required param, but got: " + msg); } @@ -157,8 +162,8 @@ void should_show_all_missing_required_params() { @Test void should_not_throw_missing_required_params() { // given - multiRequiredService.param("page", FmpPage.page(10)); - multiRequiredService.param("limit", FmpLimit.limit(10)); + multiRequiredService.param(PARAM_PAGE, FmpPage.page(10)); + multiRequiredService.param(PARAM_LIMIT, FmpLimit.limit(10)); // when // then assertDoesNotThrow(multiRequiredService::download); @@ -172,12 +177,12 @@ public ConcreteFmpService(FmpConfig cfg, FmpHttpClient http) { @Override protected Map> requiredParams() { - return Map.of("symbol", FmpSymbol.class); + return Map.of(PARAM_SYMBOL, FmpSymbol.class); } @Override protected Map> optionalParams() { - return Map.of("from", LocalDate.class, "to", LocalDate.class); + return Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class); } @Override @@ -193,7 +198,7 @@ public MultiRequiredFmpService(FmpConfig cfg, FmpHttpClient http) { @Override protected Map> requiredParams() { - return Map.of("limit", FmpLimit.class, "page", FmpPage.class); + return Map.of(PARAM_LIMIT, FmpLimit.class, PARAM_PAGE, FmpPage.class); } @Override diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpSplitServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpSplitServiceTest.java index 94422b8..a7e26b4 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpSplitServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpSplitServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -35,7 +36,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -51,7 +52,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); String jsonResponse = "[{\"symbol\":\"AAPL\",\"date\":\"2020-08-31\",\"numerator\":4,\"denominator\":1,\"label\":\"AAPL split: 4 for 1\"}]"; httpStub.configureResponse().body(jsonResponse).statusCode(200).apply(); diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpStockPriceChangeServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpStockPriceChangeServiceTest.java index 1a6bf6a..6578cb2 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpStockPriceChangeServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpStockPriceChangeServiceTest.java @@ -2,6 +2,7 @@ import static dev.sorn.fmp4j.TestUtils.testResource; import static dev.sorn.fmp4j.types.FmpSymbol.symbol; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_SYMBOL; import static org.junit.jupiter.api.Assertions.assertEquals; import dev.sorn.fmp4j.StockPriceChangeTestData; @@ -34,7 +35,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("symbol", FmpSymbol.class), params); + assertEquals(Map.of(PARAM_SYMBOL, FmpSymbol.class), params); } @Test @@ -50,7 +51,7 @@ void optional_params() { void successful_download() { // given var symbol = symbol("AAPL"); - service.param("symbol", symbol); + service.param(PARAM_SYMBOL, symbol); httpStub.configureResponse() .body(testResource("stable/stock-price-change/?symbol=AAPL.json")) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/services/FmpTreasuryRatesServiceTest.java b/src/test/java/dev/sorn/fmp4j/services/FmpTreasuryRatesServiceTest.java index 7629eab..1ed9e76 100644 --- a/src/test/java/dev/sorn/fmp4j/services/FmpTreasuryRatesServiceTest.java +++ b/src/test/java/dev/sorn/fmp4j/services/FmpTreasuryRatesServiceTest.java @@ -2,6 +2,8 @@ import static dev.sorn.fmp4j.TestUtils.assertAllFieldsNonNull; import static dev.sorn.fmp4j.TestUtils.testResource; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_FROM; +import static dev.sorn.fmp4j.utils.FmpParameters.PARAM_TO; import static java.util.stream.IntStream.range; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertInstanceOf; @@ -35,7 +37,7 @@ void required_params() { var params = service.requiredParams(); // then - assertEquals(Map.of("from", LocalDate.class, "to", LocalDate.class), params); + assertEquals(Map.of(PARAM_FROM, LocalDate.class, PARAM_TO, LocalDate.class), params); } @Test @@ -52,8 +54,8 @@ void successful_download() { // given var from = LocalDate.parse("2024-12-30"); var to = LocalDate.parse("2025-01-01"); - service.param("from", from); - service.param("to", to); + service.param(PARAM_FROM, from); + service.param(PARAM_TO, to); httpStub.configureResponse() .body(testResource("stable/treasury-rates/?from=%s&to=%s.json", from, to)) .statusCode(200) diff --git a/src/test/java/dev/sorn/fmp4j/types/FmpSymbolTest.java b/src/test/java/dev/sorn/fmp4j/types/FmpSymbolTest.java index 08911e3..082943d 100644 --- a/src/test/java/dev/sorn/fmp4j/types/FmpSymbolTest.java +++ b/src/test/java/dev/sorn/fmp4j/types/FmpSymbolTest.java @@ -219,7 +219,7 @@ void check_all_symbols() { // 3. Open the file // 4. Replace (CMD+R) // 5. Enable regex - // 6. Replace \{[^}]*"symbol":\s*"([^"]+)"[^}]*\} with "$1" + // 6. Replace \{[^}]*PARAM_SYMBOL:\s*"([^"]+)"[^}]*\} with "$1" // 7. Remove @Disabled // 8. Run test