+++ /dev/null
-
-from geniserver import *
-from cert import *
-from trustedroot import *
-from excep import *
-from aggregate import *
-
-class AggregateServer(GeniServer):
-
- def __init__(self, ip, port, key_file, cert_file):
- GeniServer.__init__(self, ip, port, key_file, cert_file)
- self.aggregate = Aggregate(hrn)
-
- def nodes(self):
- return self.aggregate.get_components
-
- def slices(self):
- return self.aggregate.get_slices
-
- def resources(self, cred, hrn):
- self.decode_authentication(cred, 'info')
- self.verify_object_belongs_to_me(hrn)
-
- return self.aggregate.get_resources(hrn)
-
- def create(self, cred, hrn, rspec):
- self.decode_authentication(cred, 'embed')
- self.verify_object_belongs_to_me(hrn, rspec)
- return self.aggregate.create(hrn)
-
- def delete(self, cred, hrn):
- self.decode_authentication(cred, 'embed')
- self.verify_object_belongs_to_me(hrn)
- return self.aggregate.delete_slice(hrn)
-
- def start(self, cred, hrn):
- self.decode_authentication(cred, 'control')
- return self.aggregaet.start(hrn)
-
- def stop(self, cred, hrn):
- self.decode_authentication(cred, 'control')
- return self.aggregate.stop(hrn)
-
- def reset(self, cred, hrn):
- self.decode_authentication(cred, 'control')
- return self.aggregate.reset(hrn)
-
- def policy(self, cred):
- self.decode_authentication(cred, 'info')
- return self.aggregate.get_policy()
-
- def register_functions(self):
- GeniServer.register_functions(self)
-
- # Aggregate interface methods
- self.server.register_function(self.components)
- self.server.register_function(self.slices)
- self.server.register_function(self.resources)
- self.server.register_function(self.create)
- self.server.register_function(self.delete)
- self.server.register_function(self.start)
- self.server.register_function(self.stop)
- self.server.register_function(self.reset)
- self.server.register_function(self.policy)
-