@@ -626,6 +626,17 @@ def copy(self):
626
626
def __len__ (self ):
627
627
return len (self ._issuers )
628
628
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
+
629
640
def dump (
630
641
self ,
631
642
exclude_issuers : Optional [List [str ]] = None ,
@@ -655,13 +666,12 @@ def dump(
655
666
except KeyError :
656
667
pass
657
668
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 )
665
675
666
676
return info
667
677
0 commit comments