The DelegationWalletFactory contract is responsible for deploying and configuring new instances of the Delegation Wallet components. It acts as the entry point for creating a new wallet and ensures all necessary contracts are correctly initialized.
Copy function deploy ( address _delegationController )
external
returns (
address ,
address ,
address ,
address
) Deploys a new Delegation Wallet with the msg.sender as the owner.
_delegationController (address): The address of the delegation controller.
The addresses of the deployed GnosisSafe, DelegationOwner, ProtocolOwner, and GuardOwner contracts.
Copy function deployFor ( address _owner , address _delegationController )
public
returns (
address ,
address ,
address ,
address
) Deploys a new Delegation Wallet for a specified owner.
_owner (address): The address of the wallet owner.
_delegationController (address): The address of the delegation controller.
The addresses of the deployed GnosisSafe, DelegationOwner, ProtocolOwner, and GuardOwner contracts.
Interacts with the GnosisSafeProxyFactory to deploy a new GnosisSafe contract.
Interacts with the beacon proxies to deploy new instances of the GuardOwner, DelegationOwner, and ProtocolOwner contracts.
Registers the deployed wallet components in the DelegationWalletRegistry.