IOrchestrator_v1.sol
Last updated
Last updated
Inherits:
Initialization function.
Parameters
orchestratorId
uint256
moduleFactory_
address
The address of the module factory.
modules
address[]
fundingManager
IFundingManager_v1
authorizer
IAuthorizer_v1
paymentProcessor
IPaymentProcessor_v1
governor
IGovernor_v1
The address of the governor contract.
Initiates replacing the current authorizer with _authorizer
on a timelock.
Only callable by authorized caller.
Parameters
authorizer_
IAuthorizer_v1
Initiates replaces the current funding manager with fundingManager_
on a timelock.
Only callable by authorized caller.
Parameters
fundingManager_
IFundingManager_v1
Initiates replaces the current payment processor with paymentProcessor_
on a timelock.
Only callable by authorized caller.
Parameters
paymentProcessor_
IPaymentProcessor_v1
Cancels the replacement of the current authorizer with authorizer_
.
Only callable by authorized caller.
Parameters
authorizer_
IAuthorizer_v1
Cancels the replacement of the current funding manager with fundingManager_
.
Only callable by authorized caller.
Parameters
fundingManager_
IFundingManager_v1
Cancels the replacement of the current payment processor with paymentProcessor_
.
Only callable by authorized caller.
Parameters
paymentProcessor_
IPaymentProcessor_v1
Executes replacing the current authorizer with _authorizer
.
!!! IMPORTANT !!! When changing the Authorizer the current set of assigned addresses to Roles are lost. Make sure initial owners are set properly.
Only callable by authorized caller.
Parameters
authorizer_
IAuthorizer_v1
Executes replaces the current funding manager with fundingManager_
.
!!! IMPORTANT !!! When changing the FundingManager the current funds still contained in the module might not be retrievable. Make sure to clean the FundingManager properly beforehand.
Only callable by authorized caller.
Parameters
fundingManager_
IFundingManager_v1
Executes replaces the current payment processor with paymentProcessor_
.
!!! IMPORTANT !!! When changing the PaymentProcessor the current ongoing payment orders are lost. Make sure to resolve those payments properly beforehand.
Only callable by authorized caller.
Parameters
paymentProcessor_
IPaymentProcessor_v1
Only callable by authorized address.
Fails of adding module exeeds max modules limit.
Fails if address invalid or address already added as module.
Parameters
module
address
The module address to add.
Reverts if module to be removed is the current authorizer/fundingManager/paymentProcessor. The functions specific to updating these 3 module categories should be used instead.
Only callable by authorized address.
Fails if address not added as module.
Parameters
module
address
The module address to remove.
Adds address module
as module.
Only callable by authorized address.
Fails if adding of module has not been initiated.
Fails if timelock has not been expired yet.
Parameters
module
address
The module address to add.
Removes address module
as module.
Only callable by authorized address.
Fails if removing of module has not been initiated.
Fails if timelock has not been expired yet.
Parameters
module
address
The module address to remove.
Only callable by authorized address.
Fails if module update has not been initiated.
Parameters
module
address
The module address to remove.
Unique id set by the {OrchestratorFactory_v1} during initialization.
Returns
<none>
uint256
Returns
<none>
IFundingManager_v1
Returns
<none>
IAuthorizer_v1
Returns
<none>
IPaymentProcessor_v1
Returns
<none>
IGovernor_v1
Authorizer updated to new address.
Parameters
_address
address
The new address.
FundingManager updated to new address.
Parameters
_address
address
The new address.
PaymentProcessor updated to new address.
Parameters
_address
address
The new address.
Parameters
orchestratorId_
uint256
fundingManager
address
authorizer
address
paymentProcessor
address
modules
address[]
governor
address
Function is only callable by authorized caller.
Parameters
role
bytes32
The role of the caller.
caller
address
The caller address.
Parameters
module
address
The module address.
The token of the new funding manager is not the same as the current funding manager.
Parameters
currentToken
address
The current token.
newToken
address
The new token.
The Authorizer can not be removed through this function.
The FundingManager can not be removed through this function.
The PaymentProcessor can not be removed through this function.
The id of the .
The addresses of the modules used in the .
The address of the module.
The address of the module.
The address of the module.
The address of the new module.
The address of the new module.
The address of the new module.
The address of the new module, for which the update is canceled.
The address of the new module, for which the update is canceled.
The address of the new module, for which the update is canceled.
The address of the new module.
The address of the new module.
The address of the new module.
Initiates the adding of a module to the on a timelock.
Initiate the removal of a module from the on a timelock.
Cancels an initiated update for a module. Can be adding or removing a module from the .
Returns the 's id.
The }'s id.
The implementation used to hold and distribute Funds.
The implementation.
The implementation used to authorize addresses.
The implementation.
The implementation used to process module payments.
The implementation.
The implementation used for protocol level interactions.
The implementation.
1} has been initialized with the corresponding modules.
The id of the .
The address of the module.
The address of the module.
The address of the module.
The addresses of the other modules used in the .
The address of the contract used to reference protocol level interactions.
The given module is not used in the .
The given module is not used in the .