-import os
-import xmlrpclib
-from sfa.util.faults import *
-from sfa.util.misc import *
-from sfa.util.sfaticket import SfaTicket
-
-def start_slice(api, slicename):
- record = {'name': hrn_to_pl_slicename(slicename)}
- api.nodemanger.Start(record)
-
-def stop_slice(api, slicename):
- record = {'name': hrn_to_pl_slicename(slicename)}
- api.nodemanager.Stop(record)
-
-def delete_slice(api, slicename):
- record = {'name': hrn_to_pl_slicename(slicename)}
- api.nodemanager.Destroy(record)
-
-def reset_slice(api, slicename):
- record = {'name': hrn_to_pl_slicename(slicename)}
+from sfa.util.faults import SliverDoesNotExist
+from sfa.util.version import version_core
+from sfa.util.py23 import xmlrpc_client
+
+from sfa.trust.sfaticket import SfaTicket
+
+from sfa.planetlab.plxrn import PlXrn
+
+
+def GetVersion(api, options):
+ return version_core({'interface': 'component',
+ 'testbed': 'myplc'})
+
+
+def init_server():
+ from sfa.server import sfa_component_setup
+ # get current trusted gids
+ try:
+ sfa_component_setup.get_trusted_certs()
+ except:
+ # our keypair may be old, try refreshing
+ sfa_component_setup.get_node_key()
+ sfa_component_setup.GetCredential(force=True)
+ sfa_component_setup.get_trusted_certs()
+
+
+def SliverStatus(api, slice_xrn, creds):
+ result = {}
+ result['geni_urn'] = slice_xrn
+ result['geni_status'] = 'unknown'
+ result['geni_resources'] = {}
+ return result
+
+
+def start_slice(api, xrn, creds):
+ slicename = PlXrn(xrn, type='slice').pl_slicename()
+ api.driver.nodemanager.Start(slicename)
+
+
+def stop_slice(api, xrn, creds):
+ slicename = PlXrn(xrn, type='slice').pl_slicename()
+ api.driver.nodemanager.Stop(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):
+ slicename = PlXrn(xrn, type='slice').pl_slicename()