fn state()

in netbench-orchestrator/src/russula/workflow.rs [36:61]


    fn state(&self) -> &Self::State;
    fn state_mut(&mut self) -> &mut Self::State;

    /// Track events for the current workflow.
    fn event_recorder(&mut self) -> &mut EventRecorder;

    /// Used for debugging and creating unique log files.
    fn name(&self) -> String;

    /// Track the peers state. Mainly used for debugging.
    fn update_peer_state(&mut self, msg: Msg) -> RussulaResult<()>;

    fn ready_state(&self) -> Self::State;
    fn done_state(&self) -> Self::State;
    /// Should only be called by Coordinators
    fn worker_running_state(&self) -> Self::State;

    /// Check if the Instance is at the desired state
    fn is_state(&self, workflow_state: WorkflowState) -> bool {
        let state = match workflow_state {
            WorkflowState::Ready => self.ready_state(),
            WorkflowState::Done => self.done_state(),
            WorkflowState::WorkerRunning => self.worker_running_state(),
        };
        self.state().eq(&state)
    }