UNPKG

@oceanprotocol/keeper-contracts

Version:

Integration of SEAs, DID and OceanToken in Solidity

284 lines (283 loc) 14.3 kB
{ "name": "EscrowComputeExecutionTemplate", "abi": [ { "constant": false, "inputs": [ { "name": "_id", "type": "bytes32" }, { "name": "_did", "type": "bytes32" }, { "name": "_conditionIds", "type": "bytes32[]" }, { "name": "_timeLocks", "type": "uint256[]" }, { "name": "_timeOuts", "type": "uint256[]" } ], "name": "createAgreement", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x2e166f3e" }, { "constant": false, "inputs": [ { "name": "_id", "type": "bytes32" }, { "name": "_did", "type": "bytes32" }, { "name": "_conditionIds", "type": "bytes32[]" }, { "name": "_timeLocks", "type": "uint256[]" }, { "name": "_timeOuts", "type": "uint256[]" }, { "name": "_accessConsumer", "type": "address" } ], "name": "createAgreement", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x4183e72b" }, { "constant": true, "inputs": [ { "name": "_id", "type": "bytes32" } ], "name": "getAgreementData", "outputs": [ { "name": "accessConsumer", "type": "address" }, { "name": "accessProvider", "type": "address" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x6ff015ae" }, { "constant": false, "inputs": [], "name": "renounceOwnership", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x715018a6" }, { "constant": true, "inputs": [], "name": "owner", "outputs": [ { "name": "", "type": "address" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x8da5cb5b" }, { "constant": true, "inputs": [], "name": "isOwner", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x8f32d59b" }, { "constant": true, "inputs": [], "name": "getConditionTypes", "outputs": [ { "name": "", "type": "address[]" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x91a169bf" }, { "constant": false, "inputs": [ { "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xf2fde38b" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "_agreementId", "type": "bytes32" }, { "indexed": false, "name": "_did", "type": "bytes32" }, { "indexed": true, "name": "_accessConsumer", "type": "address" }, { "indexed": true, "name": "_accessProvider", "type": "address" }, { "indexed": false, "name": "_timeLocks", "type": "uint256[]" }, { "indexed": false, "name": "_timeOuts", "type": "uint256[]" } ], "name": "AgreementCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "previousOwner", "type": "address" }, { "indexed": true, "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "constant": false, "inputs": [ { "name": "sender", "type": "address" } ], "name": "initialize", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xc4d66de8" }, { "constant": false, "inputs": [ { "name": "_owner", "type": "address" }, { "name": "_agreementStoreManagerAddress", "type": "address" }, { "name": "_didRegistryAddress", "type": "address" }, { "name": "_computeExecutionConditionAddress", "type": "address" }, { "name": "_lockRewardConditionAddress", "type": "address" }, { "name": "_escrowRewardAddress", "type": "address" } ], "name": "initialize", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xcc2a9a5b" } ], "bytecode": "0x608060405234801561001057600080fd5b50611038806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80638f32d59b116100665780638f32d59b1461049357806391a169bf146104af578063c4d66de814610507578063cc2a9a5b1461052d578063f2fde38b1461057b5761009e565b80632e166f3e146100a35780634183e72b146102665780636ff015ae14610422578063715018a6146104655780638da5cb5b1461046f575b600080fd5b610254600480360360a08110156100b957600080fd5b813591602081013591810190606081016040820135600160201b8111156100df57600080fd5b8201836020820111156100f157600080fd5b803590602001918460208302840111600160201b8311171561011257600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561016157600080fd5b82018360208201111561017357600080fd5b803590602001918460208302840111600160201b8311171561019457600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156101e357600080fd5b8201836020820111156101f557600080fd5b803590602001918460208302840111600160201b8311171561021657600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506105a1945050505050565b60408051918252519081900360200190f35b610254600480360360c081101561027c57600080fd5b813591602081013591810190606081016040820135600160201b8111156102a257600080fd5b8201836020820111156102b457600080fd5b803590602001918460208302840111600160201b831117156102d557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561032457600080fd5b82018360208201111561033657600080fd5b803590602001918460208302840111600160201b8311171561035757600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156103a657600080fd5b8201836020820111156103b857600080fd5b803590602001918460208302840111600160201b831117156103d957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550505090356001600160a01b031691506107499050565b61043f6004803603602081101561043857600080fd5b5035610b14565b604080516001600160a01b03938416815291909216602082015281519081900390910190f35b61046d610b3b565b005b610477610b96565b604080516001600160a01b039092168252519081900360200190f35b61049b610ba5565b604080519115158252519081900360200190f35b6104b7610bb6565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156104f35781810151838201526020016104db565b505050509050019250505060405180910390f35b61046d6004803603602081101561051d57600080fd5b50356001600160a01b0316610c18565b61046d600480360360c081101561054357600080fd5b506001600160a01b038135811691602081013582169160408201358116916060810135821691608082013581169160a0013516610d0d565b61046d6004803603602081101561059157600080fd5b50356001600160a01b0316610f4c565b6069546000906001600160a01b031663955d0c2a87876105bf610bb6565b8888886040518763ffffffff1660e01b81526004018087815260200186815260200180602001806020018060200180602001858103855289818151815260200191508051906020019060200280838360005b83811015610629578181015183820152602001610611565b50505050905001858103845288818151815260200191508051906020019060200280838360005b83811015610668578181015183820152602001610650565b50505050905001858103835287818151815260200191508051906020019060200280838360005b838110156106a757818101518382015260200161068f565b50505050905001858103825286818151815260200191508051906020019060200280838360005b838110156106e65781810151838201526020016106ce565b505050509050019a5050505050505050505050602060405180830381600087803b15801561071357600080fd5b505af1158015610727573d6000803e3d6000fd5b505050506040513d602081101561073d57600080fd5b50519695505050505050565b600061075887878787876105a1565b50600080905060606000606960009054906101000a90046001600160a01b03166001600160a01b031663579e6e3f6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107b057600080fd5b505afa1580156107c4573d6000803e3d6000fd5b505050506040513d60208110156107da57600080fd5b505160408051600160e01b6322c6b519028152600481018c905290519192506001600160a01b038316916322c6b51991602480820192600092909190829003018186803b15801561082a57600080fd5b505afa15801561083e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260a081101561086757600080fd5b815160208301516040840151606085015160808601805194969395929491939283019291600160201b81111561089c57600080fd5b820160208101848111156108af57600080fd5b81518560208202830111600160201b821117156108cb57600080fd5b5050929190505050909192509091509050809350819450505084606a60000160008c815260200190815260200160002060000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600082511115610979578160008151811061093957fe5b60209081029190910181015160008c8152606a909252604090912060010180546001600160a01b0319166001600160a01b039092169190911790556109a4565b60008a8152606a6020526040902060010180546001600160a01b0319166001600160a01b0385161790555b606a6001018a9080600181540180825580915050906001820390600052602060002001600090919290919091505550606a60000160008b815260200190815260200160002060010160009054906101000a90046001600160a01b03166001600160a01b0316606a60000160008c815260200190815260200160002060000160009054906101000a90046001600160a01b03166001600160a01b03168b7f8b2add0dadc410067e1f705e52778a4c664672e150637c62a572cfb6101cecc68c8b8b604051808481526020018060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610aae578181015183820152602001610a96565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610aed578181015183820152602001610ad5565b505050509050019550505050505060405180910390a45050606b5498975050505050505050565b6000908152606a6020526040902080546001909101546001600160a01b0391821692911690565b610b43610ba5565b610b4c57600080fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6033546001600160a01b031690565b6033546001600160a01b0316331490565b60606068805480602002602001604051908101604052809291908181526020018280548015610c0e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610bf0575b5050505050905090565b600054610100900460ff1680610c315750610c31610f69565b80610c3f575060005460ff16155b610c7d57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180610fdf602e913960400191505060405180910390fd5b600054610100900460ff16158015610ca8576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610d09576000805461ff00191690555b5050565b600054610100900460ff1680610d265750610d26610f69565b80610d34575060005460ff16155b610d7257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180610fdf602e913960400191505060405180910390fd5b600054610100900460ff16158015610d9d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03871615801590610dbd57506001600160a01b03861615155b8015610dd157506001600160a01b03851615155b8015610de557506001600160a01b03841615155b8015610df957506001600160a01b03831615155b8015610e0d57506001600160a01b03821615155b610e615760408051600160e51b62461bcd02815260206004820152600f60248201527f496e76616c696420616464726573730000000000000000000000000000000000604482015290519081900360640190fd5b610e6a87610c18565b606980546001600160a01b03199081166001600160a01b0389811691909117909255606c80548216888416179055606d805482168784161790819055606e80548316878516178155606f80548416878616178155606880546001818101835560008390527fa2153420d844928b4421650203c77babc8b33d7f2e7b450e2966db0c220977539182018054968916968816969096179095559254815480860183558401805491881691871691909117905590548154938401909155910180549190931691161790558015610f43576000805461ff00191690555b50505050505050565b610f54610ba5565b610f5d57600080fd5b610f6681610f6f565b50565b303b1590565b6001600160a01b038116610f8257600080fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b039290921691909117905556fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820bf8f6a0106f666c1f381977ca95b6cc1db1e560cc93ade9217abce4ad0e9e91f0029", "address": "0x4dc980aA0786Dc3B5FC76BDb5C9c42cac796e68B", "implementation": "0x7399bed9a99aaCe7be796508A28434C60A7aA7a9", "version": "v0.12.7" }