Struct pallet_im_online::pallet::Pallet
source · pub struct Pallet<T>(/* private fields */);
Expand description
The Pallet
struct, the main type that implements traits and standalone
functions within the pallet.
Implementations§
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn heartbeat(
origin: OriginFor<T>,
heartbeat: Heartbeat<BlockNumberFor<T>>,
_signature: <T::AuthorityId as RuntimeAppPublic>::Signature
) -> DispatchResult
pub fn heartbeat( origin: OriginFor<T>, heartbeat: Heartbeat<BlockNumberFor<T>>, _signature: <T::AuthorityId as RuntimeAppPublic>::Signature ) -> DispatchResult
Complexity:
O(K)
where K is length ofKeys
(heartbeat.validators_len)O(K)
: decoding of lengthK
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn heartbeat_after() -> BlockNumberFor<T>
pub fn heartbeat_after() -> BlockNumberFor<T>
An auto-generated getter for HeartbeatAfter
.
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn keys() -> WeakBoundedVec<T::AuthorityId, T::MaxKeys>
pub fn keys() -> WeakBoundedVec<T::AuthorityId, T::MaxKeys>
An auto-generated getter for Keys
.
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn received_heartbeats<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<bool>
pub fn received_heartbeats<KArg1, KArg2>(k1: KArg1, k2: KArg2) -> Option<bool>
An auto-generated getter for ReceivedHeartbeats
.
source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
sourcepub fn is_online(authority_index: AuthIndex) -> bool
pub fn is_online(authority_index: AuthIndex) -> bool
Returns true
if a heartbeat has been received for the authority at
authority_index
in the authorities series or if the authority has
authored at least one block, during the current session. Otherwise
false
.
sourcepub fn received_heartbeat_in_current_session(authority_index: AuthIndex) -> bool
pub fn received_heartbeat_in_current_session(authority_index: AuthIndex) -> bool
Returns true
if a heartbeat has been received for the authority at authority_index
in
the authorities series, during the current session. Otherwise false
.
Trait Implementations§
source§impl<T: Config> BoundToRuntimeAppPublic for Pallet<T>
impl<T: Config> BoundToRuntimeAppPublic for Pallet<T>
§type Public = <T as Config>::AuthorityId
type Public = <T as Config>::AuthorityId
The
RuntimeAppPublic
this type is bound to.source§impl<T: Config + Config> EventHandler<<<T as Config>::ValidatorSet as ValidatorSet<<T as Config>::AccountId>>::ValidatorId, <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config + Config> EventHandler<<<T as Config>::ValidatorSet as ValidatorSet<<T as Config>::AccountId>>::ValidatorId, <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Keep track of number of authored blocks per authority, uncles are counted as well since they’re a valid proof of being online.
Note that the given account ID is the author of the current block.
source§impl<T: Config> GetStorageVersion for Pallet<T>
impl<T: Config> GetStorageVersion for Pallet<T>
source§fn current_storage_version() -> Self::CurrentStorageVersion
fn current_storage_version() -> Self::CurrentStorageVersion
Returns the current storage version as supported by the pallet.
source§fn on_chain_storage_version() -> StorageVersion
fn on_chain_storage_version() -> StorageVersion
Returns the on-chain storage version of the pallet as stored in the storage.
source§impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn offchain_worker(now: BlockNumberFor<T>)
fn offchain_worker(now: BlockNumberFor<T>)
Implementing this function on a pallet allows you to perform long-running tasks that are
dispatched as separate threads, and entirely independent of the main wasm runtime. Read more
source§fn on_initialize(_n: BlockNumber) -> Weight
fn on_initialize(_n: BlockNumber) -> Weight
Block initialization hook. This is called at the very beginning of block execution. Read more
source§fn on_finalize(_n: BlockNumber)
fn on_finalize(_n: BlockNumber)
Block finalization hook. This is called at the very end of block execution. Read more
source§fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
Hook to consume a block’s idle time. This will run when the block is being finalized (before
Hooks::on_finalize
). Read moresource§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Hook executed when a code change (aka. a “runtime upgrade”) is detected by FRAME. Read more
source§fn integrity_test()
fn integrity_test()
Check the integrity of this pallet’s configuration. Read more
source§impl<T: Config> IntegrityTest for Pallet<T>
impl<T: Config> IntegrityTest for Pallet<T>
source§impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn offchain_worker(n: BlockNumberFor<T>)
fn offchain_worker(n: BlockNumberFor<T>)
This function is being called after every block import (when fully synced). Read more
source§impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_finalize(n: BlockNumberFor<T>)
fn on_finalize(n: BlockNumberFor<T>)
See
Hooks::on_finalize
.source§impl<T: Config> OnGenesis for Pallet<T>
impl<T: Config> OnGenesis for Pallet<T>
source§fn on_genesis()
fn on_genesis()
Something that should happen at genesis.
source§impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
See
Hooks::on_idle
.source§impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
source§fn on_initialize(n: BlockNumberFor<T>) -> Weight
fn on_initialize(n: BlockNumberFor<T>) -> Weight
See
Hooks::on_initialize
.source§impl<T: Config> OnRuntimeUpgrade for Pallet<T>
impl<T: Config> OnRuntimeUpgrade for Pallet<T>
source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
source§impl<T: Config> OneSessionHandler<<T as Config>::AccountId> for Pallet<T>
impl<T: Config> OneSessionHandler<<T as Config>::AccountId> for Pallet<T>
§type Key = <T as Config>::AuthorityId
type Key = <T as Config>::AuthorityId
The key type expected.
source§fn on_genesis_session<'a, I>(validators: I)
fn on_genesis_session<'a, I>(validators: I)
The given validator set will be used for the genesis session.
It is guaranteed that the given validator set will also be used
for the second session, therefore the first call to
on_new_session
should provide the same validator set.source§fn on_new_session<'a, I>(_changed: bool, validators: I, _queued_validators: I)
fn on_new_session<'a, I>(_changed: bool, validators: I, _queued_validators: I)
Session set has changed; act appropriately. Note that this can be called
before initialization of your module. Read more
source§fn on_before_session_ending()
fn on_before_session_ending()
A notification for end of the session. Read more
source§fn on_disabled(_i: u32)
fn on_disabled(_i: u32)
A validator got disabled. Act accordingly until a new session begins.
source§impl<T: Config> PalletInfoAccess for Pallet<T>
impl<T: Config> PalletInfoAccess for Pallet<T>
source§fn module_name() -> &'static str
fn module_name() -> &'static str
Name of the Rust module containing the pallet.
source§fn crate_version() -> CrateVersion
fn crate_version() -> CrateVersion
Version of the crate containing the pallet.
source§impl<T: Config> PalletsInfoAccess for Pallet<T>
impl<T: Config> PalletsInfoAccess for Pallet<T>
source§impl<T> PartialEq for Pallet<T>
impl<T> PartialEq for Pallet<T>
source§impl<T: Config> StorageInfoTrait for Pallet<T>
impl<T: Config> StorageInfoTrait for Pallet<T>
fn storage_info() -> Vec<StorageInfo>
source§impl<T: Config> ValidateUnsigned for Pallet<T>
impl<T: Config> ValidateUnsigned for Pallet<T>
source§fn validate_unsigned(
_source: TransactionSource,
call: &Self::Call
) -> TransactionValidity
fn validate_unsigned( _source: TransactionSource, call: &Self::Call ) -> TransactionValidity
Return the validity of the call Read more
source§fn pre_dispatch(call: &Self::Call) -> Result<(), TransactionValidityError>
fn pre_dispatch(call: &Self::Call) -> Result<(), TransactionValidityError>
Validate the call right before dispatch. Read more
source§impl<T: Config> WhitelistedStorageKeys for Pallet<T>
impl<T: Config> WhitelistedStorageKeys for Pallet<T>
source§fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
Returns a
Vec<TrackedStorageKey>
indicating the storage keys that
should be whitelisted during benchmarking. This means that those keys
will be excluded from the benchmarking performance calculation.impl<T> Eq for Pallet<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for Pallet<T>where
T: RefUnwindSafe,
impl<T> Send for Pallet<T>where
T: Send,
impl<T> Sync for Pallet<T>where
T: Sync,
impl<T> Unpin for Pallet<T>where
T: Unpin,
impl<T> UnwindSafe for Pallet<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.