Struct exonum::messages::PeersRequest
[−]
[src]
pub struct PeersRequest { /* fields omitted */ }
Request connected peers from a node.
Validation
Request is considered valid if the sender of the message on the network
level corresponds to the from
field.
Processing
Peer Connect
messages are sent to the recipient.
Generation
PeersRequest
message is sent regularly with the timeout controlled by
blockchain::ConsensusConfig::peers_timeout
.
Methods
impl PeersRequest
[src]
pub fn new(
from: &PublicKey,
to: &PublicKey,
secret_key: &SecretKey
) -> PeersRequest
[src]
from: &PublicKey,
to: &PublicKey,
secret_key: &SecretKey
) -> PeersRequest
Creates message and signs it.
pub fn new_with_signature(
from: &PublicKey,
to: &PublicKey,
signature: &Signature
) -> PeersRequest
[src]
from: &PublicKey,
to: &PublicKey,
signature: &Signature
) -> PeersRequest
Creates message and appends existing signature.
pub fn to_hex(&self) -> String
[src]
Returns the hex representation of the binary data. Lower case letters are used (e.g. f9b4ca).
pub fn from(&self) -> &PublicKey
[src]
The sender's public key.
pub fn to(&self) -> &PublicKey
[src]
Public key of the recipient.
Trait Implementations
impl Clone for PeersRequest
[src]
fn clone(&self) -> PeersRequest
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl PartialEq for PeersRequest
[src]
fn eq(&self, __arg_0: &PeersRequest) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &PeersRequest) -> bool
[src]
This method tests for !=
.
impl ServiceMessage for PeersRequest
[src]
const SERVICE_ID: u16
SERVICE_ID: u16 = CONSENSUS
ID of the service this message belongs to.
const MESSAGE_ID: u16
MESSAGE_ID: u16 = 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1
ID of the message itself. Should be unique within a service. Read more
impl Message for PeersRequest
[src]
fn from_raw(raw: RawMessage) -> Result<PeersRequest, Error>
[src]
Converts the raw message into the specific one.
fn raw(&self) -> &RawMessage
[src]
Returns raw message.
fn verify_signature(&self, pub_key: &PublicKey) -> bool
[src]
Verifies the message using given public key.
impl<'a> SegmentField<'a> for PeersRequest
[src]
fn item_size() -> Offset
[src]
size of item fixed part that this Field
collect.
fn count(&self) -> Offset
[src]
count of items in collection
fn extend_buffer(&self, buffer: &mut Vec<u8>)
[src]
extend buffer with this collection
unsafe fn from_buffer(buffer: &'a [u8], from: Offset, count: Offset) -> Self
[src]
create collection from buffer
fn check_data(
buffer: &'a [u8],
from: CheckedOffset,
count: CheckedOffset,
latest_segment: CheckedOffset
) -> Result
[src]
buffer: &'a [u8],
from: CheckedOffset,
count: CheckedOffset,
latest_segment: CheckedOffset
) -> Result
check collection data
impl AsRef<RawMessage> for PeersRequest
[src]
fn as_ref(&self) -> &RawMessage
[src]
Performs the conversion.
impl FromHex for PeersRequest
[src]
type Error = Error
fn from_hex<T: AsRef<[u8]>>(hex: T) -> Result<Self, Self::Error>
[src]
Creates an instance of type Self
from the given hex string, or fails with a custom error type. Read more
impl StorageValue for PeersRequest
[src]
fn into_bytes(self) -> Vec<u8>
[src]
Serialize a value into a vector of bytes.
fn from_bytes(value: Cow<[u8]>) -> Self
[src]
Deserialize a value from bytes.
impl Debug for PeersRequest
[src]
fn fmt(&self, fmt: &mut Formatter) -> Result<(), Error>
[src]
Formats the value using the given formatter. Read more
impl ExonumJson for PeersRequest
[src]
fn deserialize_field<B>(
value: &Value,
buffer: &mut B,
from: Offset,
to: Offset
) -> Result<(), Box<Error>> where
B: WriteBufferWrapper,
[src]
value: &Value,
buffer: &mut B,
from: Offset,
to: Offset
) -> Result<(), Box<Error>> where
B: WriteBufferWrapper,
write deserialized field in buffer on place.
fn serialize_field(&self) -> Result<Value, Box<Error + Send + Sync>>
[src]
serialize field as json::Value
impl ExonumJsonDeserialize for PeersRequest
[src]
impl<'de> Deserialize<'de> for PeersRequest
[src]
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,
[src]
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more