@method @name okx#fetchOrder @description fetch an order by the id @see https://www.okx.com/docs-v5/en/#order-book-trading-trade-get-order-details @see https://www.okx.com/docs-v5/en/#order-book-trading-algo-trading-get-algo-order-details @param {string} id the order id @param {string} symbol unifie
(Object id, Object... optionalArgs)
| 4706 | * @returns [an order structure]{@link https://docs.ccxt.com/?id=order-structure} |
| 4707 | */ |
| 4708 | public java.util.concurrent.CompletableFuture<Object> fetchOrder(Object id, Object... optionalArgs) |
| 4709 | { |
| 4710 | |
| 4711 | return java.util.concurrent.CompletableFuture.supplyAsync(() -> { |
| 4712 | |
| 4713 | Object symbol = Helpers.getArg(optionalArgs, 0, null); |
| 4714 | Object parameters = Helpers.getArg(optionalArgs, 1, new java.util.HashMap<String, Object>() {{}}); |
| 4715 | if (Helpers.isTrue(Helpers.isEqual(symbol, null))) |
| 4716 | { |
| 4717 | throw new ArgumentsRequired((String)Helpers.add(this.id, " fetchOrder() requires a symbol argument")) ; |
| 4718 | } |
| 4719 | (this.loadMarkets()).join(); |
| 4720 | Object market = this.market(symbol); |
| 4721 | Object request = new java.util.HashMap<String, Object>() {{ |
| 4722 | put( "instId", Helpers.GetValue(market, "id") ); |
| 4723 | }}; |
| 4724 | Object clientOrderId = this.safeString2(parameters, "clOrdId", "clientOrderId"); |
| 4725 | Object options = this.safeValue(this.options, "fetchOrder", new java.util.HashMap<String, Object>() {{}}); |
| 4726 | Object defaultMethod = this.safeString(options, "method", "privateGetTradeOrder"); |
| 4727 | Object method = this.safeString(parameters, "method", defaultMethod); |
| 4728 | Object trigger = this.safeValue2(parameters, "stop", "trigger"); |
| 4729 | if (Helpers.isTrue(trigger)) |
| 4730 | { |
| 4731 | method = "privateGetTradeOrderAlgo"; |
| 4732 | if (Helpers.isTrue(!Helpers.isEqual(clientOrderId, null))) |
| 4733 | { |
| 4734 | Helpers.addElementToObject(request, "algoClOrdId", clientOrderId); |
| 4735 | } else |
| 4736 | { |
| 4737 | Helpers.addElementToObject(request, "algoId", id); |
| 4738 | } |
| 4739 | } else |
| 4740 | { |
| 4741 | if (Helpers.isTrue(!Helpers.isEqual(clientOrderId, null))) |
| 4742 | { |
| 4743 | Helpers.addElementToObject(request, "clOrdId", clientOrderId); |
| 4744 | } else |
| 4745 | { |
| 4746 | Helpers.addElementToObject(request, "ordId", id); |
| 4747 | } |
| 4748 | } |
| 4749 | Object query = this.omit(parameters, new java.util.ArrayList<Object>(java.util.Arrays.asList("method", "clOrdId", "clientOrderId", "stop", "trigger"))); |
| 4750 | Object response = null; |
| 4751 | if (Helpers.isTrue(Helpers.isEqual(method, "privateGetTradeOrderAlgo"))) |
| 4752 | { |
| 4753 | response = (this.privateGetTradeOrderAlgo(this.extend(request, query))).join(); |
| 4754 | } else |
| 4755 | { |
| 4756 | response = (this.privateGetTradeOrder(this.extend(request, query))).join(); |
| 4757 | } |
| 4758 | // |
| 4759 | // Spot and Swap |
| 4760 | // |
| 4761 | // { |
| 4762 | // "code": "0", |
| 4763 | // "data": [ |
| 4764 | // { |
| 4765 | // "accFillSz": "0", |
nothing calls this directly
no test coverage detected