Merge branch 'batchCancelAsync' into batchFillAsync
This commit is contained in:
@@ -200,34 +200,10 @@ export class ExchangeWrapper extends ContractWrapper {
|
|||||||
*/
|
*/
|
||||||
public async cancelOrderAsync(
|
public async cancelOrderAsync(
|
||||||
order: Order|SignedOrder, takerTokenCancelAmount: BigNumber.BigNumber): Promise<void> {
|
order: Order|SignedOrder, takerTokenCancelAmount: BigNumber.BigNumber): Promise<void> {
|
||||||
assert.doesConformToSchema('order',
|
await this.batchCancelOrderAsync([{
|
||||||
SchemaValidator.convertToJSONSchemaCompatibleObject(order as object),
|
order,
|
||||||
orderSchema);
|
|
||||||
assert.isBigNumber('takerTokenCancelAmount', takerTokenCancelAmount);
|
|
||||||
await assert.isSenderAddressAvailableAsync(this.web3Wrapper, 'order.maker', order.maker);
|
|
||||||
|
|
||||||
const exchangeInstance = await this.getExchangeContractAsync();
|
|
||||||
await this.validateCancelOrderAndThrowIfInvalidAsync(order, takerTokenCancelAmount);
|
|
||||||
|
|
||||||
const [orderAddresses, orderValues] = ExchangeWrapper.getOrderAddressesAndValues(order);
|
|
||||||
const gas = await exchangeInstance.cancel.estimateGas(
|
|
||||||
orderAddresses,
|
|
||||||
orderValues,
|
|
||||||
takerTokenCancelAmount,
|
takerTokenCancelAmount,
|
||||||
{
|
}]);
|
||||||
from: order.maker,
|
|
||||||
},
|
|
||||||
);
|
|
||||||
const response: ContractResponse = await exchangeInstance.cancel(
|
|
||||||
orderAddresses,
|
|
||||||
orderValues,
|
|
||||||
takerTokenCancelAmount,
|
|
||||||
{
|
|
||||||
from: order.maker,
|
|
||||||
gas,
|
|
||||||
},
|
|
||||||
);
|
|
||||||
this.throwErrorLogsAsErrors(response.logs);
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Batch version of cancelOrderAsync. Atomically cancels multiple orders in a single transaction.
|
* Batch version of cancelOrderAsync. Atomically cancels multiple orders in a single transaction.
|
||||||
|
@@ -233,3 +233,8 @@ export interface OrderCancellationRequest {
|
|||||||
order: Order|SignedOrder;
|
order: Order|SignedOrder;
|
||||||
takerTokenCancelAmount: BigNumber.BigNumber;
|
takerTokenCancelAmount: BigNumber.BigNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface OrderFillRequest {
|
||||||
|
signedOrder: SignedOrder;
|
||||||
|
takerTokenFillAmount: BigNumber.BigNumber;
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user