diff options
author | Ioannis Kakavas <ikakavas@noc.grnet.gr> | 2017-08-02 11:11:17 +0300 |
---|---|---|
committer | Ioannis Kakavas <ikakavas@noc.grnet.gr> | 2017-08-02 11:11:17 +0300 |
commit | bfa0feab404aad688676c9e391151b9733e531ce (patch) | |
tree | f2158f7e10c4b4b698741d49a7bb17e62eaaba4c | |
parent | ac1778847735cfc99c5d421da015e7cdaa6df58a (diff) | |
download | pysaml2-bfa0feab404aad688676c9e391151b9733e531ce.tar.gz |
refactored based on @c00kiemon5ter comments
-rw-r--r-- | src/saml2/client_base.py | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/src/saml2/client_base.py b/src/saml2/client_base.py index 5ec45425..8c607df6 100644 --- a/src/saml2/client_base.py +++ b/src/saml2/client_base.py @@ -108,23 +108,25 @@ class Base(Entity): else: self.state = state_cache - # Handle values which are False by default - self.logout_requests_signed = False - self.allow_unsolicited = False - self.authn_requests_signed = False - self.want_assertions_signed = False - for param in ["allow_unsolicited", "authn_requests_signed", - "logout_requests_signed", "want_assertions_signed"]: - v = self.config.getattr(param, "sp") - if v is True or v == 'true': - setattr(self, param, True) - - # Handle values which are True by default - self.want_response_signed = True - for param in ["want_assertions_signed"]: - v = self.config.getattr(param, "sp") - if v is False or v == 'false': - setattr(self, param, False) + attribute_defaults = { + "logout_requests_signed": False, + "allow_unsolicited": False, + "authn_requests_signed": False, + "want_assertions_signed": False, + "want_response_signed": True, + } + + for attr, val_default in attribute_defaults.items(): + val_config = self.config.getattr(attr, "sp") + if val_config is None: + val = val_default + else: + val = val_config + + if val == 'true': + val = True + + setattr(self, attr, val) if self.entity_type == "sp" and not any([self.want_assertions_signed, self.want_response_signed]): |