pub trait ServantBuilder:
Send
+ BoxClone
+ ServantBuilderParameters
+ Serialize
+ Deserialize {
// Provided methods
fn dyn_clone(&self) -> Box<dyn ServantBuilder> { ... }
fn build(
&self,
servant_id: u32,
servant_name: String,
ch_naming: &FnvHashMap<u64, String>,
recv_from_master: Receiver<(MsgFromMaster, Sender<ReplyToMaster>)>,
send_2_master: SendToMaster,
task_id: IdBuilder,
) -> Result<Servant, String> { ... }
}
Expand description
Trait with serde tag and main servant builder implementations
Provided Methods§
Sourcefn dyn_clone(&self) -> Box<dyn ServantBuilder>
fn dyn_clone(&self) -> Box<dyn ServantBuilder>
Clone the servant builder as boxed dyn ServantBuilder
- Output: boxed clone as
dyn ServantBuilder
Sourcefn build(
&self,
servant_id: u32,
servant_name: String,
ch_naming: &FnvHashMap<u64, String>,
recv_from_master: Receiver<(MsgFromMaster, Sender<ReplyToMaster>)>,
send_2_master: SendToMaster,
task_id: IdBuilder,
) -> Result<Servant, String>
fn build( &self, servant_id: u32, servant_name: String, ch_naming: &FnvHashMap<u64, String>, recv_from_master: Receiver<(MsgFromMaster, Sender<ReplyToMaster>)>, send_2_master: SendToMaster, task_id: IdBuilder, ) -> Result<Servant, String>
Build a servant instance
- This method is for silx internal use
servant_id: ServantIdType
: internal servant idservant_name: String
: servant namech_naming: &FnvHashMap<ChannelIdType, String,>
: channels ids and namesrecv_from_master: RecvFromMaster
: channel receiver from the cluster mastersend_2_master: SendToMaster
: channel sender to the cluster mastertask_id: IdBuilder
: task id builder for tasking the cluster master- Output: a servant instance or an error