MIMOProxyFactory
The MIMOProxyFactory
handles :
MIMOProxys' deployments
MIMOProxys' ownerhip transfers
MIMOProxys' permission clearing
Write Methods :
deploy()
deploy()
Deploys a new MIMOProxy
and MIMOProxy
guard for the caller. The caller must not owner any other MIMOProxy
transferOwnership(address proxy, address newOwner)
transferOwnership(address proxy, address newOwner)
Initiates the ownership transfer process to a new owner and must be followed by a claimOwnership
call by the new owner to complete the transfer. Sets the newOwner
address as a pendingOwner
of the transferred MIMOProxy
.
Requirements :
Must be called by the transferred
MIMOProxy
ownerCannot transfer ownership to
address(0)
New owner must not own any other
MIMOProxy
proxy
address
Address of the MIMOProxy
to transfer
newOwner
address
Address of the new owner
claimOwnership(address proxy, bool clear)
claimOwnership(address proxy, bool clear)
Completes the ownership transfer process.
Requirements :
Must be called by the
pendingOwner
ofproxy
Caller must not own any other
MIMOProxy
proxy
address
Address of the MIMOProxy
to claim
clear
bool
Clear existing proxy permissions if true and maintain them if false
clearPermissions(address proxy)
clearPermissions(address proxy)
Deploys a new MIMOProxyGuard
for the targeted proxy
therefore clearing all existing permissions.
Requirements :
Must be called by
proxy
owner
proxy
address
Address of the MIMOProxy
for which to clear permissions
setMinGas(address proxy, uint256 minGas)
setMinGas(address proxy, uint256 minGas)
Sets a new minGas
value for the targeted proxy
.
Requirements :
Must be called by
proxy
owner
proxy
address
Address of the MIMOProxy
to update
minGas
uint256
Gas to reserve for running the remainder of the execute
function after the delegatecall
in the MIMOProxy
. Prevents the proxy from becoming unusable if EVM opcode gas costs change in the future.
View Methods
isProxy(address proxy)
isProxy(address proxy)
Checks if an address is a valid MIMOProxy
.
Call Params
proxy
address
Address of the MIMOProxy
to check
Return Values
result
bool
true
if proxy has been deployed and false
if not.
getProxyState(address proxy)
getProxyState(address proxy)
Returns the targeted proxy
state.
Call Params
proxy
address
Address of the MIMOProxy
to fetch state from
Return Values
proxyState
struct
ProxyState :
address owner
IMIMOProxyGuard proxyGuard
uint256 minGas
getCurrentProxy(address owner)
getCurrentProxy(address owner)
Returns the MIMOProxy
address for a specific owner
.
Call Params
owner
address
The address of the owner.
Return Values
proxy
IMIMOProxy
The MIMOProxy
of the owner.
getPendingOwner(address proxy)
getPendingOwner(address proxy)
Returns the pending owner of a specific proxy
.
Call Params
proxy
address
Address of the MIMOProxy
Return Values
pendingOwner
address
Pending owner who has yet to claim the ownership of the transferred MIMOProxy
getProxy()
getProxy()
Returns the address of the MIMOProxy
associated with the MIMOProxyGuard
.
proxyFactory()
proxyFactory()
Returns the proxyFactory
address.
Last updated