nautilus_kraken/common/
urls.rs1use super::{
19 consts::{
20 KRAKEN_FUTURES_DEMO_HTTP_URL, KRAKEN_FUTURES_DEMO_WS_URL, KRAKEN_FUTURES_HTTP_URL,
21 KRAKEN_FUTURES_WS_URL, KRAKEN_SPOT_HTTP_URL, KRAKEN_SPOT_WS_PRIVATE_URL,
22 KRAKEN_SPOT_WS_PUBLIC_URL,
23 },
24 enums::{KrakenEnvironment, KrakenProductType},
25};
26
27pub fn get_kraken_http_base_url(
29 product_type: KrakenProductType,
30 environment: KrakenEnvironment,
31) -> &'static str {
32 match (product_type, environment) {
33 (KrakenProductType::Spot, _) => KRAKEN_SPOT_HTTP_URL,
34 (KrakenProductType::Futures, KrakenEnvironment::Mainnet) => KRAKEN_FUTURES_HTTP_URL,
35 (KrakenProductType::Futures, KrakenEnvironment::Demo) => KRAKEN_FUTURES_DEMO_HTTP_URL,
36 }
37}
38
39pub fn get_kraken_ws_public_url(
41 product_type: KrakenProductType,
42 environment: KrakenEnvironment,
43) -> &'static str {
44 match (product_type, environment) {
45 (KrakenProductType::Spot, _) => KRAKEN_SPOT_WS_PUBLIC_URL,
46 (KrakenProductType::Futures, KrakenEnvironment::Mainnet) => KRAKEN_FUTURES_WS_URL,
47 (KrakenProductType::Futures, KrakenEnvironment::Demo) => KRAKEN_FUTURES_DEMO_WS_URL,
48 }
49}
50
51pub fn get_kraken_ws_private_url(
53 product_type: KrakenProductType,
54 environment: KrakenEnvironment,
55) -> &'static str {
56 match (product_type, environment) {
57 (KrakenProductType::Spot, _) => KRAKEN_SPOT_WS_PRIVATE_URL,
58 (KrakenProductType::Futures, KrakenEnvironment::Mainnet) => KRAKEN_FUTURES_WS_URL,
59 (KrakenProductType::Futures, KrakenEnvironment::Demo) => KRAKEN_FUTURES_DEMO_WS_URL,
60 }
61}