UNPKG

@oceanprotocol/keeper-contracts

Version:

Integration of SEAs, DID and OceanToken in Solidity

476 lines 24.6 kB
{ "name": "TemplateStoreManager", "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": "Id", "type": "bytes32" }, { "indexed": true, "name": "name", "type": "string" }, { "indexed": false, "name": "conditionTypes", "type": "address[]" }, { "indexed": false, "name": "actorTypeIds", "type": "bytes32[]" } ], "name": "TemplateProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "Id", "type": "bytes32" }, { "indexed": false, "name": "state", "type": "bool" } ], "name": "TemplateApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "Id", "type": "bytes32" }, { "indexed": false, "name": "state", "type": "bool" } ], "name": "TemplateRevoked", "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": true, "inputs": [ { "name": "templateName", "type": "string" } ], "name": "generateId", "outputs": [ { "name": "Id", "type": "bytes32" } ], "payable": false, "stateMutability": "pure", "type": "function", "signature": "0x19a9c2f1" }, { "constant": false, "inputs": [ { "name": "_id", "type": "address" }, { "name": "_conditionTypes", "type": "address[]" }, { "name": "_actorTypeIds", "type": "bytes32[]" }, { "name": "name", "type": "string" } ], "name": "proposeTemplate", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x09a56316" }, { "constant": false, "inputs": [ { "name": "_id", "type": "bytes32" }, { "name": "_conditionTypes", "type": "address[]" }, { "name": "_actorTypeIds", "type": "bytes32[]" }, { "name": "name", "type": "string" } ], "name": "proposeTemplate", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x63b476d7" }, { "constant": false, "inputs": [ { "name": "_id", "type": "bytes32" } ], "name": "approveTemplate", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x19974adf" }, { "constant": false, "inputs": [ { "name": "_id", "type": "bytes32" } ], "name": "revokeTemplate", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x3d4e7cc8" }, { "constant": false, "inputs": [ { "name": "_actorType", "type": "string" } ], "name": "registerTemplateActorType", "outputs": [ { "name": "actorTypeId", "type": "bytes32" } ], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0xf9acae19" }, { "constant": false, "inputs": [ { "name": "_Id", "type": "bytes32" } ], "name": "deregisterTemplateActorType", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function", "signature": "0x5e4cd44c" }, { "constant": true, "inputs": [ { "name": "_id", "type": "bytes32" } ], "name": "getTemplate", "outputs": [ { "name": "state", "type": "uint8" }, { "name": "owner", "type": "address" }, { "name": "lastUpdatedBy", "type": "address" }, { "name": "blockNumberUpdated", "type": "uint256" }, { "name": "conditionTypes", "type": "address[]" }, { "name": "actorTypes", "type": "bytes32[]" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x9757739b" }, { "constant": true, "inputs": [], "name": "getTemplateActorTypeIds", "outputs": [ { "name": "actorTypes", "type": "bytes32[]" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0xbb0ceaa1" }, { "constant": true, "inputs": [ { "name": "actorType", "type": "string" } ], "name": "getTemplateActorTypeId", "outputs": [ { "name": "", "type": "bytes32" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x05497def" }, { "constant": true, "inputs": [ { "name": "_Id", "type": "bytes32" } ], "name": "getTemplateActorTypeValue", "outputs": [ { "name": "actorType", "type": "string" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x08c57d7c" }, { "constant": true, "inputs": [ { "name": "_Id", "type": "bytes32" } ], "name": "getTemplateActorTypeState", "outputs": [ { "name": "state", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x4441ce05" }, { "constant": true, "inputs": [], "name": "getTemplateListSize", "outputs": [ { "name": "size", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x722e0b0e" }, { "constant": true, "inputs": [ { "name": "_id", "type": "bytes32" } ], "name": "isTemplateIdApproved", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0x50669e84" }, { "constant": true, "inputs": [ { "name": "_id", "type": "address" } ], "name": "isTemplateApproved", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "view", "type": "function", "signature": "0xb727a255" } ], "bytecode": "0x608060405234801561001057600080fd5b50611d2c806100206000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063715018a6116100ad578063b727a25511610071578063b727a2551461079b578063bb0ceaa1146107c1578063c4d66de814610819578063f2fde38b1461083f578063f9acae19146108655761012c565b8063715018a61461065b578063722e0b0e146106635780638da5cb5b1461066b5780638f32d59b1461068f5780639757739b146106975761012c565b80633d4e7cc8116100f45780633d4e7cc8146104245780634441ce051461044157806350669e841461045e5780635e4cd44c1461048f57806363b476d7146104ac5761012c565b806305497def1461013157806308c57d7c146101b157806309a563161461024357806319974adf1461036157806319a9c2f114610380575b600080fd5b61019f6004803603602081101561014757600080fd5b810190602081018135600160201b81111561016157600080fd5b82018360208201111561017357600080fd5b803590602001918460018302840111600160201b8311171561019457600080fd5b5090925090506108d3565b60408051918252519081900360200190f35b6101ce600480360360208110156101c757600080fd5b5035610925565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102085781810151838201526020016101f0565b50505050905090810190601f1680156102355780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61019f6004803603608081101561025957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561028357600080fd5b82018360208201111561029557600080fd5b803590602001918460208302840111600160201b831117156102b657600080fd5b919390929091602081019035600160201b8111156102d357600080fd5b8201836020820111156102e557600080fd5b803590602001918460208302840111600160201b8311171561030657600080fd5b919390929091602081019035600160201b81111561032357600080fd5b82018360208201111561033557600080fd5b803590602001918460018302840111600160201b8311171561035657600080fd5b5090925090506109c6565b61037e6004803603602081101561037757600080fd5b5035610ab6565b005b61019f6004803603602081101561039657600080fd5b810190602081018135600160201b8111156103b057600080fd5b8201836020820111156103c257600080fd5b803590602001918460018302840111600160201b831117156103e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610b86945050505050565b61037e6004803603602081101561043a57600080fd5b5035610bfd565b61019f6004803603602081101561045757600080fd5b5035610d2a565b61047b6004803603602081101561047457600080fd5b5035610d50565b604080519115158252519081900360200190f35b61037e600480360360208110156104a557600080fd5b5035610d78565b61019f600480360360808110156104c257600080fd5b81359190810190604081016020820135600160201b8111156104e357600080fd5b8201836020820111156104f557600080fd5b803590602001918460208302840111600160201b8311171561051657600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561056557600080fd5b82018360208201111561057757600080fd5b803590602001918460208302840111600160201b8311171561059857600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156105e757600080fd5b8201836020820111156105f957600080fd5b803590602001918460018302840111600160201b8311171561061a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610d9d945050505050565b61037e610f33565b61019f610f8e565b610673610f95565b604080516001600160a01b039092168252519081900360200190f35b61047b610fa4565b6106b4600480360360208110156106ad57600080fd5b5035610fb5565b604051808760038111156106c457fe5b60ff168152602001866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b031681526020018481526020018060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561074257818101518382015260200161072a565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610781578181015183820152602001610769565b505050509050019850505050505050505060405180910390f35b61047b600480360360208110156107b157600080fd5b50356001600160a01b03166110bf565b6107c96110ea565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156108055781810151838201526020016107ed565b505050509050019250505060405180910390f35b61037e6004803603602081101561082f57600080fd5b50356001600160a01b0316611145565b61037e6004803603602081101561085557600080fd5b50356001600160a01b0316611252565b61019f6004803603602081101561087b57600080fd5b810190602081018135600160201b81111561089557600080fd5b8201836020820111156108a757600080fd5b803590602001918460018302840111600160201b831117156108c857600080fd5b50909250905061126c565b600061091e83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250606a9392505063ffffffff6112c8169050565b9392505050565b6000818152606a602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156109ba5780601f1061098f576101008083540402835291602001916109ba565b820191906000526020600020905b81548152906001019060200180831161099d57829003601f168201915b50505050509050919050565b6000808860405160200180826001600160a01b03166001600160a01b031660601b8152601401915050604051602081830303815290604052805190602001209050610aa98189898080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808d0282810182019093528c82529093508c92508b91829185019084908082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a9150899081908401838280828437600092019190915250610d9d92505050565b9998505050505050505050565b610abe610fa4565b610ac757600080fd5b610ad860688263ffffffff6113bd16565b600260008281526068602052604090205460ff166003811115610af757fe5b14610b4c5760408051600160e51b62461bcd02815260206004820152601a60248201527f556e61626c6520746f20617070726f76652074656d706c617465000000000000604482015290519081900360640190fd5b6040805160018152905182917fad91d966b56053c328b448a78e37b4ac4f80dfe07d974f061a736ef4ab2d896d919081900360200190a250565b6000816040516020018082805190602001908083835b60208310610bbb5780518252601f199092019160209182019101610b9c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001209050919050565b80610c06610fa4565b80610c2c575060008181526068602052604090205461010090046001600160a01b031633145b610c6a57604051600160e51b62461bcd028152600401808060200182810382526028815260200180611cab6028913960400191505060405180910390fd5b610c7b60688363ffffffff61147e16565b600360008381526068602052604090205460ff166003811115610c9a57fe5b14610cef5760408051600160e51b62461bcd02815260206004820152601960248201527f556e61626c6520746f207265766f6b652074656d706c61746500000000000000604482015290519081900360640190fd5b6040805160018152905183917f789aa870445d1c1019af51e8e321a07c872940e031ed9ab481ce9bcfc75d2f9b919081900360200190a25050565b6000818152606a602052604081206001015460ff166002811115610d4a57fe5b92915050565b6000600260008381526068602052604090205460ff166003811115610d7157fe5b1492915050565b610d80610fa4565b610d8957600080fd5b610d9a606a8263ffffffff61151216565b50565b60695460009081610db7606888888863ffffffff61153116565b9050818111610e105760408051600160e51b62461bcd02815260206004820152601a60248201527f556e61626c6520746f2070726f706f73652074656d706c617465000000000000604482015290519081900360640190fd5b836040518082805190602001908083835b60208310610e405780518252601f199092019160209182019101610e21565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020877f0a4c4eaaff6fbb3e55708fb33d47d4fcdf7a644ad6fa048c98295ec4531e4b128888604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610ed5578181015183820152602001610ebd565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610f14578181015183820152602001610efc565b5050505090500194505050505060405180910390a39695505050505050565b610f3b610fa4565b610f4457600080fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6069545b90565b6033546001600160a01b031690565b6033546001600160a01b0316331490565b6000818152606860209081526040918290208054600182015460028301546003909301805486518187028101870190975280875260ff8416966101009094046001600160a01b039081169693169493606093849391929083018282801561104557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611027575b50505050509150606860000160008881526020019081526020016000206004018054806020026020016040519081016040528092919081815260200182805480156110af57602002820191906000526020600020905b81548152602001906001019080831161109b575b5050505050905091939550919395565b600060026001600160a01b03831660009081526066602052604090205460ff166003811115610d7157fe5b6060606a60010180548060200260200160405190810160405280929190818152602001828054801561113b57602002820191906000526020600020905b815481526020019060010190808311611127575b5050505050905090565b600054610100900460ff168061115e575061115e611707565b8061116c575060005460ff16155b6111aa57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180611cd3602e913960400191505060405180910390fd5b600054610100900460ff161580156111d5576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166112335760408051600160e51b62461bcd02815260206004820152600f60248201527f496e76616c696420616464726573730000000000000000000000000000000000604482015290519081900360640190fd5b61123c8261170d565b801561124e576000805461ff00191690555b5050565b61125a610fa4565b61126357600080fd5b610d9a81611801565b6000611276610fa4565b61127f57600080fd5b61091e83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250606a9392505063ffffffff611870169050565b600080826040516020018082805190602001908083835b602083106112fe5780518252601f1990920191602091820191016112df565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012090506001600281111561134857fe5b60008281526020869052604090206001015460ff16600281111561136857fe5b1461091e5760408051600160e51b62461bcd02815260206004820152601a60248201527f4163746f72207479706520646f6573206e6f7420657869737421000000000000604482015290519081900360640190fd5b600160008281526020849052604090205460ff1660038111156113dc57fe5b146114315760408051600160e51b62461bcd02815260206004820152601560248201527f54656d706c617465206e6f742050726f706f7365640000000000000000000000604482015290519081900360640190fd5b600081815260208390526040902080546002919060ff19166001835b02179055506000908152602091909152604090206001810180546001600160a01b0319163317905543600290910155565b600260008281526020849052604090205460ff16600381111561149d57fe5b146114f25760408051600160e51b62461bcd02815260206004820152601560248201527f54656d706c617465206e6f7420417070726f7665640000000000000000000000604482015290519081900360640190fd5b600081815260208390526040902080546003919060ff191660018361144d565b600090815260209190915260409020600101805460ff19166002179055565b60008060008581526020879052604090205460ff16600381111561155157fe5b146115a65760408051600160e51b62461bcd02815260206004820152601160248201527f496420616c726561647920657869737473000000000000000000000000000000604482015290519081900360640190fd5b6115b084846119e9565b6116045760408051600160e51b62461bcd02815260206004820181905260248201527f496e76616c69642070726f706f73656420636f6e646974696f6e207479706573604482015290519081900360640190fd5b6040805160c0810190915280600181523360208083018290526040808401929092524360608401526080830187905260a0909201859052600087815291889052902081518154829060ff1916600183600381111561165e57fe5b02179055506020828101518254610100600160a81b0319166101006001600160a01b039283160217835560408401516001840180546001600160a01b0319169190921617905560608301516002830155608083015180516116c59260038501920190611b53565b5060a082015180516116e1916004840191602090910190611bb8565b505050506001938401805494850181556000818152602090209094019290925550505490565b303b1590565b600054610100900460ff16806117265750611726611707565b80611734575060005460ff16155b61177257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180611cd3602e913960400191505060405180910390fd5b600054610100900460ff1615801561179d576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3801561124e576000805461ff00191690555050565b6001600160a01b03811661181457600080fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b0392909216919091179055565b600080826040516020018082805190602001908083835b602083106118a65780518252601f199092019160209182019101611887565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001209050600160028111156118f057fe5b60008281526020869052604090206001015460ff16600281111561191057fe5b14156119665760408051600160e51b62461bcd02815260206004820152601960248201527f4163746f72207479706520616c72656164792065786973747300000000000000604482015290519081900360640190fd5b60408051808201909152838152602081016001905260008281526020868152604090912082518051919261199f92849290910190611bff565b50602082015160018083018054909160ff19909116908360028111156119c157fe5b0217905550505060018085018054918201815560009081526020902001819055905092915050565b6000805b8251811015611b4957600084848381518110611a0557fe5b60200260200101518660405160200180848152602001836001600160a01b03166001600160a01b031660601b815260140182815260200193505050506040516020818303038152906040528051906020012090506000848381518110611a6757fe5b60200260200101519050806001600160a01b031663cb4e57e887886040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b158015611abd57600080fd5b505afa158015611ad1573d6000803e3d6000fd5b505050506040513d6020811015611ae757600080fd5b50518214611b3f5760408051600160e51b62461bcd02815260206004820152601660248201527f496e76616c696420636f6e646974696f6e207479706500000000000000000000604482015290519081900360640190fd5b50506001016119ed565b5060019392505050565b828054828255906000526020600020908101928215611ba8579160200282015b82811115611ba857825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611b73565b50611bb4929150611c6c565b5090565b828054828255906000526020600020908101928215611bf3579160200282015b82811115611bf3578251825591602001919060010190611bd8565b50611bb4929150611c90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611c4057805160ff1916838001178555611bf3565b82800160010185558215611bf35791820182811115611bf3578251825591602001919060010190611bd8565b610f9291905b80821115611bb45780546001600160a01b0319168155600101611c72565b610f9291905b80821115611bb45760008155600101611c9656fe496e76616c696420636f6e7472616374206f776e6572206f722074656d706c617465206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a7230582099b55ef2e39b054ec20f474784b1d99b502b66aa1d1b9a59da150429aee7d1140029", "address": "0xF2Cf3761c166c6D85d07299427821D18A4329cd1", "implementation": "0x03b4FeC7aCD529FC9C501fdfF49Be10Eb051Aee7", "version": "v0.13.2" }