@@ -9,6 +9,15 @@ enum AlphaVantageAPI: URLConvertible {
99 case symbolSearch( keywords: String , apiKey: String )
1010 case dailyAdjustedTimeSeries( symbol: String , apiKey: String )
1111
12+ private var functionName : String {
13+ switch self {
14+ case . globalQuote: " GLOBAL_QUOTE "
15+ case . currencyExchangeRate: " CURRENCY_EXCHANGE_RATE "
16+ case . symbolSearch: " SYMBOL_SEARCH "
17+ case . dailyAdjustedTimeSeries: " TIME_SERIES_DAILY_ADJUSTED "
18+ }
19+ }
20+
1221 fileprivate enum Parameter : String {
1322 case symbol
1423 case apiKey = " apikey "
@@ -23,23 +32,23 @@ enum AlphaVantageAPI: URLConvertible {
2332
2433 switch self {
2534 case . globalQuote( let symbol, let apiKey) :
26- return url. appendingParameter ( . function, value: " GLOBAL_QUOTE " )
35+ return url. appendingParameter ( . function, value: functionName )
2736 . appendingParameter ( . symbol, value: symbol)
2837 . appendingParameter ( . apiKey, value: apiKey)
2938
3039 case . currencyExchangeRate( let base, let target, let apiKey) :
31- return url. appendingParameter ( . function, value: " CURRENCY_EXCHANGE_RATE " )
40+ return url. appendingParameter ( . function, value: functionName )
3241 . appendingParameter ( . fromCurrency, value: base)
3342 . appendingParameter ( . toCurrency, value: target)
3443 . appendingParameter ( . apiKey, value: apiKey)
3544
3645 case . symbolSearch( let keywords, let apiKey) :
37- return url. appendingParameter ( . function, value: " SYMBOL_SEARCH " )
46+ return url. appendingParameter ( . function, value: functionName )
3847 . appendingParameter ( . keywords, value: keywords)
3948 . appendingParameter ( . apiKey, value: apiKey)
4049
4150 case . dailyAdjustedTimeSeries( let symbol, let apiKey) :
42- return url. appendingParameter ( . function, value: " TIME_SERIES_DAILY_ADJUSTED " )
51+ return url. appendingParameter ( . function, value: functionName )
4352 . appendingParameter ( . symbol, value: symbol)
4453 . appendingParameter ( . apiKey, value: apiKey)
4554 }
0 commit comments