ProtocolDataProvider

Peripheral contract to collect and pre-process information from the Pool.

MKR

address MKR

ETH

address ETH

ADDRESSES_PROVIDER

contract IPoolAddressesProvider ADDRESSES_PROVIDER

constructor

constructor(contract IPoolAddressesProvider addressesProvider) public

getAllReservesTokens

function getAllReservesTokens() external view returns (struct DataTypes.TokenData[])

Returns the list of the existing reserves in the pool.

Handling MKR and ETH in a different way since they do not have standard symbol functions.

Return Values

getAllXTokens

function getAllXTokens() external view returns (struct DataTypes.TokenData[])

Returns the list of the existing XTokens(PToken+NToken) in the pool.

Return Values

getReserveConfigurationData

function getReserveConfigurationData(address asset) external view returns (struct DataTypes.ReserveConfigData reserveData)

Returns the configuration data of the reserve

Not returning borrow and supply caps for compatibility, nor pause flag

Parameters

getReserveCaps

function getReserveCaps(address asset) external view returns (uint256 borrowCap, uint256 supplyCap)

Returns the caps parameters of the reserve

Parameters

Return Values

getSiloedBorrowing

function getSiloedBorrowing(address asset) external view returns (bool)

Returns the siloed borrowing flag

Parameters

Return Values

getLiquidationProtocolFee

function getLiquidationProtocolFee(address asset) external view returns (uint256)

Returns the protocol fee on the liquidation bonus

Parameters

Return Values

getReserveData

function getReserveData(address asset) external view returns (uint256 accruedToTreasuryScaled, uint256 totalPToken, uint256 totalVariableDebt, uint256 liquidityRate, uint256 variableBorrowRate, uint256 liquidityIndex, uint256 variableBorrowIndex, uint40 lastUpdateTimestamp)

Returns the reserve data

Parameters

Return Values

getXTokenTotalSupply

function getXTokenTotalSupply(address asset) external view returns (uint256)

Returns the total supply of xTokens for a given asset

Parameters

Return Values

getTotalDebt

function getTotalDebt(address asset) external view returns (uint256)

Returns the total debt for a given asset

Parameters

Return Values

getUserReserveData

function getUserReserveData(address asset, address user) external view returns (uint256 currentXTokenBalance, uint256 scaledXTokenBalance, uint256 collateralizedBalance, uint256 currentVariableDebt, uint256 scaledVariableDebt, uint256 liquidityRate, bool usageAsCollateralEnabled)

Returns the user data in a reserve

Parameters

Return Values

getReserveTokensAddresses

function getReserveTokensAddresses(address asset) external view returns (address xTokenAddress, address variableDebtTokenAddress)

Returns the token addresses of the reserve

Parameters

Return Values

getStrategyAddresses

function getStrategyAddresses(address asset) external view returns (address interestRateStrategyAddress, address auctionStrategyAddress)

Returns the address of the Interest Rate strategy

Parameters

Return Values