This contract is meant to be deployed to side-chains (i.e.: xDAI) in which Reality.eth is deployed.
Variables
realitio
contract RealitioInterface realitio
The address of the Realitio contract (v2.1+ required). TRUSTED.
amb
contract IAMB amb
ArbitraryMessageBridge contract address. TRUSTED.
foreignProxy
address foreignProxy
Address of the counter-party proxy on the Foreign Chain. TRUSTED.
foreignChainId
bytes32 foreignChainId
The chain ID where the foreign proxy is deployed.
metadata
Metadata for Realitio interface.
Status
Request
requests
Associates an arbitration request with a question ID and a requester address. requests[questionID][requester]
questionIDToRequester
Associates a question ID with the requester who succeeded in requesting arbitration. questionIDToRequester[questionID]
Modifiers
onlyForeignProxy
Functions
constructor
Creates an arbitration proxy on the home chain.
Parameters
Name
Type
Description
_amb
contract IAMB
ArbitraryMessageBridge contract address.
_foreignProxy
address
The address of the proxy.
_foreignChainId
bytes32
The ID of the chain where the foreign proxy is deployed.
_realitio
contract RealitioInterface
Realitio contract address.
receiveArbitrationRequest
Receives the requested arbitration for a question. TRUSTED.
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_requester
address
The address of the user that requested arbitration.
_maxPrevious
uint256
The maximum value of the previous bond for the question.
handleNotifiedRequest
Handles arbitration request after it has been notified to Realitio for a given question.
This method exists because receiveArbitrationRequest is called by the AMB and cannot send messages back to it.
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_requester
address
The address of the user that requested arbitration.
handleRejectedRequest
Handles arbitration request after it has been rejected.
_This method exists because receiveArbitrationRequest is called by the AMB and cannot send messages back to it. Reasons why the request might be rejected:
The question does not exist
The question was not answered yet
The question bond value changed while the arbitration was being requested
Another request was already accepted_
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_requester
address
The address of the user that requested arbitration.
receiveArbitrationFailure
Receives a failed attempt to request arbitration. TRUSTED.
Currently this can happen only if the arbitration cost increased.
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_requester
address
The address of the user that requested arbitration.
receiveArbitrationAnswer
Receives the answer to a specified question. TRUSTED.
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_answer
bytes32
The answer from the arbitrator.
reportArbitrationAnswer
Reports the answer provided by the arbitrator to a specified question.
The Realitio contract validates the input parameters passed to this method, so making this publicly accessible is safe.
Parameters
Name
Type
Description
_questionID
bytes32
The ID of the question.
_lastHistoryHash
bytes32
The history hash given with the last answer to the question in the Realitio contract.
_lastAnswerOrCommitmentID
bytes32
The last answer given, or its commitment ID if it was a commitment, to the question in the Realitio contract.
_lastAnswerer
address
The last answerer to the question in the Realitio contract.