pub trait IsClient<'a> {
Show 31 methods
// Required methods
fn handle_error_message(
&mut self,
server_id: Option<usize>,
message: Message,
) -> Result<Option<Message>, Error<'a>>;
fn id_is_authorize(
&mut self,
server_id: Option<usize>,
id: &u64,
) -> Option<String>;
fn id_is_submit(&mut self, server_id: Option<usize>, id: &u64) -> bool;
fn handle_notify(
&mut self,
server_id: Option<usize>,
notify: Notify<'a>,
) -> Result<(), Error<'a>>;
fn handle_configure(
&mut self,
server_id: Option<usize>,
conf: &mut Configure,
) -> Result<(), Error<'a>>;
fn handle_set_difficulty(
&mut self,
server_id: Option<usize>,
m: &mut SetDifficulty,
) -> Result<(), Error<'a>>;
fn handle_set_extranonce(
&mut self,
server_id: Option<usize>,
m: &mut SetExtranonce<'_>,
) -> Result<(), Error<'a>>;
fn handle_set_version_mask(
&mut self,
server_id: Option<usize>,
m: &mut SetVersionMask,
) -> Result<(), Error<'a>>;
fn handle_subscribe(
&mut self,
server_id: Option<usize>,
subscribe: &Subscribe<'a>,
) -> Result<(), Error<'a>>;
fn set_extranonce1(
&mut self,
server_id: Option<usize>,
extranonce1: Extranonce<'a>,
);
fn extranonce1(&self, server_id: Option<usize>) -> Extranonce<'a>;
fn set_extranonce2_size(
&mut self,
server_id: Option<usize>,
extra_nonce2_size: usize,
);
fn extranonce2_size(&self, server_id: Option<usize>) -> usize;
fn version_rolling_mask(&self, server_id: Option<usize>) -> Option<HexU32Be>;
fn set_version_rolling_mask(
&mut self,
server_id: Option<usize>,
mask: Option<HexU32Be>,
);
fn set_version_rolling_min_bit(
&mut self,
server_id: Option<usize>,
min: Option<HexU32Be>,
);
fn version_rolling_min_bit(
&mut self,
server_id: Option<usize>,
) -> Option<HexU32Be>;
fn set_status(&mut self, server_id: Option<usize>, status: ClientStatus);
fn signature(&self, server_id: Option<usize>) -> String;
fn status(&self, server_id: Option<usize>) -> ClientStatus;
fn last_notify(&self, server_id: Option<usize>) -> Option<Notify<'_>>;
fn is_authorized(&self, server_id: Option<usize>, name: &String) -> bool;
fn authorize_user_name(&mut self, server_id: Option<usize>, name: String);
// Provided methods
fn handle_message(
&mut self,
server_id: Option<usize>,
msg: Message,
) -> Result<Option<Message>, Error<'a>>
where Self: Sized { ... }
fn update_response(
&mut self,
server_id: Option<usize>,
response: Server2ClientResponse<'a>,
) -> Result<Server2ClientResponse<'a>, Error<'a>> { ... }
fn handle_request(
&mut self,
server_id: Option<usize>,
request: Server2Client<'a>,
) -> Result<Option<Message>, Error<'a>>
where Self: Sized { ... }
fn handle_response(
&mut self,
server_id: Option<usize>,
response: Server2ClientResponse<'a>,
) -> Result<Option<Message>, Error<'a>>
where Self: Sized { ... }
fn configure(&mut self, server_id: Option<usize>, id: u64) -> Message { ... }
fn subscribe(
&mut self,
server_id: Option<usize>,
id: u64,
extranonce1: Option<Extranonce<'a>>,
) -> Result<Message, Error<'a>> { ... }
fn authorize(
&mut self,
server_id: Option<usize>,
id: u64,
name: String,
password: String,
) -> Result<Message, Error<'_>> { ... }
fn submit(
&mut self,
server_id: Option<usize>,
id: u64,
user_name: String,
extra_nonce2: Extranonce<'a>,
time: i64,
nonce: i64,
version_bits: Option<HexU32Be>,
) -> Result<Message, Error<'a>> { ... }
}Required Methods§
fn handle_error_message( &mut self, server_id: Option<usize>, message: Message, ) -> Result<Option<Message>, Error<'a>>
Check if the client sent an Authorize request with the given id, if so it return the authorized name
Sourcefn id_is_submit(&mut self, server_id: Option<usize>, id: &u64) -> bool
fn id_is_submit(&mut self, server_id: Option<usize>, id: &u64) -> bool
Check if the client sent a Submit request with the given id
fn handle_notify( &mut self, server_id: Option<usize>, notify: Notify<'a>, ) -> Result<(), Error<'a>>
fn handle_configure( &mut self, server_id: Option<usize>, conf: &mut Configure, ) -> Result<(), Error<'a>>
fn handle_set_difficulty( &mut self, server_id: Option<usize>, m: &mut SetDifficulty, ) -> Result<(), Error<'a>>
fn handle_set_extranonce( &mut self, server_id: Option<usize>, m: &mut SetExtranonce<'_>, ) -> Result<(), Error<'a>>
fn handle_set_version_mask( &mut self, server_id: Option<usize>, m: &mut SetVersionMask, ) -> Result<(), Error<'a>>
fn handle_subscribe( &mut self, server_id: Option<usize>, subscribe: &Subscribe<'a>, ) -> Result<(), Error<'a>>
fn set_extranonce1( &mut self, server_id: Option<usize>, extranonce1: Extranonce<'a>, )
fn extranonce1(&self, server_id: Option<usize>) -> Extranonce<'a>
fn set_extranonce2_size( &mut self, server_id: Option<usize>, extra_nonce2_size: usize, )
fn extranonce2_size(&self, server_id: Option<usize>) -> usize
fn version_rolling_mask(&self, server_id: Option<usize>) -> Option<HexU32Be>
fn set_version_rolling_mask( &mut self, server_id: Option<usize>, mask: Option<HexU32Be>, )
fn set_version_rolling_min_bit( &mut self, server_id: Option<usize>, min: Option<HexU32Be>, )
fn version_rolling_min_bit( &mut self, server_id: Option<usize>, ) -> Option<HexU32Be>
fn set_status(&mut self, server_id: Option<usize>, status: ClientStatus)
fn signature(&self, server_id: Option<usize>) -> String
fn status(&self, server_id: Option<usize>) -> ClientStatus
fn last_notify(&self, server_id: Option<usize>) -> Option<Notify<'_>>
Check if the given user_name has been authorized by the server
Register the given user_name has authorized by the server
Provided Methods§
Sourcefn handle_message(
&mut self,
server_id: Option<usize>,
msg: Message,
) -> Result<Option<Message>, Error<'a>>where
Self: Sized,
fn handle_message(
&mut self,
server_id: Option<usize>,
msg: Message,
) -> Result<Option<Message>, Error<'a>>where
Self: Sized,
Deserialize a raw json_rpc message into a [stratum v1 message][b] and handle the result.
[b]:
fn update_response( &mut self, server_id: Option<usize>, response: Server2ClientResponse<'a>, ) -> Result<Server2ClientResponse<'a>, Error<'a>>
Sourcefn handle_request(
&mut self,
server_id: Option<usize>,
request: Server2Client<'a>,
) -> Result<Option<Message>, Error<'a>>where
Self: Sized,
fn handle_request(
&mut self,
server_id: Option<usize>,
request: Server2Client<'a>,
) -> Result<Option<Message>, Error<'a>>where
Self: Sized,
Call the right handler according with the called method