Pods Yield
  • Pods Yield
    • Introduction to Pods Yield
  • stETHvv
    • What is stETHvv?
    • Description
    • System Actors
    • How stETHvv Works
      • User Flow
    • stETHvv Timeline
    • Fees
    • 📃Whitepaper
  • security
    • 🛡️Security Overview
    • 🛡️Audits
    • 🐛Bug Bounty Program (BBP)
    • 🔐Access Control
  • Risks
    • Introduction
    • Market Risks
    • Smart Contract Risks
  • Developers
    • Smart Contracts Overview
      • ConfigurationManager
      • EthAdapter
      • STETHVault
      • BaseVault
    • Contracts Addresses
    • Integration guide
      • How to deposit
      • How to withdraw
      • How to read Vault info
  • Connect
    • Brand Assets
  • Appendix
    • FAQ
    • Glossary of Terms
  • 3rd party integrations
    • 3rd party integrations list
  • Additional Resources
    • pods.finance
    • app.pods.finance
    • Pods' other products
    • Github
    • Blog
    • Discord
    • Twitter
Powered by GitBook
On this page
  • View Methods
  • getParameter
  • getGlobalParameter
  • getCap
  • getVaultMigration
  • Write Methods
  • setParameter
  • setCap
  • setVaultMigration
  1. Developers
  2. Smart Contracts Overview

ConfigurationManager

PreviousSmart Contracts OverviewNextEthAdapter

Last updated 2 years ago

The ConfigurationManager is the management layer of the protocol; it sets global or specific vault's parameters as a cap, withdraws fee, migration destination, and the vaultController role for each vault.

src:

View Methods

getParameter

function getParameter(address target, bytes32 name) external view returns (uint256);

Retrieves the value of a parameter set to contract. If the value is not a uint256, you will need to perform encoding/decoding operations

Parameters

Name
Type
Description

target

address

The contract target address

name

bytes32

The parameter name

Returns

Name
Type
Description

_0

uint256

The stored parameter

getGlobalParameter

function getGlobalParameter(bytes32 name) external view returns (uint256);

Retrieves the value of a global parameter. If the value is not a uint256, you will need to perform encoding/decoding operations

Parameters

Name
Type
Description

name

bytes32

The parameter name

Returns

Name
Type
Description

_0

uint256

The stored parameter

getCap

function getCap(address target) external view returns (uint256);

Retrieves the value of the cap set to a contract. If the value is not a uint256, you will need to perform encoding/decoding operations

Parameters

Name
Type
Description

target

address

The contract target address

Returns

Name
Type
Description

_0

uint256

The stored cap

getVaultMigration

function getVaultMigration(address oldVault) external view returns (address);

Retrieves the value of the destination contract of an original vault.

Parameters

Name
Type
Description

oldVault

address

The origin vault

Returns

Name
Type
Description

_0

address

The destination vault

Write Methods

setParameter

function setParameter(address target, bytes32 name, uint256 value) external onlyOwner;

Set specific parameters to a contract or globally across multiple contracts. Use address(0) to set a global parameter.

Parameters

Name
Type
Description

target

address

The contract target address

name

bytes32

The parameter name

value

uint256

The parameter value

setCap

function setCap(address target, uint256 value) external onlyOwner;

Set the cap of a target vault.

Parameters

Name
Type
Description

target

address

The contract target address

value

uint256

The cap value

setVaultMigration

function setVaultMigration(address oldVault, address newVault) external onlyOwner;

Sets the allowance to migrate to a vault address.

Parameters

Name
Type
Description

oldVault

address

The current vault address

newVault

address

The vault where assets are going to be migrated to

https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L34
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L
40
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L57
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L73
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L22
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L48
https://github.com/pods-finance/yield-contracts/blob/main/contracts/configuration/ConfigurationManager.sol#L64