diff --git a/contracts/dlp/DataLiquidityPoolImplementation.sol b/contracts/dlp/DataLiquidityPoolImplementation.sol index a116343..c7e82fa 100644 --- a/contracts/dlp/DataLiquidityPoolImplementation.sol +++ b/contracts/dlp/DataLiquidityPoolImplementation.sol @@ -85,6 +85,13 @@ contract DataLiquidityPoolImplementation is */ event TeePoolUpdated(address newTeePool); + /** + * @notice Triggered when the dataRegistry has been updated + * + * @param newDataRegistry new data registry + */ + event DataRegistryUpdated(address newDataRegistry); + error FileAlreadyAdded(); error InvalidScore(); error InvalidAttestator(); @@ -250,6 +257,17 @@ contract DataLiquidityPoolImplementation is emit TeePoolUpdated(newTeePool); } + /** + * @notice Updates the dataRegistry + * + * @param newDataRegistry new data registry + */ + function updateDataRegistry(address newDataRegistry) external override onlyOwner { + dataRegistry = IDataRegistry(newDataRegistry); + + emit DataRegistryUpdated(newDataRegistry); + } + /** * @notice Updates the proofInstruction * diff --git a/contracts/dlp/interfaces/IDataLiquidityPool.sol b/contracts/dlp/interfaces/IDataLiquidityPool.sol index b1c9aac..5c2d547 100644 --- a/contracts/dlp/interfaces/IDataLiquidityPool.sol +++ b/contracts/dlp/interfaces/IDataLiquidityPool.sol @@ -51,6 +51,7 @@ interface IDataLiquidityPool { function unpause() external; function updateFileRewardFactor(uint256 newFileRewardFactor) external; function updateTeePool(address newTeePool) external; + function updateDataRegistry(address newDataRegistry) external; function updateProofInstruction(string calldata newProofInstruction) external; function updatePublicKey(string calldata newProofInstruction) external; function requestReward(uint256 registryFileId, uint256 proofIndex) external;