You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2024/03/18 16:37:18 UTC

(camel) branch main updated: CAMEL-20579: Handle NotYetImplementedForExchangeException for xchange ticker service lookup

This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 5d5229966b6 CAMEL-20579: Handle NotYetImplementedForExchangeException for xchange ticker service lookup
5d5229966b6 is described below

commit 5d5229966b62376eada23fc557a0d05d2dd68586
Author: James Netherton <ja...@gmail.com>
AuthorDate: Mon Mar 18 14:27:18 2024 +0000

    CAMEL-20579: Handle NotYetImplementedForExchangeException for xchange ticker service lookup
---
 .../org/apache/camel/component/xchange/XChangeEndpoint.java    | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/components/camel-xchange/src/main/java/org/apache/camel/component/xchange/XChangeEndpoint.java b/components/camel-xchange/src/main/java/org/apache/camel/component/xchange/XChangeEndpoint.java
index a1c94ae2bb0..8aca542851c 100644
--- a/components/camel-xchange/src/main/java/org/apache/camel/component/xchange/XChangeEndpoint.java
+++ b/components/camel-xchange/src/main/java/org/apache/camel/component/xchange/XChangeEndpoint.java
@@ -43,6 +43,7 @@ import org.knowm.xchange.dto.marketdata.Ticker;
 import org.knowm.xchange.dto.meta.CurrencyMetaData;
 import org.knowm.xchange.dto.meta.ExchangeMetaData;
 import org.knowm.xchange.dto.meta.InstrumentMetaData;
+import org.knowm.xchange.exceptions.NotYetImplementedForExchangeException;
 import org.knowm.xchange.instrument.Instrument;
 import org.knowm.xchange.service.account.AccountService;
 import org.knowm.xchange.service.marketdata.MarketDataService;
@@ -178,6 +179,13 @@ public class XChangeEndpoint extends DefaultEndpoint {
     public Ticker getTicker(CurrencyPair pair) throws IOException {
         Assert.notNull(pair, "Null currency pair");
         MarketDataService marketService = xchange.getMarketDataService();
-        return marketService.getTicker((Instrument) pair);
+        try {
+            return marketService.getTicker((Instrument) pair);
+        } catch (NotYetImplementedForExchangeException e) {
+            // Ignored
+        }
+
+        // Retry service lookup using deprecated (but still in use) MarketDataService.getTicker(CurrencyPair)
+        return marketService.getTicker(pair);
     }
 }