Trait polkadot_service::ParachainHost [−][src]
pub trait ParachainHost<Block, H = H256, N = u32>: Core<Block> where
Block: Block,
H: Encode + Decode,
N: Encode + Decode, {
Show 30 methods
fn validators(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Vec<Public, Global>, ApiError> { ... }
fn validators_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<Public, Global>, ApiError> { ... }
fn validator_groups(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError> { ... }
fn validator_groups_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError> { ... }
fn availability_cores(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Vec<CoreState<H, N>, Global>, ApiError> { ... }
fn availability_cores_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CoreState<H, N>, Global>, ApiError> { ... }
fn persisted_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError> { ... }
fn persisted_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError> { ... }
fn assumed_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError> { ... }
fn assumed_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError> { ... }
fn check_validation_outputs(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError> { ... }
fn check_validation_outputs_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError> { ... }
fn session_index_for_child(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<u32, ApiError> { ... }
fn session_index_for_child_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<u32, ApiError> { ... }
fn session_info(
&self,
__runtime_api_at_param__: &BlockId<Block>,
index: u32
) -> Result<Option<SessionInfo>, ApiError> { ... }
fn session_info_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
index: u32
) -> Result<Option<SessionInfo>, ApiError> { ... }
fn validation_code(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError> { ... }
fn validation_code_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError> { ... }
fn candidate_pending_availability(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError> { ... }
fn candidate_pending_availability_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError> { ... }
fn candidate_events(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError> { ... }
fn candidate_events_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError> { ... }
fn dmq_contents(
&self,
__runtime_api_at_param__: &BlockId<Block>,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError> { ... }
fn dmq_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError> { ... }
fn inbound_hrmp_channels_contents(
&self,
__runtime_api_at_param__: &BlockId<Block>,
recipient: Id
) -> Result<BTreeMap<Id, Vec<InboundHrmpMessage<N>, Global>>, ApiError> { ... }
fn inbound_hrmp_channels_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<BTreeMap<Id, Vec<InboundHrmpMessage<N>, Global>>, ApiError> { ... }
fn validation_code_by_hash(
&self,
__runtime_api_at_param__: &BlockId<Block>,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError> { ... }
fn validation_code_by_hash_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError> { ... }
fn on_chain_votes(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError> { ... }
fn on_chain_votes_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError> { ... }
}
Expand description
The API for querying the state of parachains on-chain.
Provided methods
Get the current validators.
fn validators_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<Public, Global>, ApiError>
fn validators_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<Public, Global>, ApiError>
Get the current validators.
fn validator_groups(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError>
fn validator_groups(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError>
Returns the validator groups and rotation info localized based on the hypothetical child
of a block whose state this is invoked on. Note that now
in the GroupRotationInfo
should be the successor of the number of the block.
fn validator_groups_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError>
fn validator_groups_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<(Vec<Vec<ValidatorIndex, Global>, Global>, GroupRotationInfo<N>), ApiError>
Returns the validator groups and rotation info localized based on the hypothetical child
of a block whose state this is invoked on. Note that now
in the GroupRotationInfo
should be the successor of the number of the block.
Yields information on all availability cores as relevant to the child block. Cores are either free or occupied. Free cores can have paras assigned to them.
fn availability_cores_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CoreState<H, N>, Global>, ApiError>
fn availability_cores_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CoreState<H, N>, Global>, ApiError>
Yields information on all availability cores as relevant to the child block. Cores are either free or occupied. Free cores can have paras assigned to them.
fn persisted_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError>
fn persisted_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError>
Yields the persisted validation data for the given ParaId
along with an assumption that
should be used if the para currently occupies a core.
Returns None
if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn persisted_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError>
fn persisted_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<PersistedValidationData<H, N>>, ApiError>
Yields the persisted validation data for the given ParaId
along with an assumption that
should be used if the para currently occupies a core.
Returns None
if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn assumed_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError>
fn assumed_validation_data(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError>
Returns the persisted validation data for the given ParaId
along with the corresponding
validation code hash. Instead of accepting assumption about the para, matches the validation
data hash against an expected one and yields None
if they’re not equal.
fn assumed_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError>
fn assumed_validation_data_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
expected_persisted_validation_data_hash: H256
) -> Result<Option<(PersistedValidationData<H, N>, ValidationCodeHash)>, ApiError>
Returns the persisted validation data for the given ParaId
along with the corresponding
validation code hash. Instead of accepting assumption about the para, matches the validation
data hash against an expected one and yields None
if they’re not equal.
fn check_validation_outputs(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError>
fn check_validation_outputs(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError>
Checks if the given validation outputs pass the acceptance criteria.
fn check_validation_outputs_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError>
fn check_validation_outputs_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
outputs: CandidateCommitments<u32>
) -> Result<bool, ApiError>
Checks if the given validation outputs pass the acceptance criteria.
Returns the session index expected at a child of the block.
This can be used to instantiate a SigningContext
.
fn session_index_for_child_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<u32, ApiError>
fn session_index_for_child_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<u32, ApiError>
Returns the session index expected at a child of the block.
This can be used to instantiate a SigningContext
.
fn session_info(
&self,
__runtime_api_at_param__: &BlockId<Block>,
index: u32
) -> Result<Option<SessionInfo>, ApiError>
fn session_info(
&self,
__runtime_api_at_param__: &BlockId<Block>,
index: u32
) -> Result<Option<SessionInfo>, ApiError>
Get the session info for the given session, if stored.
fn session_info_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
index: u32
) -> Result<Option<SessionInfo>, ApiError>
fn session_info_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
index: u32
) -> Result<Option<SessionInfo>, ApiError>
Get the session info for the given session, if stored.
fn validation_code(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError>
fn validation_code(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError>
Fetch the validation code used by a para, making the given OccupiedCoreAssumption
.
Returns None
if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn validation_code_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError>
fn validation_code_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id,
assumption: OccupiedCoreAssumption
) -> Result<Option<ValidationCode>, ApiError>
Fetch the validation code used by a para, making the given OccupiedCoreAssumption
.
Returns None
if either the para is not registered or the assumption is Freed
and the para already occupies a core.
fn candidate_pending_availability(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError>
fn candidate_pending_availability(
&self,
__runtime_api_at_param__: &BlockId<Block>,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError>
Get the receipt of a candidate pending availability. This returns Some
for any paras
assigned to occupied cores in availability_cores
and None
otherwise.
fn candidate_pending_availability_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError>
fn candidate_pending_availability_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
para_id: Id
) -> Result<Option<CommittedCandidateReceipt<H>>, ApiError>
Get the receipt of a candidate pending availability. This returns Some
for any paras
assigned to occupied cores in availability_cores
and None
otherwise.
fn candidate_events(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError>
fn candidate_events(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError>
Get a vector of events concerning candidates that occurred within a block.
fn candidate_events_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError>
fn candidate_events_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Vec<CandidateEvent<H>, Global>, ApiError>
Get a vector of events concerning candidates that occurred within a block.
fn dmq_contents(
&self,
__runtime_api_at_param__: &BlockId<Block>,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError>
fn dmq_contents(
&self,
__runtime_api_at_param__: &BlockId<Block>,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError>
Get all the pending inbound messages in the downward message queue for a para.
fn dmq_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError>
fn dmq_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<Vec<InboundDownwardMessage<N>, Global>, ApiError>
Get all the pending inbound messages in the downward message queue for a para.
Get the contents of all channels addressed to the given recipient. Channels that have no messages in them are also included.
fn inbound_hrmp_channels_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<BTreeMap<Id, Vec<InboundHrmpMessage<N>, Global>>, ApiError>
fn inbound_hrmp_channels_contents_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
recipient: Id
) -> Result<BTreeMap<Id, Vec<InboundHrmpMessage<N>, Global>>, ApiError>
Get the contents of all channels addressed to the given recipient. Channels that have no messages in them are also included.
fn validation_code_by_hash(
&self,
__runtime_api_at_param__: &BlockId<Block>,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError>
fn validation_code_by_hash(
&self,
__runtime_api_at_param__: &BlockId<Block>,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError>
Get the validation code from its hash.
fn validation_code_by_hash_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError>
fn validation_code_by_hash_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext,
hash: ValidationCodeHash
) -> Result<Option<ValidationCode>, ApiError>
Get the validation code from its hash.
fn on_chain_votes(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError>
fn on_chain_votes(
&self,
__runtime_api_at_param__: &BlockId<Block>
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError>
Scrape dispute relevant from on-chain, backing votes and resolved disputes.
fn on_chain_votes_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError>
fn on_chain_votes_with_context(
&self,
__runtime_api_at_param__: &BlockId<Block>,
context: ExecutionContext
) -> Result<Option<ScrapedOnChainVotes<H>>, ApiError>
Scrape dispute relevant from on-chain, backing votes and resolved disputes.