Skip to main content

V2Migrator

V2Migrator

Deployment on Ethereum mainnet:

https://etherscan.io/address/0xd44FE8Ec5D6cFB96A06e02e17bC109Ab98d506a5

Deployment on Ethereum mainnet:

https://etherscan.io/address/0xd44FE8Ec5D6cFB96A06e02e17bC109Ab98d506a5

This is a one-time use contract solely for the purpose of migrating from our V1 to our V2 architecture. It will be temporarily granted authority from the Goldfinch governance, and then revokes it's own authority and transfers it back to governance.

MINTER_ROLE

bytes32 MINTER_ROLE

GO_LISTER_ROLE

bytes32 GO_LISTER_ROLE

config

contract GoldfinchConfig config

borrowerContracts

mapping(address => address) borrowerContracts

CreditLineMigrated

event CreditLineMigrated(address owner, address clToMigrate, address newCl, address tranchedPool)

initialize

function initialize(address owner, address _config) external

migratePhase1

function migratePhase1(contract GoldfinchConfig newConfig) external

migrateCreditLines

function migrateCreditLines(contract GoldfinchConfig newConfig, address[][] creditLinesToMigrate, uint256[][] migrationData) external

bulkAddToGoList

function bulkAddToGoList(contract GoldfinchConfig newConfig, address[] members) external

pauseEverything

function pauseEverything() internal

migrateToNewConfig

function migrateToNewConfig(contract GoldfinchConfig newConfig) internal

upgradeImplementations

function upgradeImplementations(contract GoldfinchConfig _config, address[] newDeployments) public

migrateToSeniorPool

function migrateToSeniorPool(contract GoldfinchConfig newConfig) internal

closeOutMigration

function closeOutMigration(contract GoldfinchConfig newConfig) external