View Source: contracts/SecurityTokenRegistry.sol
↗ Extends: EternalStorage , Proxy ↘ Derived Contracts: SecurityTokenRegistryMock
SecurityTokenRegistry
Contract Members
Constants & Variables
Copy bytes32 internal constant INITIALIZE ;
bytes32 internal constant POLYTOKEN ;
bytes32 internal constant STLAUNCHFEE ;
bytes32 internal constant TICKERREGFEE ;
bytes32 internal constant EXPIRYLIMIT ;
bytes32 internal constant PAUSED ;
bytes32 internal constant OWNER ;
bytes32 internal constant POLYMATHREGISTRY ;
bytes32 internal constant STRGETTER ;
bytes32 internal constant IS_FEE_IN_POLY ;
bytes32 internal constant ACTIVE_USERS ;
bytes32 internal constant LATEST_VERSION ;
string internal constant POLY_ORACLE ;
Events
Copy event Pause (address account);
event Unpause (address account);
event TickerRemoved (string _ticker , address _removedBy);
event ChangeExpiryLimit (uint256 _oldExpiry , uint256 _newExpiry);
event ChangeSecurityLaunchFee (uint256 _oldFee , uint256 _newFee);
event ChangeTickerRegistrationFee (uint256 _oldFee , uint256 _newFee);
event ChangeFeeCurrency (bool _isFeeInPoly);
event OwnershipTransferred (address indexed previousOwner , address indexed newOwner);
event ChangeTickerOwnership (string _ticker , address indexed _oldOwner , address indexed _newOwner);
event NewSecurityToken(string _ticker, string _name, address indexed _securityTokenAddress, address indexed _owner, uint256 _addedAt, address _registrant, bool _fromAdmin, uint256 _usdFee, uint256 _polyFee, uint256 _protocolVersion);
event NewSecurityToken(string _ticker, string _name, address indexed _securityTokenAddress, address indexed _owner, uint256 _addedAt, address _registrant, bool _fromAdmin, uint256 _registrationFee);
event RegisterTicker(address indexed _owner, string _ticker, uint256 indexed _registrationDate, uint256 indexed _expiryDate, bool _fromAdmin, uint256 _registrationFeePoly, uint256 _registrationFeeUsd);
event RegisterTicker(address indexed _owner, string _ticker, string _name, uint256 indexed _registrationDate, uint256 indexed _expiryDate, bool _fromAdmin, uint256 _registrationFee);
event SecurityTokenRefreshed(string _ticker, string _name, address indexed _securityTokenAddress, address indexed _owner, uint256 _addedAt, address _registrant, uint256 _protocolVersion);
event ProtocolFactorySet (address indexed _STFactory , uint8 _major , uint8 _minor , uint8 _patch);
event LatestVersionSet (uint8 _major , uint8 _minor , uint8 _patch);
event ProtocolFactoryRemoved (address indexed _STFactory , uint8 _major , uint8 _minor , uint8 _patch);
Modifiers
onlyOwner
Throws if called by any account other than the owner.
Copy modifier onlyOwner () internal
Arguments
onlyOwnerOrSelf
Copy modifier onlyOwnerOrSelf () internal
Arguments
whenNotPausedOrOwner
Modifier to make a function callable only when the contract is not paused.
Copy modifier whenNotPausedOrOwner () internal
Arguments
whenNotPaused
Modifier to make a function callable only when the contract is not paused and ignore is msg.sender is owner.
Copy modifier whenNotPaused () internal
Arguments
whenPaused
Modifier to make a function callable only when the contract is paused.
Copy modifier whenPaused () internal
Arguments
Functions
_onlyOwner
Copy function _onlyOwner () internal view
Arguments
_whenNotPausedOrOwner
Copy function _whenNotPausedOrOwner () internal view
Arguments
Copy function () public nonpayable
Arguments
initialize
Initializes instance of STR
Copy function initialize(address _polymathRegistry, uint256 _stLaunchFee, uint256 _tickerRegFee, address _owner, address _getterContract) public nonpayable
Arguments
updateFromRegistry
Used to update the polyToken contract address
Copy function updateFromRegistry () external nonpayable onlyOwner
Arguments
_updateFromRegistry
Copy function _updateFromRegistry () internal nonpayable
Arguments
_takeFee
Converts USD fees into POLY amounts
Copy function _takeFee (bytes32 _feeType) internal nonpayable
returns (uint256 , uint256)
Arguments
getFees
Returns the usd & poly fee for a particular feetype
Copy function getFees (bytes32 _feeType) public nonpayable
returns (usdFee uint256 , polyFee uint256)
Arguments
getSecurityTokenLaunchFee
Gets the security token launch fee
Copy function getSecurityTokenLaunchFee () public nonpayable
returns (polyFee uint256)
Returns
Fee amount
Arguments
getTickerRegistrationFee
Gets the ticker registration fee
Copy function getTickerRegistrationFee () public nonpayable
returns (polyFee uint256)
Returns
Fee amount
Arguments
setGetterRegistry
Set the getter contract address
Copy function setGetterRegistry (address _getterContract) public nonpayable onlyOwnerOrSelf
Arguments
_implementation
⤾ overrides Proxy._implementation
Copy function _implementation () internal view
returns (address)
Arguments
registerNewTicker
Registers the token ticker to the selected owner
Copy function registerNewTicker (address _owner , string _ticker) public nonpayable whenNotPausedOrOwner
Arguments
registerTicker
This function is just for backwards compatibility
Copy function registerTicker (address _owner , string _ticker , string _tokenName) external nonpayable
Arguments
_addTicker
Internal - Sets the details of the ticker
Copy function _addTicker(address _owner, string _ticker, uint256 _registrationDate, uint256 _expiryDate, bool _status, bool _fromAdmin, uint256 _polyFee, uint256 _usdFee) internal nonpayable
Arguments
modifyExistingTicker
Modifies the ticker details. Only Polymath has the ability to do so.
Copy function modifyExistingTicker(address _owner, string _ticker, uint256 _registrationDate, uint256 _expiryDate, bool _status) public nonpayable onlyOwner
Arguments
modifyTicker
This function is just for backwards compatibility
Copy function modifyTicker(address _owner, string _ticker, string _tokenName, uint256 _registrationDate, uint256 _expiryDate, bool _status) external nonpayable
Arguments
_modifyTicker
Internal -- Modifies the ticker details.
Copy function _modifyTicker(address _owner, string _ticker, uint256 _registrationDate, uint256 _expiryDate, bool _status) internal nonpayable
Arguments
_tickerOwner
Copy function _tickerOwner (string _ticker) internal view
returns (address)
Arguments
removeTicker
Removes the ticker details, associated ownership & security token mapping
Copy function removeTicker (string _ticker) public nonpayable onlyOwner
Arguments
tickerAvailable
Checks if the entered ticker is registered and has not expired
Copy function tickerAvailable (string _ticker) public view
returns (bool)
Returns
bool
Arguments
_tickerStatus
Copy function _tickerStatus (string _ticker) internal view
returns (bool)
Arguments
_setTickerOwnership
Internal - Sets the ticker owner
Copy function _setTickerOwnership (address _owner , string _ticker) internal nonpayable
Arguments
_storeTickerDetails
Internal - Stores the ticker details
Copy function _storeTickerDetails(string _ticker, address _owner, uint256 _registrationDate, uint256 _expiryDate, bool _status) internal nonpayable
Arguments
transferTickerOwnership
Transfers the ownership of the ticker
Copy function transferTickerOwnership (address _newOwner , string _ticker) public nonpayable whenNotPausedOrOwner
Arguments
_deleteTickerOwnership
Internal - Removes the owner of a ticker
Copy function _deleteTickerOwnership (address _owner , string _ticker) internal nonpayable
Arguments
changeExpiryLimit
Changes the expiry time for the token ticker. Only available to Polymath.
Copy function changeExpiryLimit (uint256 _newExpiry) public nonpayable onlyOwner
Arguments
generateSecurityToken
Deploys an instance of a new Security Token of version 2.0 and records it to the registry
Copy function generateSecurityToken (string _name , string _ticker , string _tokenDetails , bool _divisible) external nonpayable
Arguments
generateNewSecurityToken
Deploys an instance of a new Security Token and records it to the registry
Copy function generateNewSecurityToken(string _name, string _ticker, string _tokenDetails, bool _divisible, address _treasuryWallet, uint256 _protocolVersion) public nonpayable whenNotPausedOrOwner
Arguments
_protocolVersion
is the packed value of uin8[3] array (it will be calculated offchain)
if _protocolVersion == 0 then latest version of securityToken will be generated |
refreshSecurityToken
Deploys an instance of a new Security Token and replaces the old one in the registry This can be used to upgrade from version 2.0 of ST to 3.0 or in case something goes wrong with earlier ST
Copy function refreshSecurityToken(string _name, string _ticker, string _tokenDetails, bool _divisible, address _treasuryWallet) public nonpayable whenNotPausedOrOwner
returns (address)
Arguments
_deployToken
Copy function _deployToken(string _name, string _ticker, string _tokenDetails, address _issuer, bool _divisible, address _wallet, uint256 _protocolVersion) internal nonpayable
returns (newSecurityTokenAddress address)
Arguments
modifyExistingSecurityToken
Adds a new custom Security Token and saves it to the registry. (Token should follow the ISecurityToken interface)
Copy function modifyExistingSecurityToken(string _ticker, address _owner, address _securityToken, string _tokenDetails, uint256 _deployedAt) public nonpayable onlyOwner
Arguments
modifySecurityToken
This function is just for backwards compatibility
Copy function modifySecurityToken(string , string _ticker, address _owner, address _securityToken, string _tokenDetails, uint256 _deployedAt) external nonpayable
Arguments
_storeSecurityTokenData
Internal - Stores the security token details
Copy function _storeSecurityTokenData(address _securityToken, string _ticker, string _tokenDetails, uint256 _deployedAt) internal nonpayable
Arguments
isSecurityToken
Checks that Security Token is registered
Copy function isSecurityToken (address _securityToken) external view
returns (bool)
Returns
bool
Arguments
transferOwnership
Allows the current owner to transfer control of the contract to a newOwner.
Copy function transferOwnership (address _newOwner) public nonpayable onlyOwner
Arguments
pause
Called by the owner to pause, triggers stopped state
Copy function pause () external nonpayable whenNotPaused onlyOwner
Arguments
unpause
Called by the owner to unpause, returns to normal state
Copy function unpause () external nonpayable whenPaused onlyOwner
Arguments
changeTickerRegistrationFee
Sets the ticker registration fee in USD tokens. Only Polymath.
Copy function changeTickerRegistrationFee (uint256 _tickerRegFee) public nonpayable onlyOwner
Arguments
_changeTickerRegistrationFee
Copy function _changeTickerRegistrationFee (uint256 _oldFee , uint256 _newFee) internal nonpayable
Arguments
changeSecurityLaunchFee
Sets the ticker registration fee in USD tokens. Only Polymath.
Copy function changeSecurityLaunchFee (uint256 _stLaunchFee) public nonpayable onlyOwner
Arguments
_changeSecurityLaunchFee
Copy function _changeSecurityLaunchFee (uint256 _oldFee , uint256 _newFee) internal nonpayable
Arguments
changeFeesAmountAndCurrency
Sets the ticker registration and ST launch fee amount and currency
Copy function changeFeesAmountAndCurrency(uint256 _tickerRegFee, uint256 _stLaunchFee, bool _isFeeInPoly) public nonpayable onlyOwner
Arguments
reclaimERC20
Reclaims all ERC20Basic compatible tokens
Copy function reclaimERC20(address _tokenContract) public nonpayable onlyOwner
Arguments
setProtocolFactory
Changes the SecurityToken contract for a particular factory version
Copy function setProtocolFactory(address _STFactoryAddress, uint8 _major, uint8 _minor, uint8 _patch) public nonpayable onlyOwner
Arguments
_setProtocolFactory
Copy function _setProtocolFactory(address _STFactoryAddress, uint8 _major, uint8 _minor, uint8 _patch) internal nonpayable
Arguments
removeProtocolFactory
Removes a STFactory
Copy function removeProtocolFactory(uint8 _major, uint8 _minor, uint8 _patch) public nonpayable onlyOwner
Arguments
setLatestVersion
Changes the default protocol version
Copy function setLatestVersion(uint8 _major, uint8 _minor, uint8 _patch) public nonpayable onlyOwner
Arguments
_setLatestVersion
Copy function _setLatestVersion(uint8 _major, uint8 _minor, uint8 _patch) internal nonpayable
Arguments
updatePolyTokenAddress
Changes the PolyToken address. Only Polymath.
Copy function updatePolyTokenAddress(address _newAddress) public nonpayable onlyOwner
Arguments
isPaused
Check whether the registry is paused or not
Copy function isPaused() public view
returns(bool)
Returns
bool
Arguments
owner
Gets the owner of the contract
Copy function owner() public view
returns(address)
Returns
address owner
Arguments