Execution Manager

FUNCTIONS

tokenEscrow()

nftsEscrow()

verifyToken(_token)

placeBuyOrder(_orderId, _token, _sender, _tokenAmount)

placeSellOrder(_orderId, _sender, _asset, _assetAmount)

executeBuyOrder(_user, _orderIds, _paymentPerOrder, _amounts, _asset)

executeSellOrder(_user, _orderIds, _paymentPerOrder, _amounts, _token)

cancelOrders(_orderIds)

claimOrders(_user, _orderIds)

addSupportedToken(_token)

tokenEscrow() -> address

Retrieves a token's contract address.

visibility: external

state mutability: view

nftsEscrow() -> address

Retrieves a non-fungible token's contract address.

visibility: external

state mutability: view

verifyToken(address _token) -> bool

Verifies whether the payment token entered is supported by Rawrshak.

visibility: external

state mutability: view

placeBuyOrder(uint256 _orderId, address _token, address _sender, uint256 _tokenAmount)

Transfers _tokenAmount of _token from _sender to the Erc20Escrow contract and updates the escrowedByOrder mapping.

visibility: external

state mutability:

placeSellOrder(uint256 _orderId, address _sender, LibOrder.AssetData _asset, uint256 _assetAmount)

Transfers _assetAmount of _asset to the NftEscrow contract and updates the escrowedAssets and escrowedAmounts mappings.

visibility: external

state mutability:

executeBuyOrder(address _user, uint256[] _orderIds, uint256[] _paymentPerOrder, uint256[] _amounts, LibOrder.AssetData _asset)

Transfers assets to escrow to be claimed by buyers and withdraws token payment from escrow to _user, updating necessary records.

Requirement:

  • The length of _orderIds must equal the length of _paymentPerOrder and _amounts.

visibility: external

state mutability:

executeSellOrder(address user, uint256[] _orderIds, uint256[] _paymentPerOrder, uint256[] _amounts, address _token)

Transfers token payment to escrow to be claimed by sellers and withdraws purchased assets to _user, updating necessary records.

Requirement:

  • The length of _orderIds must equal the length of _paymentPerOrder and _amounts.

visibility: external

state mutability:

cancelOrders(uint256[] _orderIds)

For buy orders, this function withdraws unused token payments and claims purchased assets (if any, from partial fills). For sell orders, this function withdraws unsold assets and claims token payments (if any, from partial fills).

visibility: external

state mutability:

claimOrders(address _user, uint256[] _orderIds)

Withdraws escrowed assets from filled or partially filled orders. Updates order state to "CLAIMED" if the order is completely filled.

visibility: external

state mutability:

addSupportedToken(address _token)

Adds _token to the list of supported ERC20 tokens on Rawrshak.

Emits an AddedTokenSupport event.

Passes through Erc20Escrow.sol.

visibility: external

state mutability:

Last updated