Protocol Fee (with Server)
1. Summarize
ProtocolFee 컨트랙트는 특정 전략에서 발생하는 수수료를 처리하고 관리하는 컨트랙트입니다. 이 컨트랙트는 수수료를 받아서 내부적으로 정산하고, 이를 다른 컨트랙트 (QVEstaking)에 분배를 위해서 전송하는 기능을 제공합니다.
2. Document Detail
2-1. 함수들
SettleFromStrategy_
uint256 amount, address sender
bool
전략에서 발생한 수수료를 받아 정산합니다.
external
SendToUnstakeAccount
-
bool
정산된 수수료를 QVEstaking 컨트랙트에 분배합니다.
internal
_SettleAfter
uint256 receiveAmount, address sender
bool
수수료를 받아서 내부적으로 정산합니다.
internal
2-2. 변수, 이벤트, 매핑 등
totalSettle
변수
총 정산 횟수를 저장하는 카운터입니다.
-
distributePeriod
변수
수수료 분배 주기를 나타내는 변수입니다. 기본값은 7일입니다.
-
WARN_RECEIVE
상수
경고 메시지입니다. 전략 지갑에서 정산을 시도할 때 사용됩니다.
-
meanlessTransfer
이벤트
데이터 없이 이더를 전송할 때 발생하는 이벤트입니다.
address, uint256
totalBalance
변수
총 정산된 수수료의 잔액을 저장하는 변수입니다.
-
Strategies
구조체
전략별로 쌓인 금액과 마지막으로 정산받은 시간을 저장하는 구조체입니다.
uint256, uint256
StrategiesBalance
매핑
주소별로 Strategies 구조체를 저장하는 매핑입니다.
address => Strategies
3. 기타 주의사항
fallback및receive함수가 있어서 컨트랙트에 데이터 없이 이더를 전송하면 이더가 반환됩니다.QVEstaking컨트랙트와 상호 작용하는 부분이 있으므로 해당 컨트랙트의 동작도 이해하는 것이 중요합니다.SettleFromStrategy_함수를 통해 수수료를 전송받을 때, 전송된 이더의 양과 함수의 입력 파라미터로 주어진 양이 일치해야 합니다.
Last updated