Skip to main content

PCOLicenseParamsFacet

Summary

The PCOLicenseParamsFacet sets global parameters for the Geo Web land market.

Parameters include:

  • Beneficiary address for network fees, claim payments, & penalty fees
  • Payment token
  • Minimum For Sale Price
  • Network fee rate
  • Bid rejection penalty rate
  • Bid review period rate
  • Reclaim Dutch auction length

This contract is upgradeable so that parameters can be updated via governance when appropriate.

Code

PCOLicenseParamsFacet.sol

LibPCOLicenseParams.sol

IPCOLicenseParamsStore.sol

Contract Functions

PCOLicenseParamsFacet

onlyOwner

modifier onlyOwner()

initializeParams

function initializeParams(contract ICFABeneficiary beneficiary, contract ISuperToken paymentToken, contract ISuperfluid host, uint256 perSecondFeeNumerator, uint256 perSecondFeeDenominator, uint256 penaltyNumerator, uint256 penaltyDenominator, uint256 bidPeriodLengthInSeconds, uint256 reclaimAuctionLength, uint256 minForSalePrice) external

Initialize. - Must be the contract owner

Parameters

NameTypeDescription
beneficiarycontract ICFABeneficiaryBeneficiary of funds.
paymentTokencontract ISuperTokenPayment token.
hostcontract ISuperfluidSuperfluid host
perSecondFeeNumeratoruint256The numerator of the network-wide per second contribution fee.
perSecondFeeDenominatoruint256The denominator of the network-wide per second contribution fee.
penaltyNumeratoruint256The numerator of the penalty to pay to reject a bid.
penaltyDenominatoruint256The denominator of the penalty to pay to reject a bid.
bidPeriodLengthInSecondsuint256Bid period length in seconds
reclaimAuctionLengthuint256when the required bid amount reaches its minimum value.
minForSalePriceuint256

getHost

function getHost() external view returns (contract ISuperfluid)

Superfluid Host

setHost

function setHost(contract ISuperfluid host) external

Set Superfluid Host

getPaymentToken

function getPaymentToken() external view returns (contract ISuperToken)

Payment token

setPaymentToken

function setPaymentToken(contract ISuperToken paymentToken) external

Set Payment Token

getBeneficiary

function getBeneficiary() external view returns (contract ICFABeneficiary)

Beneficiary

setBeneficiary

function setBeneficiary(contract ICFABeneficiary beneficiary) external

Set Beneficiary

getPerSecondFeeNumerator

function getPerSecondFeeNumerator() external view returns (uint256)

The numerator of the network-wide per second contribution fee.

setPerSecondFeeNumerator

function setPerSecondFeeNumerator(uint256 perSecondFeeNumerator) external

Set Per Second Fee Numerator

getPerSecondFeeDenominator

function getPerSecondFeeDenominator() external view returns (uint256)

The denominator of the network-wide per second contribution fee.

setPerSecondFeeDenominator

function setPerSecondFeeDenominator(uint256 perSecondFeeDenominator) external

Set Per Second Fee Denominator

getPenaltyNumerator

function getPenaltyNumerator() external view returns (uint256)

The numerator of the penalty rate.

setPenaltyNumerator

function setPenaltyNumerator(uint256 penaltyNumerator) external

Set Penalty Numerator

getPenaltyDenominator

function getPenaltyDenominator() external view returns (uint256)

The denominator of the penalty rate.

setPenaltyDenominator

function setPenaltyDenominator(uint256 penaltyDenominator) external

Set Penalty Denominator

getReclaimAuctionLength

function getReclaimAuctionLength() external view returns (uint256)

the final/minimum required bid reached and maintained at the end of the auction.

setReclaimAuctionLength

function setReclaimAuctionLength(uint256 reclaimAuctionLength) external

Set Reclaim Auction Length

getBidPeriodLengthInSeconds

function getBidPeriodLengthInSeconds() external view returns (uint256)

Bid period length in seconds

setBidPeriodLengthInSeconds

function setBidPeriodLengthInSeconds(uint256 bidPeriodLengthInSeconds) external

Set Bid Period Length in seconds

getMinForSalePrice

function getMinForSalePrice() external view returns (uint256)

Minimum for sale price

setMinForSalePrice

function setMinForSalePrice(uint256 minForSalePrice) external

Set minimum for sale price

LibPCOLicenseParams

STORAGE_POSITION

bytes32 STORAGE_POSITION

DiamondStorage

struct DiamondStorage {
contract ICFABeneficiary beneficiary;
contract ISuperToken paymentToken;
contract ISuperfluid host;
uint256 perSecondFeeNumerator;
uint256 perSecondFeeDenominator;
uint256 penaltyNumerator;
uint256 penaltyDenominator;
uint256 bidPeriodLengthInSeconds;
uint256 reclaimAuctionLength;
uint256 minForSalePrice;
}

diamondStorage

function diamondStorage() internal pure returns (struct LibPCOLicenseParams.DiamondStorage ds)

IPCOLicenseParamsStore

getHost

function getHost() external view returns (contract ISuperfluid)

Superfluid Host

getPaymentToken

function getPaymentToken() external view returns (contract ISuperToken)

Payment token

getBeneficiary

function getBeneficiary() external view returns (contract ICFABeneficiary)

Beneficiary

getPerSecondFeeNumerator

function getPerSecondFeeNumerator() external view returns (uint256)

The numerator of the network-wide per second contribution fee.

getPerSecondFeeDenominator

function getPerSecondFeeDenominator() external view returns (uint256)

The denominator of the network-wide per second contribution fee.

getPenaltyNumerator

function getPenaltyNumerator() external view returns (uint256)

The numerator of the penalty rate.

getPenaltyDenominator

function getPenaltyDenominator() external view returns (uint256)

The denominator of the penalty rate.

getReclaimAuctionLength

function getReclaimAuctionLength() external view returns (uint256)

when the required bid amount reaches its minimum value.

getBidPeriodLengthInSeconds

function getBidPeriodLengthInSeconds() external view returns (uint256)

Bid period length in seconds

getMinForSalePrice

function getMinForSalePrice() external view returns (uint256)

Minimum for sale price