SelfHostedApplicationFactory
Inherits: ISelfHostedApplicationFactory
Allows anyone to reliably deploy a new IAuthority contract, along with an IApplication contract already linked to it.
State Variables
_authorityFactory
IAuthorityFactory immutable _authorityFactory;
_applicationFactory
IApplicationFactory immutable _applicationFactory;
Functions
constructor
constructor(IAuthorityFactory authorityFactory, IApplicationFactory applicationFactory);
Parameters
Name | Type | Description |
---|---|---|
authorityFactory | IAuthorityFactory | The authority factory |
applicationFactory | IApplicationFactory | The application factory |
getAuthorityFactory
function getAuthorityFactory() external view override returns (IAuthorityFactory);
getApplicationFactory
function getApplicationFactory() external view override returns (IApplicationFactory);
deployContracts
function deployContracts(
address authorityOwner,
uint256 epochLength,
address appOwner,
bytes32 templateHash,
bytes calldata dataAvailability,
bytes32 salt
) external returns (IApplication application, IAuthority authority);
calculateAddresses
function calculateAddresses(
address authorityOwner,
uint256 epochLength,
address appOwner,
bytes32 templateHash,
bytes calldata dataAvailability,
bytes32 salt
) external view returns (address application, address authority);