removed another bunch of references to geni
[sfa.git] / sfa / rspecs / aggregates / rspec_manager_max.py
index afedffd..c6504b9 100644 (file)
@@ -1,9 +1,9 @@
 #!/usr/bin/python
 
-from sfa.util.rspec import Rspec
+from sfa.util.rspec import RSpec
 import sys
 import pdb
-from sfa.util.misc import *
+from sfa.util.namespace import *
 from sfa.util.rspec import *
 from sfa.util.specdict import *
 from sfa.util.faults import *
@@ -22,21 +22,21 @@ SFA_MAX_CANNED_RSPEC = '/etc/sfa/max_physical_canned.xml'
 
 topology = {}
 
-class GeniOutOfResource(GeniFault):
+class SfaOutOfResource(SfaFault):
     def __init__(self, interface):
         faultString = "Interface " + interface + " not available"
-        GeniFault.__init__(self, 100, faultString, '')
+        SfaFault.__init__(self, 100, faultString, '')
 
-class GeniNoPairRspec(GeniFault):
+class SfaNoPairRSpec(SfaFault):
     def __init__(self, interface, interface2):
         faultString = "Interface " + interface + " should be paired with " + interface2
-        GeniFault.__init__(self, 100, faultString, '')
+        SfaFault.__init__(self, 100, faultString, '')
 
 # Returns a mapping from interfaces to the nodes they lie on and their peer interfaces
 # i -> node,i_peer
 
 def get_interface_map():
-    r = Rspec()
+    r = RSpec()
     r.parseFile(SFA_MAX_DEFAULT_RSPEC)
     rspec = r.toDict()
     capacity = rspec['rspec']['capacity']
@@ -122,11 +122,15 @@ def collapse_alloc_dict(d):
 
 
 def alloc_links(api, hrn, links_to_add, links_to_drop):
-    pdb.set_trace()
     slicename=hrn_to_pl_slicename(hrn)
     for (iface,ip) in links_to_add:
         node = topology[iface][0][0]
-        api.plshell.AddSliceTag(api.plauth, slicename, "ip_addresses", ip, node)
+        try:
+            api.plshell.AddSliceTag(api.plauth, slicename, "ip_addresses", ip, node)
+            api.plshell.AddSliceTag(api.plauth, slicename, "vsys", "getvlan", node)
+        except Exception: 
+            # Probably a duplicate tag. XXX July 21
+            pass
     return True
 
 def alloc_nodes(api,hrn, requested_ifs):
@@ -136,7 +140,7 @@ def alloc_nodes(api,hrn, requested_ifs):
 # Taken from slices.py
 
 def create_slice_max_aggregate(api, hrn, nodes):
-    # Get the slice record from geni
+    # Get the slice record from SFA
     global topology
     topology = get_interface_map()
     slice = {}
@@ -263,7 +267,7 @@ def create_slice(api, hrn, rspec_xml):
 
     # Check if everything in rspec is either allocated by hrn
     # or not allocated at all.
-    r = Rspec()
+    r = RSpec()
     r.parseString(rspec_xml)
     rspec = r.toDict()
 
@@ -284,9 +288,9 @@ def create_slice(api, hrn, rspec_xml):
 
     for a in requested_interfaces:
         if (a not in current_hrn_interfaces and a in current_interfaces):
-            raise GeniOutOfResource(a)
+            raise SfaOutOfResource(a)
         if (topology[a][1] not in requested_interfaces):
-            raise GeniNoPairRspec(a,topology[a][1])
+            raise SfaNoPairRSpec(a,topology[a][1])
     # Request OK
 
     # Allocations to delete
@@ -312,13 +316,13 @@ def rspec_to_allocations(rspec):
         for l in ifspecs:
             ifs.extend([(l['name'].replace('tns:',''),l['ip'])])
     except KeyError:
-        # Bad Rspec
+        # Bad RSpec
         pass
     return ifs
 
 def main():
     t = get_interface_map()
-    r = Rspec()
+    r = RSpec()
     rspec_xml = open(sys.argv[1]).read()
     #get_rspec(None,'foo')
     create_slice(None, "plc.princeton.sap0", rspec_xml)