Skip to content

Commit eba5299

Browse files
committed
Fixed exclude_attributes problem.
1 parent 161db5e commit eba5299

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

src/cryptojwt/key_jar.py

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -626,6 +626,17 @@ def copy(self):
626626
def __len__(self):
627627
return len(self._issuers)
628628

629+
def _dump_issuers(self,
630+
exclude_issuers: Optional[List[str]] = None,
631+
exclude_attributes: Optional[List[str]] = None
632+
):
633+
_issuers = {}
634+
for _id, _issuer in self._issuers.items():
635+
if exclude_issuers and _issuer.name in exclude_issuers:
636+
continue
637+
_issuers[_id] = _issuer.dump(exclude_attributes=exclude_attributes)
638+
return _issuers
639+
629640
def dump(
630641
self,
631642
exclude_issuers: Optional[List[str]] = None,
@@ -655,13 +666,12 @@ def dump(
655666
except KeyError:
656667
pass
657668

658-
if "issuers" not in exclude_attributes:
659-
_issuers = {}
660-
for _id, _issuer in self._issuers.items():
661-
if exclude_issuers and _issuer.name in exclude_issuers:
662-
continue
663-
_issuers[_id] = _issuer.dump(exclude_attributes=exclude_attributes)
664-
info["issuers"] = _issuers
669+
if exclude_attributes is None:
670+
info["issuers"] = self._dump_issuers(exclude_issuers=exclude_issuers,
671+
exclude_attributes=exclude_attributes)
672+
elif "issuers" not in exclude_attributes:
673+
info["issuers"] = self._dump_issuers(exclude_issuers=exclude_issuers,
674+
exclude_attributes=exclude_attributes)
665675

666676
return info
667677

0 commit comments

Comments
 (0)