X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fmanagers%2Fcomponent_manager_pl.py;h=96304790b170903b37e209d4b0a445ec2914dfb8;hb=0d8c502d5ede80349764103f580c4000a8fce97a;hp=5c9506df069d37b3db3276d5beb4864c91c64f62;hpb=99e9f96209b9ebfd1853e7b8902a1a0fe893eaa2;p=sfa.git diff --git a/sfa/managers/component_manager_pl.py b/sfa/managers/component_manager_pl.py index 5c9506df..96304790 100644 --- a/sfa/managers/component_manager_pl.py +++ b/sfa/managers/component_manager_pl.py @@ -1,9 +1,13 @@ -import os import xmlrpclib -from sfa.util.faults import * -from sfa.util.namespace import urn_to_hrn, hrn_to_pl_slicename -from sfa.util.sfaticket import SfaTicket +from sfa.util.faults import SliverDoesNotExist +from sfa.util.plxrn import PlXrn +from sfa.trust.sfaticket import SfaTicket +from sfa.util.version import version_core + +def GetVersion(api, options): + return version_core({'interface':'component', + 'testbed':'myplc'}) def init_server(): from sfa.server import sfa_component_setup @@ -13,15 +17,10 @@ def init_server(): except: # our keypair may be old, try refreshing sfa_component_setup.get_node_key() - sfa_component_setup.get_credential(force=True) + sfa_component_setup.GetCredential(force=True) sfa_component_setup.get_trusted_certs() -def get_version(): - version = {} - version['geni_api'] = 1 - return version - -def slice_status(api, slice_xrn, creds): +def SliverStatus(api, slice_xrn, creds): result = {} result['geni_urn'] = slice_xrn result['geni_status'] = 'unknown' @@ -29,30 +28,27 @@ def slice_status(api, slice_xrn, creds): return result def start_slice(api, xrn, creds): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) - api.nodemanger.Start(slicename) + slicename = PlXrn(xrn, type='slice').pl_slicename() + api.driver.nodemanager.Start(slicename) def stop_slice(api, xrn, creds): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) - api.nodemanager.Stop(slicename) + slicename = PlXrn(xrn, type='slice').pl_slicename() + api.driver.nodemanager.Stop(slicename) -def delete_slice(api, xrn, creds): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) - api.nodemanager.Destroy(slicename) +def DeleteSliver(api, xrn, creds, call_id): + slicename = PlXrn(xrn, type='slice').pl_slicename() + api.driver.nodemanager.Destroy(slicename) def reset_slice(api, xrn): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) + slicename = PlXrn(xrn, type='slice').pl_slicename() if not api.sliver_exists(slicename): raise SliverDoesNotExist(slicename) - api.nodemanager.ReCreate(slicename) + api.driver.nodemanager.ReCreate(slicename) -def get_slices(api): +# xxx outdated - this should accept a credential & call_id +def ListSlices(api): # this returns a tuple, the data we want is at index 1 - xids = api.nodemanager.GetXIDs() + xids = api.driver.nodemanager.GetXIDs() # unfortunately the data we want is given to us as # a string but we really want it as a dict # lets eval it @@ -63,12 +59,12 @@ def redeem_ticket(api, ticket_string): ticket = SfaTicket(string=ticket_string) ticket.decode() hrn = ticket.attributes['slivers'][0]['hrn'] - slicename = hrn_to_pl_slicename(hrn) + slicename = PlXrn (hrn).pl_slicename() if not api.sliver_exists(slicename): raise SliverDoesNotExist(slicename) # convert ticket to format nm is used to nm_ticket = xmlrpclib.dumps((ticket.attributes,), methodresponse=True) - api.nodemanager.AdminTicket(nm_ticket) + api.driver.nodemanager.AdminTicket(nm_ticket)