IArbitrableV2

Git Source

Arbitrable interface. When developing arbitrable contracts, we need to:

  • Define the action taken when a ruling is received by the contract.
  • Allow dispute creation. For this a function must call arbitrator.createDispute{value: _fee}(_choices,_extraData);

Functions

rule

Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.

function rule(uint256 _disputeID, uint256 _ruling) external;

Parameters

NameTypeDescription
_disputeIDuint256The identifier of the dispute in the Arbitrator contract.
_rulinguint256Ruling given by the arbitrator. Note that 0 is reserved for "Not able/wanting to make a decision".

Events

DisputeTemplate

To be emitted when a new dispute template is created.

event DisputeTemplate(uint256 indexed _templateId, string indexed _templateTag, string _templateData);

DisputeRequest

To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.

event DisputeRequest(
    IArbitratorV2 indexed _arbitrator,
    uint256 indexed _arbitrableDisputeID,
    uint256 _externalDisputeID,
    uint256 _templateId,
    string _templateUri
);

Ruling

To be raised when a ruling is given.

event Ruling(IArbitratorV2 indexed _arbitrator, uint256 indexed _disputeID, uint256 _ruling);