use of org.knowm.xchange.latoken.dto.LatokenException in project XChange by knowm.
the class LatokenAccountService method getAccountInfo.
@Override
public AccountInfo getAccountInfo() throws IOException {
try {
List<LatokenBalance> latokenBalances = getLatokenBalances();
List<Balance> balances = latokenBalances.stream().map(latokenBalance -> LatokenAdapters.adaptBalance(latokenBalance)).collect(Collectors.toList());
Wallet wallet = Wallet.Builder.from(balances).build();
return new AccountInfo(null, TRADING_FEE, Arrays.asList(wallet), new Date());
} catch (LatokenException e) {
throw LatokenErrorAdapter.adapt(e);
}
}
use of org.knowm.xchange.latoken.dto.LatokenException in project XChange by knowm.
the class LatokenMarketDataService method getTrades.
@Override
public Trades getTrades(CurrencyPair pair, Object... args) throws IOException {
try {
int limit = maxTrades;
if (args != null && args.length == 1) {
Object arg0 = args[0];
if (!(arg0 instanceof Integer)) {
throw new ExchangeException("Maximal number of trades must be an Integer!");
} else {
limit = (Integer) arg0;
}
}
LatokenTrades latokenTrades = getLatokenTrades(pair, limit);
return LatokenAdapters.adaptTrades(this.exchange, latokenTrades);
} catch (LatokenException e) {
throw LatokenErrorAdapter.adapt(e);
}
}
use of org.knowm.xchange.latoken.dto.LatokenException in project XChange by knowm.
the class LatokenTradeService method getTradeHistory.
@Override
public UserTrades getTradeHistory(TradeHistoryParams params) throws IOException {
if (params instanceof TradeHistoryParamCurrencyPair == false) {
throw new ExchangeException("CurrencyPair must be provided to get user trades.");
}
TradeHistoryParamCurrencyPair pairParams = (TradeHistoryParamCurrencyPair) params;
CurrencyPair pair = pairParams.getCurrencyPair();
if (pair == null) {
throw new ExchangeException("CurrencyPair must be provided to get user trades.");
}
// Limit is an optional parameter
Integer limit = null;
if (params instanceof TradeHistoryParamLimit) {
TradeHistoryParamLimit limitParams = (TradeHistoryParamLimit) params;
limit = limitParams.getLimit();
}
try {
LatokenUserTrades latokenTrades = getLatokenUserTrades(pair, limit);
return LatokenAdapters.adaptUserTrades(this.exchange, latokenTrades);
} catch (LatokenException e) {
throw LatokenErrorAdapter.adapt(e);
}
}
use of org.knowm.xchange.latoken.dto.LatokenException in project XChange by knowm.
the class LatokenTradeService method getOpenOrders.
@Override
public OpenOrders getOpenOrders(OpenOrdersParams params) throws IOException {
try {
if (params instanceof OpenOrdersParamCurrencyPair == false) {
throw new ExchangeException("CurrencyPair is must be provided to get open orders.");
}
OpenOrdersParamCurrencyPair pairParams = (OpenOrdersParamCurrencyPair) params;
CurrencyPair pair = pairParams.getCurrencyPair();
if (pair == null) {
throw new ExchangeException("CurrencyPair is must be provided to get open orders.");
}
List<LatokenOrder> latokenOpenOrders = getLatokenOpenOrders(pair, Integer.MAX_VALUE);
return LatokenAdapters.adaptOpenOrders(this.exchange, latokenOpenOrders);
} catch (LatokenException e) {
throw LatokenErrorAdapter.adapt(e);
}
}
use of org.knowm.xchange.latoken.dto.LatokenException in project XChange by knowm.
the class LatokenTradeService method getOrder.
@Override
public Collection<Order> getOrder(OrderQueryParams... params) throws IOException {
try {
Collection<Order> orders = new ArrayList<>();
// pair/status (via LatokenQueryOrderParams)
for (OrderQueryParams param : params) {
if (param instanceof OrderQueryParamCurrencyPair) {
OrderQueryParamCurrencyPair orderQueryParamCurrencyPair = (OrderQueryParamCurrencyPair) param;
CurrencyPair pair = orderQueryParamCurrencyPair.getCurrencyPair();
if (pair == null) {
throw new ExchangeException("CurrencyPair must be provided to query an order.");
}
LatokenOrderStatus status = LatokenOrderStatus.active;
Integer limit = null;
if (param instanceof LatokenQueryOrderParams) {
LatokenQueryOrderParams latokenParam = (LatokenQueryOrderParams) param;
status = latokenParam.getStatus();
limit = latokenParam.getLimit();
}
List<LatokenOrder> latokenOrders = getLatokenOrders(pair, status, limit);
latokenOrders.forEach(latokenOrder -> orders.add(LatokenAdapters.adaptOrder(this.exchange, latokenOrder)));
} else {
if (param.getOrderId() == null) {
throw new ExchangeException("OrderId must be provided to query an order.");
}
LatokenOrder latokenOrder = getLatokenOrder(param.getOrderId());
orders.add(LatokenAdapters.adaptOrder(this.exchange, latokenOrder));
}
}
return orders;
} catch (LatokenException e) {
throw LatokenErrorAdapter.adapt(e);
}
}
Aggregations