pub trait AuthorApiServer<Hash, BlockHash>:
Sized
+ Send
+ Sync
+ 'static {
// Required methods
fn submit_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Bytes,
) -> Pin<Box<dyn Future<Output = Result<Hash, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn insert_key(
&self,
ext: &Extensions,
key_type: String,
suri: String,
public: Bytes,
) -> Result<(), Error>;
fn rotate_keys(&self, ext: &Extensions) -> Result<Bytes, Error>;
fn has_session_keys(
&self,
ext: &Extensions,
session_keys: Bytes,
) -> Result<bool, Error>;
fn has_key(
&self,
ext: &Extensions,
public_key: Bytes,
key_type: String,
) -> Result<bool, Error>;
fn pending_extrinsics(&self) -> Result<Vec<Bytes>, Error>;
fn remove_extrinsic(
&self,
ext: &Extensions,
bytes_or_hash: Vec<ExtrinsicOrHash<Hash>>,
) -> Result<Vec<Hash>, Error>;
fn watch_extrinsic(
&self,
subscription_sink: PendingSubscriptionSink,
bytes: Bytes,
);
// Provided method
fn into_rpc(self) -> RpcModule<Self>
where Hash: Send + Sync + 'static + DeserializeOwned + Clone + Serialize,
BlockHash: Send + Sync + 'static + Serialize { ... }
}
Expand description
Re-export the API for backward compatibility.
Server trait implementation for the AuthorApi
RPC API.
Required Methods§
sourcefn submit_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Bytes,
) -> Pin<Box<dyn Future<Output = Result<Hash, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn submit_extrinsic<'life0, 'async_trait>(
&'life0 self,
extrinsic: Bytes,
) -> Pin<Box<dyn Future<Output = Result<Hash, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Submit hex-encoded extrinsic for inclusion in block.
sourcefn insert_key(
&self,
ext: &Extensions,
key_type: String,
suri: String,
public: Bytes,
) -> Result<(), Error>
fn insert_key( &self, ext: &Extensions, key_type: String, suri: String, public: Bytes, ) -> Result<(), Error>
Insert a key into the keystore.
sourcefn rotate_keys(&self, ext: &Extensions) -> Result<Bytes, Error>
fn rotate_keys(&self, ext: &Extensions) -> Result<Bytes, Error>
Generate new session keys and returns the corresponding public keys.
sourcefn has_session_keys(
&self,
ext: &Extensions,
session_keys: Bytes,
) -> Result<bool, Error>
fn has_session_keys( &self, ext: &Extensions, session_keys: Bytes, ) -> Result<bool, Error>
Checks if the keystore has private keys for the given session public keys.
session_keys
is the SCALE encoded session keys object from the runtime.
Returns true
iff all private keys could be found.
sourcefn has_key(
&self,
ext: &Extensions,
public_key: Bytes,
key_type: String,
) -> Result<bool, Error>
fn has_key( &self, ext: &Extensions, public_key: Bytes, key_type: String, ) -> Result<bool, Error>
Checks if the keystore has private keys for the given public key and key type.
Returns true
if a private key could be found.
sourcefn pending_extrinsics(&self) -> Result<Vec<Bytes>, Error>
fn pending_extrinsics(&self) -> Result<Vec<Bytes>, Error>
Returns all pending extrinsics, potentially grouped by sender.
sourcefn remove_extrinsic(
&self,
ext: &Extensions,
bytes_or_hash: Vec<ExtrinsicOrHash<Hash>>,
) -> Result<Vec<Hash>, Error>
fn remove_extrinsic( &self, ext: &Extensions, bytes_or_hash: Vec<ExtrinsicOrHash<Hash>>, ) -> Result<Vec<Hash>, Error>
Remove given extrinsic from the pool and temporarily ban it to prevent reimporting.
sourcefn watch_extrinsic(
&self,
subscription_sink: PendingSubscriptionSink,
bytes: Bytes,
)
fn watch_extrinsic( &self, subscription_sink: PendingSubscriptionSink, bytes: Bytes, )
Submit an extrinsic to watch.
See TransactionStatus
for details on
transaction life cycle.