@oceanprotocol/keeper-contracts
Version:
Integration of SEAs, DID and OceanToken in Solidity
534 lines • 22 kB
JSON
{
"name": "DIDRegistryExtraFunctionality",
"abi": [
{
"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": "getDIDRegistrySize",
"outputs": [
{
"name": "size",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x39c035f0"
},
{
"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": 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": true,
"inputs": [
{
"name": "_did",
"type": "bytes32"
},
{
"name": "_grantee",
"type": "address"
}
],
"name": "getPermission",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x60d6c7cf"
},
{
"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": "getDIDRegisterIds",
"outputs": [
{
"name": "",
"type": "bytes32[]"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x70c6817a"
},
{
"constant": false,
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x715018a6"
},
{
"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": "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": "_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": "_grantee",
"type": "address"
}
],
"name": "revokePermission",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0xa6a8f17b"
},
{
"constant": true,
"inputs": [
{
"name": "_did",
"type": "bytes32"
}
],
"name": "getBlockNumberUpdated",
"outputs": [
{
"name": "blockNumberUpdated",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0xbbc1dede"
},
{
"constant": false,
"inputs": [
{
"name": "_did",
"type": "bytes32"
},
{
"name": "_grantee",
"type": "address"
}
],
"name": "grantPermission",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0xbc586456"
},
{
"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": "_newOwner",
"type": "address"
}
],
"name": "transferDIDOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0xd6f9d5eb"
},
{
"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": false,
"name": "_did",
"type": "bytes32"
},
{
"indexed": false,
"name": "_previousOwner",
"type": "address"
},
{
"indexed": false,
"name": "_newOwner",
"type": "address"
}
],
"name": "DIDOwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_did",
"type": "bytes32"
},
{
"indexed": true,
"name": "_owner",
"type": "address"
},
{
"indexed": true,
"name": "_grantee",
"type": "address"
}
],
"name": "DIDPermissionGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_did",
"type": "bytes32"
},
{
"indexed": true,
"name": "_owner",
"type": "address"
},
{
"indexed": true,
"name": "_grantee",
"type": "address"
}
],
"name": "DIDPermissionRevoked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"constant": true,
"inputs": [],
"name": "getNumber",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function",
"signature": "0xf2c9ecd8"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506115af806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80638da5cb5b116100ad578063bc58645611610071578063bc586456146104df578063c4d66de81461050b578063d6f9d5eb14610531578063f2c9ecd81461055d578063f2fde38b1461056557610121565b80638da5cb5b1461045a5780638f32d59b14610462578063a2d28d461461046a578063a6a8f17b14610496578063bbc1dede146104c257610121565b806360d6c7cf116100f457806360d6c7cf146103675780636c2ef5241461039357806370c6817a146103cc578063715018a6146104245780637ac5f7c81461042e57610121565b806322c6b5191461012657806339c035f0146101d75780633c6aa7b7146101f1578063534eb70614610231575b600080fd5b6101436004803603602081101561013c57600080fd5b503561058b565b60405180866001600160a01b03166001600160a01b03168152602001858152602001846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019060200280838360005b838110156101bf5781810151838201526020016101a7565b50505050905001965050505050505060405180910390f35b6101df610625565b60408051918252519081900360200190f35b61021d6004803603604081101561020757600080fd5b50803590602001356001600160a01b031661062b565b604080519115158252519081900360200190f35b6101df6004803603608081101561024757600080fd5b81359160208101359181019060608101604082013564010000000081111561026e57600080fd5b82018360208201111561028057600080fd5b803590602001918460208302840111640100000000831117156102a257600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092959493602081019350359150506401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106cd945050505050565b61021d6004803603604081101561037d57600080fd5b50803590602001356001600160a01b0316610949565b6103b0600480360360208110156103a957600080fd5b503561095c565b604080516001600160a01b039092168252519081900360200190f35b6103d4610977565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156104105781810151838201526020016103f8565b505050509050019250505060405180910390f35b61042c6109d2565b005b61042c6004803603604081101561044457600080fd5b50803590602001356001600160a01b0316610a2d565b6103b0610aee565b61021d610afd565b61042c6004803603604081101561048057600080fd5b50803590602001356001600160a01b0316610b0e565b61042c600480360360408110156104ac57600080fd5b50803590602001356001600160a01b0316610bc2565b6101df600480360360208110156104d857600080fd5b5035610c2b565b61042c600480360360408110156104f557600080fd5b50803590602001356001600160a01b0316610c40565b61042c6004803603602081101561052157600080fd5b50356001600160a01b0316610ca4565b61042c6004803603604081101561054757600080fd5b50803590602001356001600160a01b0316610d53565b6101df610e29565b61042c6004803603602081101561057b57600080fd5b50356001600160a01b0316610e2e565b6000818152606660209081526040918290208054600182015460028301546003840154600490940180548751818802810188019098528088526001600160a01b039485169793969290941694936060939283018282801561061557602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116105f7575b5050505050905091939590929450565b60675490565b60408051600160e01b63fc977f2f02815260666004820152602481018490526001600160a01b0383166044820152905160009173__DIDRegistryLibrary____________________9163fc977f2f91606480820192602092909190829003018186803b15801561069a57600080fd5b505af41580156106ae573d6000803e3d6000fd5b505050506040513d60208110156106c457600080fd5b50519392505050565b6000848152606660205260408120546001600160a01b0316158061070757506000858152606660205260409020546001600160a01b031633145b61074557604051600160e51b62461bcd0281526004018080602001828103825260308152602001806115266030913960400191505060405180910390fd5b610800825111156107a05760408051600160e51b62461bcd02815260206004820152601260248201527f496e76616c69642076616c75652073697a650000000000000000000000000000604482015290519081900360640190fd5b60408051600160e01b6336e2d0c9028152606660048201526024810187905260448101869052905160009173__DIDRegistryLibrary____________________916336e2d0c991606480820192602092909190829003018186803b15801561080757600080fd5b505af415801561081b573d6000803e3d6000fd5b505050506040513d602081101561083157600080fd5b5051905060005b84518110156108725761086a8786838151811061085157fe5b60200260200101516066610e4b9092919063ffffffff16565b600101610838565b5060008681526066602090815260408083205481513381850181905243938201849052606080835289519083015288518b966001600160a01b03909416958d957f8f8b755e50eb4efaa1a82e62cbfe4c58d83374b2f20db5960764ba69e062ae43958c959193919283926080840192918801918190849084905b838110156109045781810151838201526020016108ec565b50505050905090810190601f1680156109315780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a495945050505050565b60006109558383610f42565b9392505050565b6000908152606660205260409020546001600160a01b031690565b606060666001018054806020026020016040519081016040528092919081815260200182805480156109c857602002820191906000526020600020905b8154815260200190600101908083116109b4575b5050505050905090565b6109da610afd565b6109e357600080fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b60008281526066602052604090205482906001600160a01b03163314610a8757604051600160e51b62461bcd02815260040180806020018281038252602d8152602001806114f9602d913960400191505060405180910390fd5b6000610a9b6066858563ffffffff610f6d16565b604080518681526001600160a01b03861660208201528215158183015290519192507fa34c94e3893406b9fa302e5fbe4335b0cc46ca311d7ea24545426ec223a94f41919081900360600190a150505050565b6033546001600160a01b031690565b6033546001600160a01b0316331490565b60008281526066602052604090205482906001600160a01b03163314610b6857604051600160e51b62461bcd02815260040180806020018281038252602d8152602001806114f9602d913960400191505060405180910390fd5b610b7a6066848463ffffffff610e4b16565b604080518481526001600160a01b038416602082015281517f0c22bba9f36f0f2a7884650bedf42ce7b026851b573c93e4d8cd51f73eceda0f929181900390910190a1505050565b60008281526066602052604090205482906001600160a01b03163314610c1c57604051600160e51b62461bcd02815260040180806020018281038252602d8152602001806114f9602d913960400191505060405180910390fd5b610c268383611031565b505050565b60009081526066602052604090206003015490565b60008281526066602052604090205482906001600160a01b03163314610c9a57604051600160e51b62461bcd02815260040180806020018281038252602d8152602001806114f9602d913960400191505060405180910390fd5b610c268383611104565b600054610100900460ff1680610cbd5750610cbd6111be565b80610ccb575060005460ff16155b610d0957604051600160e51b62461bcd02815260040180806020018281038252602e815260200180611556602e913960400191505060405180910390fd5b600054610100900460ff16158015610d34576000805460ff1961ff0019909116610100171660011790555b610d3d826111c4565b8015610d4f576000805461ff00191690555b5050565b60008281526066602052604090205482906001600160a01b03163314610dad57604051600160e51b62461bcd02815260040180806020018281038252602d8152602001806114f9602d913960400191505060405180910390fd5b6000838152606660208190526040909120546001600160a01b031690610dda90858563ffffffff6112b816565b604080518581526001600160a01b03808416602083015285168183015290517fe36e06a31618f1e5c2057e2d659c72bb4d1e19526236dc13052a483978b55ea29181900360600190a150505050565b602a90565b610e36610afd565b610e3f57600080fd5b610e48816113b6565b50565b6001600160a01b038116610ea95760408051600160e51b62461bcd02815260206004820152601e60248201527f496e76616c69642061737365742070726f766964657220616464726573730000604482015290519081900360640190fd5b6001600160a01b038116301415610ef457604051600160e51b62461bcd0281526004018080602001828103825260308152602001806114c96030913960400191505060405180910390fd5b610eff838383611425565b610c26576000828152602084815260408220600401805460018101825590835291200180546001600160a01b0383166001600160a01b0319909116179055505050565b60009182526068602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60006001600160a01b038216610fcd5760408051600160e51b62461bcd02815260206004820152601e60248201527f496e76616c69642061737365742070726f766964657220616464726573730000604482015290519081900360640190fd5b6000610fda858585611454565b9050806000191415610ff0576000915050610955565b600084815260208690526040902060040180548290811061100d57fe5b600091825260209091200180546001600160a01b0319169055506001949350505050565b60008281526068602090815260408083206001600160a01b038516845290915290205460ff166110ab5760408051600160e51b62461bcd02815260206004820152601b60248201527f4772616e74656520616c726561647920776173207265766f6b65640000000000604482015290519081900360640190fd5b60008281526068602090815260408083206001600160a01b0385168085529252808320805460ff19169055519091339185917ff511018c667fb6eda32b85f42e7888d1cd1d5ec5b2b1147e6d26e946fde22d0d91a45050565b6001600160a01b0381166111625760408051600160e51b62461bcd02815260206004820152601760248201527f496e76616c6964206772616e7465652061646472657373000000000000000000604482015290519081900360640190fd5b60008281526068602090815260408083206001600160a01b0385168085529252808320805460ff19166001179055519091339185917faf464968a4f66dada6a1a5a33bd6c431a5dde662dd7d6aa715462130ec86d84591a45050565b303b1590565b600054610100900460ff16806111dd57506111dd6111be565b806111eb575060005460ff16155b61122957604051600160e51b62461bcd02815260040180806020018281038252602e815260200180611556602e913960400191505060405180910390fd5b600054610100900460ff16158015611254576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610d4f576000805461ff00191690555050565b6001600160a01b0381166113165760408051600160e51b62461bcd02815260206004820152601d60248201527f496e76616c6964206e657720444944206f776e65722061646472657373000000604482015290519081900360640190fd5b6000828152602084905260409020546001600160a01b03828116911614156113885760408051600160e51b62461bcd02815260206004820181905260248201527f4e6577204f776e657220697320616c7265616479206120444944206f776e6572604482015290519081900360640190fd5b60009182526020929092526040902080546001600160a01b0319166001600160a01b03909216919091179055565b6001600160a01b0381166113c957600080fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b600080611433858585611454565b9050806000191415611449576000915050610955565b506001949350505050565b6000805b6000848152602086905260409020600401548110156114bc57600084815260208690526040902060040180548290811061148e57fe5b6000918252602090912001546001600160a01b03848116911614156114b4579050610955565b600101611458565b5060001994935050505056fe4449442070726f76696465722073686f756c64206e6f74206265207468697320636f6e74726163742061646472657373496e76616c696420444944206f776e65722063616e20706572666f726d2074686973206f7065726174696f6e2e41747472696275746573206d75737420626520726567697374657265642062792074686520444944206f776e6572732e436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820e023ddfcc59a077d986ddd31e755facb6b1789a1d73c730c9ac4c9b8f523ae2f0029",
"address": "0x349b9787AF3780c3b9b8DDF93923558F52518c7E",
"implementation": "0x3CbC78204d83a25A9F57529F1F8B7258B3F2B444",
"version": "v0.13.2"
}