Fix error on initialization with no symbols

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2024-02-19 17:51:44 +00:00
parent 4f73058792
commit 4665891316
3 changed files with 12 additions and 2 deletions

View File

@@ -142,6 +142,11 @@ async fn handle_message(
news_backfill_sender: mpsc::Sender<backfill::Message>, news_backfill_sender: mpsc::Sender<backfill::Message>,
message: Message, message: Message,
) { ) {
if message.assets.is_empty() {
message.response.send(()).unwrap();
return;
}
let (us_equity_symbols, crypto_symbols): (Vec<_>, Vec<_>) = message let (us_equity_symbols, crypto_symbols): (Vec<_>, Vec<_>) = message
.assets .assets
.clone() .clone()
@@ -233,8 +238,8 @@ async fn handle_message(
let position_future = async { let position_future = async {
alpaca::api::incoming::position::get_by_symbol( alpaca::api::incoming::position::get_by_symbol(
&config.alpaca_rate_limiter,
&config.alpaca_client, &config.alpaca_client,
&config.alpaca_rate_limiter,
&symbol, &symbol,
Some(backoff::infinite()), Some(backoff::infinite()),
) )

View File

@@ -128,6 +128,11 @@ async fn handle_message(
sink: Arc<Mutex<SplitSink<WebSocketStream<MaybeTlsStream<TcpStream>>, tungstenite::Message>>>, sink: Arc<Mutex<SplitSink<WebSocketStream<MaybeTlsStream<TcpStream>>, tungstenite::Message>>>,
message: Message, message: Message,
) { ) {
if message.symbols.is_empty() {
message.response.send(()).unwrap();
return;
}
match message.action { match message.action {
Some(Action::Subscribe) => { Some(Action::Subscribe) => {
let (pending_subscriptions, receivers): (Vec<_>, Vec<_>) = message let (pending_subscriptions, receivers): (Vec<_>, Vec<_>) = message

View File

@@ -102,8 +102,8 @@ pub async fn get(
} }
pub async fn get_by_symbol( pub async fn get_by_symbol(
alpaca_rate_limiter: &DefaultDirectRateLimiter,
alpaca_client: &Client, alpaca_client: &Client,
alpaca_rate_limiter: &DefaultDirectRateLimiter,
symbol: &str, symbol: &str,
backoff: Option<ExponentialBackoff>, backoff: Option<ExponentialBackoff>,
) -> Result<Option<Position>, reqwest::Error> { ) -> Result<Option<Position>, reqwest::Error> {