UNPKG

@oceanprotocol/keeper-contracts

Version:

Integration of SEAs, DID and OceanToken in Solidity

373 lines (372 loc) 16.6 kB
{ "name": "DIDRegistry", "abi": [ { "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": false, "inputs": [ { "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xf2fde38b" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "_did", "type": "bytes32" }, { "indexed": true, "name": "_owner", "type": "address" }, { "indexed": true, "name": "_checksum", "type": "bytes32" }, { "indexed": false, "name": "_value", "type": "string" }, { "indexed": false, "name": "_lastUpdatedBy", "type": "address" }, { "indexed": false, "name": "_blockNumberUpdated", "type": "uint256" } ], "name": "DIDAttributeRegistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "name": "_did", "type": "bytes32" }, { "indexed": false, "name": "_provider", "type": "address" }, { "indexed": false, "name": "state", "type": "bool" } ], "name": "DIDProviderRemoved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "name": "_did", "type": "bytes32" }, { "indexed": false, "name": "_provider", "type": "address" } ], "name": "DIDProviderAdded", "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": "_owner", "type": "address" } ], "name": "initialize", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xc4d66de8" }, { "constant": false, "inputs": [ { "name": "_did", "type": "bytes32" }, { "name": "_checksum", "type": "bytes32" }, { "name": "_providers", "type": "address[]" }, { "name": "_value", "type": "string" } ], "name": "registerAttribute", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x534eb706" }, { "constant": false, "inputs": [ { "name": "_did", "type": "bytes32" }, { "name": "_provider", "type": "address" } ], "name": "addDIDProvider", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xa2d28d46" }, { "constant": false, "inputs": [ { "name": "_did", "type": "bytes32" }, { "name": "_provider", "type": "address" } ], "name": "removeDIDProvider", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x7ac5f7c8" }, { "constant": true, "inputs": [ { "name": "_did", "type": "bytes32" }, { "name": "_provider", "type": "address" } ], "name": "isDIDProvider", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x3c6aa7b7" }, { "constant": true, "inputs": [ { "name": "_did", "type": "bytes32" } ], "name": "getDIDRegister", "outputs": [ { "name": "owner", "type": "address" }, { "name": "lastChecksum", "type": "bytes32" }, { "name": "lastUpdatedBy", "type": "address" }, { "name": "blockNumberUpdated", "type": "uint256" }, { "name": "providers", "type": "address[]" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x22c6b519" }, { "constant": true, "inputs": [ { "name": "_did", "type": "bytes32" } ], "name": "getBlockNumberUpdated", "outputs": [ { "name": "blockNumberUpdated", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0xbbc1dede" }, { "constant": true, "inputs": [ { "name": "_did", "type": "bytes32" } ], "name": "getDIDOwner", "outputs": [ { "name": "didOwner", "type": "address" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x6c2ef524" }, { "constant": true, "inputs": [], "name": "getDIDRegistrySize", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x39c035f0" }, { "constant": true, "inputs": [], "name": "getDIDRegisterIds", "outputs": [ { "name": "", "type": "bytes32[]" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x70c6817a" } ], "bytecode": "0x608060405234801561001057600080fd5b50611193806100206000396000f3fe608060405234801561001057600080fd5b5060043610610107576000357c0100000000000000000000000000000000000000000000000000000000900480637ac5f7c8116100a9578063a2d28d4611610083578063a2d28d4614610424578063bbc1dede14610450578063c4d66de81461046d578063f2fde38b1461049357610107565b80637ac5f7c8146103e85780638da5cb5b146104145780638f32d59b1461041c57610107565b8063534eb706116100e5578063534eb706146102175780636c2ef5241461034d57806370c6817a14610386578063715018a6146103de57610107565b806322c6b5191461010c57806339c035f0146101bd5780633c6aa7b7146101d7575b600080fd5b6101296004803603602081101561012257600080fd5b50356104b9565b6040518086600160a060020a0316600160a060020a0316815260200185815260200184600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019060200280838360005b838110156101a557818101518382015260200161018d565b50505050905001965050505050505060405180910390f35b6101c5610553565b60408051918252519081900360200190f35b610203600480360360408110156101ed57600080fd5b5080359060200135600160a060020a0316610559565b604080519115158252519081900360200190f35b6101c56004803603608081101561022d57600080fd5b81359160208101359181019060608101604082013564010000000081111561025457600080fd5b82018360208201111561026657600080fd5b8035906020019184602083028401116401000000008311171561028857600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092959493602081019350359150506401000000008111156102d857600080fd5b8201836020820111156102ea57600080fd5b8035906020019184600183028401116401000000008311171561030c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610611945050505050565b61036a6004803603602081101561036357600080fd5b50356108fd565b60408051600160a060020a039092168252519081900360200190f35b61038e610918565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156103ca5781810151838201526020016103b2565b505050509050019250505060405180910390f35b6103e6610973565b005b6103e6600480360360408110156103fe57600080fd5b5080359060200135600160a060020a03166109db565b61036a610ab2565b610203610ac1565b6103e66004803603604081101561043a57600080fd5b5080359060200135600160a060020a0316610ad2565b6101c56004803603602081101561046657600080fd5b5035610bf6565b6103e66004803603602081101561048357600080fd5b5035600160a060020a0316610c0b565b6103e6600480360360208110156104a957600080fd5b5035600160a060020a0316610cba565b600081815260666020908152604091829020805460018201546002830154600384015460049094018054875181880281018801909852808852600160a060020a039485169793969290941694936060939283018282801561054357602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610525575b5050505050905091939590929450565b60675490565b604080517ffc977f2f0000000000000000000000000000000000000000000000000000000081526066600482015260248101849052600160a060020a0383166044820152905160009173__DIDRegistryLibrary____________________9163fc977f2f91606480820192602092909190829003018186803b1580156105de57600080fd5b505af41580156105f2573d6000803e3d6000fd5b505050506040513d602081101561060857600080fd5b50519392505050565b600084815260666020526040812054600160a060020a0316158061064b5750600085815260666020526040902054600160a060020a031633145b6106895760405160e560020a62461bcd02815260040180806020018281038252603081526020018061110a6030913960400191505060405180910390fd5b610800825111156106e4576040805160e560020a62461bcd02815260206004820152601260248201527f496e76616c69642076616c75652073697a650000000000000000000000000000604482015290519081900360640190fd5b604080517f36e2d0c9000000000000000000000000000000000000000000000000000000008152606660048201526024810187905260448101869052905160009173__DIDRegistryLibrary____________________916336e2d0c991606480820192602092909190829003018186803b15801561076157600080fd5b505af4158015610775573d6000803e3d6000fd5b505050506040513d602081101561078b57600080fd5b5051905060005b84518110156108265760006107c6888784815181106107ad57fe5b60200260200101516066610cd79092919063ffffffff16565b90508061081d576040805160e560020a62461bcd02815260206004820152601660248201527f70726f766964657220776173206e6f7420616464656400000000000000000000604482015290519081900360640190fd5b50600101610792565b5060008681526066602090815260408083205481513381850181905243938201849052606080835289519083015288518b96600160a060020a03909416958d957f8f8b755e50eb4efaa1a82e62cbfe4c58d83374b2f20db5960764ba69e062ae43958c959193919283926080840192918801918190849084905b838110156108b85781810151838201526020016108a0565b50505050905090810190601f1680156108e55780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a495945050505050565b600090815260666020526040902054600160a060020a031690565b6060606660010180548060200260200160405190810160405280929190818152602001828054801561096957602002820191906000526020600020905b815481526020019060010190808311610955575b5050505050905090565b61097b610ac1565b61098457600080fd5b603354604051600091600160a060020a0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36033805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000828152606660205260409020548290600160a060020a03163314610a4b576040805160e560020a62461bcd02815260206004820152601160248201527f496e76616c696420444944206f776e6572000000000000000000000000000000604482015290519081900360640190fd5b6000610a5f6066858563ffffffff610de216565b60408051868152600160a060020a03861660208201528215158183015290519192507fa34c94e3893406b9fa302e5fbe4335b0cc46ca311d7ea24545426ec223a94f41919081900360600190a150505050565b603354600160a060020a031690565b603354600160a060020a0316331490565b6000828152606660205260409020548290600160a060020a03163314610b42576040805160e560020a62461bcd02815260206004820152601160248201527f496e76616c696420444944206f776e6572000000000000000000000000000000604482015290519081900360640190fd5b6000610b566066858563ffffffff610cd716565b905080610bad576040805160e560020a62461bcd02815260206004820152601660248201527f70726f766964657220776173206e6f7420616464656400000000000000000000604482015290519081900360640190fd5b60408051858152600160a060020a038516602082015281517f0c22bba9f36f0f2a7884650bedf42ce7b026851b573c93e4d8cd51f73eceda0f929181900390910190a150505050565b60009081526066602052604090206003015490565b600054610100900460ff1680610c245750610c24610eb3565b80610c32575060005460ff16155b610c705760405160e560020a62461bcd02815260040180806020018281038252602e81526020018061113a602e913960400191505060405180910390fd5b600054610100900460ff16158015610c9b576000805460ff1961ff0019909116610100171660011790555b610ca482610eb9565b8015610cb6576000805461ff00191690555b5050565b610cc2610ac1565b610ccb57600080fd5b610cd481610fba565b50565b6000600160a060020a038216610d37576040805160e560020a62461bcd02815260206004820152601e60248201527f496e76616c69642061737365742070726f766964657220616464726573730000604482015290519081900360640190fd5b600160a060020a038216301415610d825760405160e560020a62461bcd0281526004018080602001828103825260308152602001806110da6030913960400191505060405180910390fd5b610d8d848484611036565b610dd75760008381526020858152604082206004018054600181018255908352912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5060015b9392505050565b6000600160a060020a038216610e42576040805160e560020a62461bcd02815260206004820152601e60248201527f496e76616c69642061737365742070726f766964657220616464726573730000604482015290519081900360640190fd5b6000610e4f858585611065565b9050806000191415610e65576000915050610ddb565b6000848152602086905260409020600401805482908110610e8257fe5b6000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff19169055506001949350505050565b303b1590565b600054610100900460ff1680610ed25750610ed2610eb3565b80610ee0575060005460ff16155b610f1e5760405160e560020a62461bcd02815260040180806020018281038252602e81526020018061113a602e913960400191505060405180910390fd5b600054610100900460ff16158015610f49576000805460ff1961ff0019909116610100171660011790555b6033805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610cb6576000805461ff00191690555050565b600160a060020a038116610fcd57600080fd5b603354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36033805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600080611044858585611065565b905080600019141561105a576000915050610ddb565b506001949350505050565b6000805b6000848152602086905260409020600401548110156110cd57600084815260208690526040902060040180548290811061109f57fe5b600091825260209091200154600160a060020a03848116911614156110c5579050610ddb565b600101611069565b5060001994935050505056fe4449442070726f76696465722073686f756c64206e6f74206265207468697320636f6e7472616374206164647265737341747472696275746573206d75737420626520726567697374657265642062792074686520444944206f776e6572732e436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a7230582094de876c87e7581383335a419e2764fc97b93e222225f82baf45242da15413f50029", "address": "0xC4A1D6d4778C9A17D5e37797dA2FaB48FA9d01f6", "implementation": "0xA2A6D715791CE06deEBdBa7f6064DD1f8c762206", "version": "v0.10.3" }