aea.contracts.base¶
The base contract.
Contract Objects¶
Abstract definition of a contract.
__
init__
¶
Initialize the contract.
Arguments:
contract_config
: the contract configurations.kwargs
: the keyword arguments.
id¶
Get the name.
configuration¶
Get the configuration.
get_
instance¶
@classmethod
def get_instance(cls,
ledger_api: LedgerApi,
contract_address: Optional[str] = None) -> Any
Get the instance.
Arguments:
ledger_api
: the ledger api we are using.contract_address
: the contract address.
Returns:
the contract instance
from_
dir¶
Load the protocol from a directory.
Arguments:
directory
: the directory to the skill package.kwargs
: the keyword arguments.
Returns:
the contract object.
from_
config¶
Load contract from configuration.
Arguments:
configuration
: the contract configuration.kwargs
: the keyword arguments.
Returns:
the contract object.
get_
deploy_
transaction¶
@classmethod
def get_deploy_transaction(cls, ledger_api: LedgerApi, deployer_address: str,
**kwargs: Any) -> Optional[JSONLike]
Handler method for the 'GET_DEPLOY_TRANSACTION' requests.
Implement this method in the sub class if you want to handle the contract requests manually.
Arguments:
ledger_api
: the ledger apis.deployer_address
: The address that will deploy the contract.kwargs
: keyword arguments.
Returns:
the tx
get_
raw_
transaction¶
@classmethod
def get_raw_transaction(cls, ledger_api: LedgerApi, contract_address: str,
**kwargs: Any) -> Optional[JSONLike]
Handler method for the 'GET_RAW_TRANSACTION' requests.
Implement this method in the sub class if you want to handle the contract requests manually.
Arguments:
ledger_api
: the ledger apis.contract_address
: the contract address.kwargs
: the keyword arguments.
Returns:
the tx # noqa: DAR202
get_
raw_
message¶
@classmethod
def get_raw_message(cls, ledger_api: LedgerApi, contract_address: str,
**kwargs: Any) -> Optional[bytes]
Handler method for the 'GET_RAW_MESSAGE' requests.
Implement this method in the sub class if you want to handle the contract requests manually.
Arguments:
ledger_api
: the ledger apis.contract_address
: the contract address.kwargs
: the keyword arguments.
Returns:
the tx # noqa: DAR202
get_
state¶
@classmethod
def get_state(cls, ledger_api: LedgerApi, contract_address: str,
**kwargs: Any) -> Optional[JSONLike]
Handler method for the 'GET_STATE' requests.
Implement this method in the sub class if you want to handle the contract requests manually.
Arguments:
ledger_api
: the ledger apis.contract_address
: the contract address.kwargs
: the keyword arguments.
Returns:
the tx # noqa: DAR202