ethos_penalps.process_state_switch_selector#

Module Contents#

Classes#

ProcessStateSwitchSelector

Helper class that provides a standard way to create an ABC using

SingleChoiceSelector

Helper class that provides a standard way to create an ABC using

MultiTargetSelector

Helper class that provides a standard way to create an ABC using

BatchStateSwitchSelector

Helper class that provides a standard way to create an ABC using

ProvideOutputFromStorageSwitchSelector

Helper class that provides a standard way to create an ABC using

ProcessStateSwitchSelectorHandler

The process state switch selector adds an object which decides which process state switch

Attributes#

logger

ethos_penalps.process_state_switch_selector.logger#
class ethos_penalps.process_state_switch_selector.ProcessStateSwitchSelector(process_step_data: ethos_penalps.process_step_data.ProcessStepData)#

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

abstract select_state_switch() ethos_penalps.process_state_switch.ProcessStateSwitch#
class ethos_penalps.process_state_switch_selector.SingleChoiceSelector(process_step_data: ethos_penalps.process_step_data.ProcessStepData, process_state_switch: ethos_penalps.process_state_switch.ProcessStateSwitch)#

Bases: ProcessStateSwitchSelector

Helper class that provides a standard way to create an ABC using inheritance.

select_state_switch() ethos_penalps.process_state_switch.ProcessStateSwitch#
class ethos_penalps.process_state_switch_selector.MultiTargetSelector#

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

class ethos_penalps.process_state_switch_selector.BatchStateSwitchSelector(process_step_data: ethos_penalps.process_step_data.ProcessStepData, further_input_is_required_switch: ethos_penalps.process_state_switch.ProcessStateSwitch, input_is_satisfied_switch: ethos_penalps.process_state_switch.ProcessStateSwitch)#

Bases: ProcessStateSwitchSelector, MultiTargetSelector

Helper class that provides a standard way to create an ABC using inheritance.

select_state_switch() ethos_penalps.process_state_switch.ProcessStateSwitch#
class ethos_penalps.process_state_switch_selector.ProvideOutputFromStorageSwitchSelector(process_step_data: ethos_penalps.process_step_data.ProcessStepData, output_is_supplied_from_storage_switch: ethos_penalps.process_state_switch.ProcessStateSwitch, input_stream_is_required_switch: ethos_penalps.process_state_switch.ProcessStateSwitch)#

Bases: ProcessStateSwitchSelector, MultiTargetSelector

Helper class that provides a standard way to create an ABC using inheritance.

select_state_switch() ethos_penalps.process_state_switch.ProcessStateSwitch#
class ethos_penalps.process_state_switch_selector.ProcessStateSwitchSelectorHandler(process_step_data: ethos_penalps.process_step_data.ProcessStepData)#

The process state switch selector adds an object which decides which process state switch has to be applied for the next process state switch

get_switch_selector_to_previous_state(current_process_state_name: str) ProcessStateSwitchSelector#

Returns a process state switch selector with all process state switches that have the current state as a target. Only a single ProcessStateSwitch is allowed per state.

Parameters:

current_process_state_name (str) – _description_

Returns:

_description_

Return type:

ProcessStateSwitchSelector

add_process_state_switch_selector(process_state_switch_selector: ProcessStateSwitchSelector)#

Adds a process state switch selector to the process_state_switch_selector_dict. Only a single ProcessStateSwitchSelector is allowed per state. It has to handle all possible path decisions to the current state.

Parameters:

process_state_switch_selector (ProcessStateSwitchSelector) – _description_

Raises:

Exception – _description_

create_single_choice_selector(process_state_switch: ethos_penalps.process_state_switch.ProcessStateSwitch) SingleChoiceSelector#
create_batch_state_switch_selector(further_input_is_required_switch: ethos_penalps.process_state_switch.ProcessStateSwitch, input_is_satisfied_switch: ethos_penalps.process_state_switch.ProcessStateSwitch) BatchStateSwitchSelector#
create_storage_provision_state_switch(output_is_supplied_from_storage_switch: ethos_penalps.process_state_switch.ProcessStateSwitch, input_stream_is_required_switch: ethos_penalps.process_state_switch.ProcessStateSwitch)#