Skip to content

Count Transfer Manager

Satyam Agrawal edited this page Apr 17, 2019 · 3 revisions

Count Transfer Manager

  • Introduced in: 1.0.0
  • Contract name: CountTransferManager.sol
  • Type: Transfer Manager Module
  • Compatible Protocol Version: 1.* - *

How it works

This contract is a transfer manager for limiting the maximum number of concurrent token holders.

Key functionalities (as defined in the Smart Contract)

Initialization

This function is used to initialize the variables on the entire contract

    /**
     * @notice Used to initialize the variables of the contract
     * @param _maxHolderCount Maximum no. of holders this module allows the SecurityToken to have
     */
    function configure(uint256 _maxHolderCount) public onlyFactory

Transfer Restriction

This function is used to verify the transfer transaction and prevent a transfer if it passes the allowed amount of the token holders limit.

    /** 
     * @notice Used to verify the transfer transaction and prevent a transfer if it passes the allowed amount of token holders
     * @param _from Address of the sender
     * @param _to Address of the receiver
     * @param _amount Amount to send
     */
    function executeTransfer(
        address _from,
        address _to,
        uint256 _amount,
        bytes calldata /*_data*/
    )
        external
        returns(Result)

ChangeHolderCount

This function allows the issuer to set the cap for the number of token holders there can be for an STO.

   /**
    * @notice Sets the cap for the amount of token holders there can be
    * @param _maxHolderCount is the new maximum amount of token holders
    */
    function changeHolderCount(uint256 _maxHolderCount) public withPerm(ADMIN)
Clone this wiki locally