Index: leahi_dialin/dd/modules/events.py =================================================================== diff -u -r2cd5cb76b0c2045695d9a890e5489fb50e6dba89 -r3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d --- leahi_dialin/dd/modules/events.py (.../events.py) (revision 2cd5cb76b0c2045695d9a890e5489fb50e6dba89) +++ leahi_dialin/dd/modules/events.py (.../events.py) (revision 3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d) @@ -217,7 +217,7 @@ event_tuple = (current_timestamp, event_enum.name, data_1.value, data_2.value) elif event_enum is dd_enum_repository.DDEventList.DD_EVENT_OPERATION_STATUS: - op_mode_enum, sub_mode_enum, state_enum, _ = self._operation_status_match(op_mode=op_mode, sub_mode=sub_mode, state=sub_state) + op_mode_enum, sub_mode_enum, state_enum, _ = self._operation_status_match(op_mode=op_mode.value, sub_mode=sub_mode.value, state=sub_state.value) event_tuple = (current_timestamp, op_mode_enum, sub_mode_enum, state_enum) # Update event dictionary @@ -286,17 +286,21 @@ return list_of_events - def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: + def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None, debug: bool=False) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: """ Convert operation status values to enums. :param op_mode: (Integer) The operation mode value :param sub_mode: (Integer) The operation sub mode value :param state: (Integer) The operation state value :param sub_state: (Integer) The operation sub state value + :param debug: (Boolean) Print debug data or not :return: Returns the DialinEnum for each provied mode/state, or the original integer value if no enum is found """ op_mode_enum = dd_enum_repository.DDOpModes(op_mode) + if debug: + print(f'\nDebug op_mode: {op_mode}') + print(f'Debug op_mode_enum: {op_mode_enum}') sub_mode_enum = None state_enum = None sub_state_enum = None @@ -305,15 +309,24 @@ sub_mode_enum = sub_mode else: sub_mode_enum = self._op_mode_2_sub_mode[op_mode_enum.name](sub_mode) + if debug: + print(f'Debug sub_mode: {sub_mode}') + print(f'Debug sub_mode_enum: {sub_mode_enum}') if state is not None: - if sub_mode_enum.name not in self._sub_mode_2_states: + if sub_mode_enum.name not in self._sub_mode_2_states or len(self._sub_mode_2_states[sub_mode_enum.name]) < state: state_enum = state else: state_enum = self._sub_mode_2_states[sub_mode_enum.name](state) + if debug: + print(f'Debug state: {state}') + print(f'Debug state_enum: {state_enum}') if sub_state is not None: if state_enum.name not in self._state_2_sub_states: sub_state_enum = sub_state else: sub_state_enum = self._state_2_sub_states[state_enum.name](sub_state) + if debug: + print(f'Debug sub_state: {sub_state}') + print(f'Debug sub_state_enum: {sub_state_enum}') return op_mode_enum, sub_mode_enum, state_enum, sub_state_enum Index: leahi_dialin/fp/modules/events.py =================================================================== diff -u -r2cd5cb76b0c2045695d9a890e5489fb50e6dba89 -r3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d --- leahi_dialin/fp/modules/events.py (.../events.py) (revision 2cd5cb76b0c2045695d9a890e5489fb50e6dba89) +++ leahi_dialin/fp/modules/events.py (.../events.py) (revision 3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d) @@ -221,7 +221,7 @@ event_tuple = (current_timestamp, event_enum.name, data_1.value, data_2.value) elif event_enum is fp_enum_repository.FPEventList.FP_EVENT_OPERATION_STATUS: - op_mode_enum, sub_mode_enum, state_enum, _ = self._operation_status_match(op_mode=op_mode, sub_mode=sub_mode, state=sub_state) + op_mode_enum, sub_mode_enum, state_enum, _ = self._operation_status_match(op_mode=op_mode.value, sub_mode=sub_mode.value, state=sub_state.value) event_tuple = (current_timestamp, op_mode_enum, sub_mode_enum, state_enum) # Update event dictionary @@ -290,17 +290,21 @@ return list_of_events - def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: + def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None, debug: bool=False) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: """ Convert operation status values to enums. :param op_mode: (Integer) The operation mode value :param sub_mode: (Integer) The operation sub mode value :param state: (Integer) The operation state value :param sub_state: (Integer) The operation sub state value + :param debug: (Boolean) Print debug data or not :return: Returns the DialinEnum for each provied mode/state, or the original integer value if no enum is found """ op_mode_enum = fp_enum_repository.FPOpModes(op_mode) + if debug: + print(f'\nDebug op_mode: {op_mode}') + print(f'Debug op_mode_enum: {op_mode_enum}') sub_mode_enum = None state_enum = None sub_state_enum = None @@ -309,15 +313,24 @@ sub_mode_enum = sub_mode else: sub_mode_enum = self._op_mode_2_sub_mode[op_mode_enum.name](sub_mode) + if debug: + print(f'Debug sub_mode: {sub_mode}') + print(f'Debug sub_mode_enum: {sub_mode_enum}') if state is not None: - if sub_mode_enum.name not in self._sub_mode_2_states: + if sub_mode_enum.name not in self._sub_mode_2_states or len(self._sub_mode_2_states[sub_mode_enum.name]) < state: state_enum = state else: state_enum = self._sub_mode_2_states[sub_mode_enum.name](state) + if debug: + print(f'Debug state: {state}') + print(f'Debug state_enum: {state_enum}') if sub_state is not None: if state_enum.name not in self._state_2_sub_states: sub_state_enum = sub_state else: sub_state_enum = self._state_2_sub_states[state_enum.name](sub_state) + if debug: + print(f'Debug sub_state: {sub_state}') + print(f'Debug sub_state_enum: {sub_state_enum}') return op_mode_enum, sub_mode_enum, state_enum, sub_state_enum Index: leahi_dialin/td/modules/events.py =================================================================== diff -u -r37b10a13237bfde8838547a83f8dcc3f8818bf0d -r3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d --- leahi_dialin/td/modules/events.py (.../events.py) (revision 37b10a13237bfde8838547a83f8dcc3f8818bf0d) +++ leahi_dialin/td/modules/events.py (.../events.py) (revision 3b0a81ce7a7bee195a26fdcb9f1ad387088fb26d) @@ -300,47 +300,47 @@ return list_of_events - def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: + def _operation_status_match(self, op_mode: int, sub_mode: int=None, state:int=None, sub_state: int=None, debug: bool=False) -> Tuple[DialinEnum, Union[DialinEnum, int], Union[DialinEnum, int], Union[DialinEnum, int]]: """ Convert operation status values to enums. :param op_mode: (Integer) The operation mode value :param sub_mode: (Integer) The operation sub mode value :param state: (Integer) The operation state value :param sub_state: (Integer) The operation sub state value + :param debug: (Boolean) Print debug data or not :return: Returns the DialinEnum for each provied mode/state, or the original integer value if no enum is found """ - print(f'\nDebug op_mode: {op_mode}') op_mode_enum = td_enum_repository.TDOpModes(op_mode) - print(f'Debug op_mode_enum: {op_mode_enum}') + if debug: + print(f'\nDebug op_mode: {op_mode}') + print(f'Debug op_mode_enum: {op_mode_enum}') sub_mode_enum = None state_enum = None sub_state_enum = None if sub_mode is not None: - print(f'Debug sub_mode: {sub_mode}') if op_mode_enum.name not in self._op_mode_2_sub_mode: - print('No action') sub_mode_enum = sub_mode else: sub_mode_enum = self._op_mode_2_sub_mode[op_mode_enum.name](sub_mode) + if debug: + print(f'Debug sub_mode: {sub_mode}') print(f'Debug sub_mode_enum: {sub_mode_enum}') if state is not None: - print(f'Debug state: {state}') if sub_mode_enum.name not in self._sub_mode_2_states or len(self._sub_mode_2_states[sub_mode_enum.name]) < state: - print('No action') state_enum = state else: - print(len(self._sub_mode_2_states[sub_mode_enum.name])) - print(len(self._sub_mode_2_states[sub_mode_enum.name]) < state) state_enum = self._sub_mode_2_states[sub_mode_enum.name](state) + if debug: + print(f'Debug state: {state}') print(f'Debug state_enum: {state_enum}') if sub_state is not None: - print(f'Debug sub_state: {sub_state}') if state_enum.name not in self._state_2_sub_states: - print('No action') sub_state_enum = sub_state else: sub_state_enum = self._state_2_sub_states[state_enum.name](sub_state) + if debug: + print(f'Debug sub_state: {sub_state}') print(f'Debug sub_state_enum: {sub_state_enum}') return op_mode_enum, sub_mode_enum, state_enum, sub_state_enum