diff --git a/pySim/cdma_ruim.py b/pySim/cdma_ruim.py index 96ff1a42..747a0d25 100644 --- a/pySim/cdma_ruim.py +++ b/pySim/cdma_ruim.py @@ -190,8 +190,8 @@ class CardProfileRUIM(CardProfile): # TODO: Response parameters/data in case of DF_CDMA (section 2.6) return CardProfileSIM.decode_select_response(data_hex) - @staticmethod - def match_with_card(scc: SimCardCommands) -> bool: + @classmethod + def match_with_card(cls, scc: SimCardCommands) -> bool: return match_ruim(scc) class AddonRUIM(CardProfileAddon): diff --git a/pySim/profile.py b/pySim/profile.py index 74946baf..ae9e19fe 100644 --- a/pySim/profile.py +++ b/pySim/profile.py @@ -137,9 +137,9 @@ class CardProfile: """ return data_hex - @staticmethod + @classmethod @abc.abstractmethod - def match_with_card(scc: SimCardCommands) -> bool: + def match_with_card(cls, scc: SimCardCommands) -> bool: """Check if the specific profile matches the card. This method is a placeholder that is overloaded by specific dirived classes. The method actively probes the card to make sure the profile class matches the diff --git a/pySim/ts_102_221.py b/pySim/ts_102_221.py index aba28cda..c1c1388b 100644 --- a/pySim/ts_102_221.py +++ b/pySim/ts_102_221.py @@ -884,8 +884,8 @@ class CardProfileUICC(CardProfile): d = t.to_dict() return flatten_dict_lists(d['fcp_template']) - @staticmethod - def match_with_card(scc: SimCardCommands) -> bool: + @classmethod + def match_with_card(cls, scc: SimCardCommands) -> bool: return match_uicc(scc) @with_default_category('TS 102 221 Specific Commands') diff --git a/pySim/ts_51_011.py b/pySim/ts_51_011.py index c6720fe3..69c8c79b 100644 --- a/pySim/ts_51_011.py +++ b/pySim/ts_51_011.py @@ -1192,8 +1192,8 @@ class CardProfileSIM(CardProfile): ret['life_cycle_status_int'] = 'terminated' return ret - @staticmethod - def match_with_card(scc: SimCardCommands) -> bool: + @classmethod + def match_with_card(cls, scc: SimCardCommands) -> bool: return match_sim(scc)