diff --git a/contracts/src/abstracts/AProtocolClaimer.sol b/contracts/src/abstracts/AProtocolClaimer.sol index d89cebf..aacb5a9 100644 --- a/contracts/src/abstracts/AProtocolClaimer.sol +++ b/contracts/src/abstracts/AProtocolClaimer.sol @@ -1,9 +1,15 @@ // SPDX-License-Identifier: GPL-3.0-or-later pragma solidity 0.8.20; -abstract contract AProtocolClaimer { - event ProtocolRewardsHarvest(); +import { ReentrancyGuard } from "solmate/utils/ReentrancyGuard.sol"; +import { AOperator } from "./AOperator.sol"; +/** + * @title Incentivized Locker contract + * @author 0xtekgrinder + * @notice Locker contract capable of claiming protocol rewards + */ +abstract contract AProtocolClaimer is ReentrancyGuard, AOperator { /** * @dev Harvest rewards & send them to the Controller */ @@ -12,8 +18,7 @@ abstract contract AProtocolClaimer { /** * @notice Harvest rewards */ - function harvest() external { - emit ProtocolRewardsHarvest(); + function harvest() external nonReentrant onlyOperatorOrOwner { _harvest(); } }