X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fplc%2Faggregate.py;h=654a84f09537a70109ad698c60173077a1e9f9f3;hb=561044a25626b0c874f644886539ede0053967fc;hp=f210705b2bd9bd2e70a9fcd7ddb671fd0b817393;hpb=f11dae03d2dc79be445c9a604c9c7fc4b222d98d;p=sfa.git diff --git a/sfa/plc/aggregate.py b/sfa/plc/aggregate.py index f210705b..654a84f0 100644 --- a/sfa/plc/aggregate.py +++ b/sfa/plc/aggregate.py @@ -1,10 +1,12 @@ #!/usr/bin/python from sfa.util.xrn import hrn_to_urn, urn_to_hrn from sfa.util.plxrn import PlXrn, hostname_to_urn, hrn_to_pl_slicename + from sfa.rspecs.rspec import RSpec from sfa.rspecs.elements.link import Link from sfa.rspecs.elements.interface import Interface -from sfa.managers.vini.topology import PhysicalLinks + +from sfa.util.topology import Topology from sfa.rspecs.version_manager import VersionManager from sfa.plc.vlink import get_tc_rate @@ -27,13 +29,13 @@ class Aggregate: def prepare_sites(self, filter={}, force=False): if not self.sites or force: - for site in self.api.plshell.GetSites(self.api.plauth, filter): + for site in self.api.driver.GetSites(filter): self.sites[site['site_id']] = site def prepare_nodes(self, filter={}, force=False): if not self.nodes or force: filter.update({'peer_id': None}) - nodes = self.api.plshell.GetNodes(self.api.plauth, filter) + nodes = self.api.driver.GetNodes(filter) site_ids = [] interface_ids = [] tag_ids = [] @@ -61,15 +63,18 @@ class Aggregate: def prepare_interfaces(self, filter={}, force=False): if not self.interfaces or force: - for interface in self.api.plshell.GetInterfaces(self.api.plauth, filter): + for interface in self.api.driver.GetInterfaces(filter): self.interfaces[interface['interface_id']] = interface def prepare_links(self, filter={}, force=False): + # we're aobut to deprecate sfa_aggregate_type, need to get this right + # with the generic framework if not self.links or force: if not self.api.config.SFA_AGGREGATE_TYPE.lower() == 'vini': return - for (site_id1, site_id2) in PhysicalLinks: + topology = Topology() + for (site_id1, site_id2) in topology: link = Link() if not site_id1 in self.sites or site_id2 not in self.sites: continue @@ -104,13 +109,13 @@ class Aggregate: def prepare_node_tags(self, filter={}, force=False): if not self.node_tags or force: - for node_tag in self.api.plshell.GetNodeTags(self.api.plauth, filter): + for node_tag in self.api.driver.GetNodeTags(filter): self.node_tags[node_tag['node_tag_id']] = node_tag def prepare_pl_initscripts(self, filter={}, force=False): if not self.pl_initscripts or force: filter.update({'enabled': True}) - for initscript in self.api.plshell.GetInitScripts(self.api.plauth, filter): + for initscript in self.api.driver.GetInitScripts(filter): self.pl_initscripts[initscript['initscript_id']] = initscript def prepare(self, slice = None, force=False): @@ -145,7 +150,7 @@ class Aggregate: if slice_xrn: slice_hrn, _ = urn_to_hrn(slice_xrn) slice_name = hrn_to_pl_slicename(slice_hrn) - slices = self.api.plshell.GetSlices(self.api.plauth, slice_name) + slices = self.api.driver.GetSlices(slice_name) if slices: slice = slices[0] self.prepare(slice=slice) @@ -173,7 +178,7 @@ class Aggregate: # add slivers if slice_xrn and slice: slivers = [] - tags = self.api.plshell.GetSliceTags(self.api.plauth, slice['slice_tag_ids']) + tags = self.api.driver.GetSliceTags(slice['slice_tag_ids']) # add default tags for tag in tags: