@@ -110,7 +110,9 @@ def __init__(self, onts, attrc, metadata="", node_name=None, **kwargs):
110
110
self .metadata = metadata
111
111
self .security = None
112
112
self .node_name = node_name
113
-
113
+ self .entities_descr = None
114
+ self .entity_descr = None
115
+
114
116
def items (self ):
115
117
return self .entity .items ()
116
118
@@ -240,7 +242,7 @@ def _service(self, entity_id, typ, service, binding=None):
240
242
logger .debug ("_service => %s" % res )
241
243
return res
242
244
243
- def _ext_service (self , entity_id , typ , service , binding ):
245
+ def ext_service (self , entity_id , typ , service , binding ):
244
246
try :
245
247
srvs = self [entity_id ][typ ]
246
248
except KeyError :
@@ -384,8 +386,8 @@ def load(self):
384
386
_txt = self .get_metadata_content ()
385
387
if self .cert :
386
388
node_name = self .node_name \
387
- or "%s:%s" % (md .EntitiesDescriptor .c_namespace ,
388
- md .EntitiesDescriptor .c_tag )
389
+ or "%s:%s" % (md .EntitiesDescriptor .c_namespace ,
390
+ md .EntitiesDescriptor .c_tag )
389
391
390
392
if self .security .verify_signature (_txt ,
391
393
node_name = node_name ,
@@ -404,10 +406,12 @@ class MetaDataLoader(MetaDataFile):
404
406
"""
405
407
def __init__ (self , onts , attrc , loader_callable , cert = None , ** kwargs ):
406
408
MetaData .__init__ (self , onts , attrc , ** kwargs )
407
- self .metadata_provider_callable = self .get_metadata_loader (loader_callable )
409
+ self .metadata_provider_callable = self .get_metadata_loader (
410
+ loader_callable )
408
411
self .cert = cert
409
412
410
- def get_metadata_loader (self , func ):
413
+ @staticmethod
414
+ def get_metadata_loader (func ):
411
415
if callable (func ):
412
416
return func
413
417
@@ -416,26 +420,22 @@ def get_metadata_loader(self, func):
416
420
try :
417
421
mod = import_module (module )
418
422
except Exception , e :
419
- raise RuntimeError ('Cannot find metadata provider function %s: "%s"' % (func , e ))
423
+ raise RuntimeError (
424
+ 'Cannot find metadata provider function %s: "%s"' % (func , e ))
420
425
421
426
try :
422
427
metadata_loader = getattr (mod , attr )
423
428
except AttributeError :
424
429
raise RuntimeError (
425
- 'Module "%s" does not define a "%s" metadata loader' %
426
- (module , attr )
427
- )
430
+ 'Module "%s" does not define a "%s" metadata loader' % (
431
+ module , attr ))
428
432
429
433
if not callable (metadata_loader ):
430
434
raise RuntimeError (
431
- 'Metadata loader %s.%s must be callable' %
432
- (module , attr )
433
- )
435
+ 'Metadata loader %s.%s must be callable' % (module , attr ))
434
436
435
437
return metadata_loader
436
438
437
-
438
-
439
439
def get_metadata_content (self ):
440
440
return self .metadata_provider_callable ()
441
441
@@ -469,8 +469,8 @@ def load(self):
469
469
response = self .http .send (self .url )
470
470
if response .status_code == 200 :
471
471
node_name = self .node_name \
472
- or "%s:%s" % (md .EntitiesDescriptor .c_namespace ,
473
- md .EntitiesDescriptor .c_tag )
472
+ or "%s:%s" % (md .EntitiesDescriptor .c_namespace ,
473
+ md .EntitiesDescriptor .c_tag )
474
474
475
475
_txt = response .text .encode ("utf-8" )
476
476
if self .cert :
@@ -522,28 +522,28 @@ def __init__(self, onts, attrc, config, ca_certs=None,
522
522
def load (self , typ , * args , ** kwargs ):
523
523
if typ == "local" :
524
524
key = args [0 ]
525
- md = MetaDataFile (self .onts , self .attrc , args [0 ])
525
+ _md = MetaDataFile (self .onts , self .attrc , args [0 ])
526
526
elif typ == "inline" :
527
527
self .ii += 1
528
528
key = self .ii
529
- md = MetaData (self .onts , self .attrc , args [0 ], ** kwargs )
529
+ _md = MetaData (self .onts , self .attrc , args [0 ], ** kwargs )
530
530
elif typ == "remote" :
531
531
key = kwargs ["url" ]
532
- md = MetaDataExtern (self .onts , self .attrc ,
533
- kwargs ["url" ], self .security ,
534
- kwargs ["cert" ], self .http ,
535
- node_name = kwargs .get ('node_name' ))
532
+ _md = MetaDataExtern (self .onts , self .attrc ,
533
+ kwargs ["url" ], self .security ,
534
+ kwargs ["cert" ], self .http ,
535
+ node_name = kwargs .get ('node_name' ))
536
536
elif typ == "mdfile" :
537
537
key = args [0 ]
538
- md = MetaDataMD (self .onts , self .attrc , args [0 ])
538
+ _md = MetaDataMD (self .onts , self .attrc , args [0 ])
539
539
elif typ == "loader" :
540
540
key = args [0 ]
541
- md = MetaDataLoader (self .onts , self .attrc , args [0 ])
541
+ _md = MetaDataLoader (self .onts , self .attrc , args [0 ])
542
542
else :
543
543
raise SAMLError ("Unknown metadata type '%s'" % typ )
544
544
545
- md .load ()
546
- self .metadata [key ] = md
545
+ _md .load ()
546
+ self .metadata [key ] = _md
547
547
548
548
def imp (self , spec ):
549
549
for key , vals in spec .items ():
@@ -555,8 +555,8 @@ def imp(self, spec):
555
555
556
556
def _service (self , entity_id , typ , service , binding = None ):
557
557
known_principal = False
558
- for key , md in self .metadata .items ():
559
- srvs = md ._service (entity_id , typ , service , binding )
558
+ for key , _md in self .metadata .items ():
559
+ srvs = _md ._service (entity_id , typ , service , binding )
560
560
if srvs :
561
561
return srvs
562
562
elif srvs is None :
@@ -571,10 +571,10 @@ def _service(self, entity_id, typ, service, binding=None):
571
571
logger .error ("Unknown principal: %s" % entity_id )
572
572
raise UnknownPrincipal (entity_id )
573
573
574
- def _ext_service (self , entity_id , typ , service , binding = None ):
574
+ def ext_service (self , entity_id , typ , service , binding = None ):
575
575
known_principal = False
576
- for key , md in self .metadata .items ():
577
- srvs = md . _ext_service (entity_id , typ , service , binding )
576
+ for key , _md in self .metadata .items ():
577
+ srvs = _md . ext_service (entity_id , typ , service , binding )
578
578
if srvs :
579
579
return srvs
580
580
elif srvs is None :
@@ -674,26 +674,26 @@ def attribute_consuming_service(self, entity_id, binding=None, _="spsso"):
674
674
def discovery_response (self , entity_id , binding = None , _ = "spsso" ):
675
675
if binding is None :
676
676
binding = BINDING_DISCO
677
- return self ._ext_service (entity_id , "spsso_descriptor" ,
678
- "%s&%s" % (DiscoveryResponse .c_namespace ,
679
- DiscoveryResponse .c_tag ),
680
- binding )
677
+ return self .ext_service (entity_id , "spsso_descriptor" ,
678
+ "%s&%s" % (DiscoveryResponse .c_namespace ,
679
+ DiscoveryResponse .c_tag ),
680
+ binding )
681
681
682
682
def attribute_requirement (self , entity_id , index = 0 ):
683
- for md in self .metadata .values ():
684
- if entity_id in md :
685
- return md .attribute_requirement (entity_id , index )
683
+ for _md in self .metadata .values ():
684
+ if entity_id in _md :
685
+ return _md .attribute_requirement (entity_id , index )
686
686
687
687
def keys (self ):
688
688
res = []
689
- for md in self .metadata .values ():
690
- res .extend (md .keys ())
689
+ for _md in self .metadata .values ():
690
+ res .extend (_md .keys ())
691
691
return res
692
692
693
693
def __getitem__ (self , item ):
694
- for md in self .metadata .values ():
694
+ for _md in self .metadata .values ():
695
695
try :
696
- return md [item ]
696
+ return _md [item ]
697
697
except KeyError :
698
698
pass
699
699
@@ -704,8 +704,8 @@ def __setitem__(self, key, value):
704
704
705
705
def entities (self ):
706
706
num = 0
707
- for md in self .metadata .values ():
708
- num += len (md .items ())
707
+ for _md in self .metadata .values ():
708
+ num += len (_md .items ())
709
709
710
710
return num
711
711
@@ -714,14 +714,14 @@ def __len__(self):
714
714
715
715
def with_descriptor (self , descriptor ):
716
716
res = {}
717
- for md in self .metadata .values ():
718
- res .update (md .with_descriptor (descriptor ))
717
+ for _md in self .metadata .values ():
718
+ res .update (_md .with_descriptor (descriptor ))
719
719
return res
720
720
721
721
def name (self , entity_id , langpref = "en" ):
722
- for md in self .metadata .values ():
723
- if entity_id in md .items ():
724
- return name (md [entity_id ], langpref )
722
+ for _md in self .metadata .values ():
723
+ if entity_id in _md .items ():
724
+ return name (_md [entity_id ], langpref )
725
725
return None
726
726
727
727
def certs (self , entity_id , descriptor , use = "signing" ):
@@ -779,9 +779,9 @@ def entity_categories(self, entity_id):
779
779
return res
780
780
781
781
def bindings (self , entity_id , typ , service ):
782
- for md in self .metadata .values ():
783
- if entity_id in md .items ():
784
- return md .bindings (entity_id , typ , service )
782
+ for _md in self .metadata .values ():
783
+ if entity_id in _md .items ():
784
+ return _md .bindings (entity_id , typ , service )
785
785
786
786
return None
787
787
@@ -794,20 +794,20 @@ def __str__(self):
794
794
795
795
def construct_source_id (self ):
796
796
res = {}
797
- for md in self .metadata .values ():
798
- res .update (md .construct_source_id ())
797
+ for _md in self .metadata .values ():
798
+ res .update (_md .construct_source_id ())
799
799
return res
800
800
801
801
def items (self ):
802
802
res = {}
803
- for md in self .metadata .values ():
804
- res .update (md .items ())
803
+ for _md in self .metadata .values ():
804
+ res .update (_md .items ())
805
805
return res .items ()
806
806
807
807
def _providers (self , descriptor ):
808
808
res = []
809
- for md in self .metadata .values ():
810
- for ent_id , ent_desc in md .items ():
809
+ for _md in self .metadata .values ():
810
+ for ent_id , ent_desc in _md .items ():
811
811
if descriptor in ent_desc :
812
812
res .append (ent_id )
813
813
return res
0 commit comments