- if self.api.interface in ['geni_am']:
- mgr_type = self.api.config.SFA_GENI_AGGREGATE_TYPE
- manager_module = manager_base + ".geni_am_%s" % mgr_type
- manager = __import__(manager_module, fromlist=[manager_base])
- rspec = manager.ListResources(self.api, ValidCreds, options)
- outgoing_rules = SFATablesRules('OUTGOING')
-
-
- filtered_rspec = rspec
- if outgoing_rules.sorted_rule_list:
- context = {'sfa':{'user':{'hrn':origin_hrn}, 'slice':{'hrn':None}}}
- outgoing_rules.set_context(context)
- filtered_rspec = outgoing_rules.apply(rspec)
+ # get hrn of the original caller
+ origin_hrn = options.get('origin_hrn', None)
+ print >>sys.stderr, " \r\n \r\n \t Lsitresources :origin_hrn %s sansvqalid credss %s " %(origin_hrn, Credential(string=creds[0]).get_gid_caller().get_hrn())
+ if not origin_hrn:
+ origin_hrn = Credential(string=valid_creds[0]).get_gid_caller().get_hrn()
+ print >>sys.stderr, " \r\n \r\n \t Lsitresources.py000 call : hrn %s self.api.interface %s origin_hrn %s \r\n \r\n \r\n " %(hrn ,self.api.interface,origin_hrn)
+ rspec = self.api.manager.ListResources(self.api, creds, options)
+
+ # filter rspec through sfatables
+ if self.api.interface in ['aggregate']:
+ chain_name = 'OUTGOING'
+ elif self.api.interface in ['slicemgr']:
+ chain_name = 'FORWARD-OUTGOING'
+ self.api.logger.debug("ListResources: sfatables on chain %s"%chain_name)
+ print >>sys.stderr, " \r\n \r\n \t Listresources.py001 call : chain_name %s hrn %s origine_hrn %s " %(chain_name, hrn, origin_hrn)
+ filtered_rspec = run_sfatables(chain_name, hrn, origin_hrn, rspec)