blob: 3a2113f92a7221a2b008f656b5c9b49cbb1e9fc9 [file] [log] [blame]
import xmlrpclib
from importer.planetstack.role_importer import RoleImporter
from importer.planetstack.site_importer import SiteImporter
from importer.planetstack.user_importer import UserImporter
from importer.planetstack.slice_importer import SliceImporter
from importer.planetstack.sliver_importer import SliverImporter
class Call:
def __init__(self, callable, auth):
self.callable = callable
self.auth = auth
def __call__(self, *args, **kwds):
a = [auth] + args
return self.callable(*a)
class API():
def __init__(self):
self.auth = {'AuthMethod': 'password',
'Username': None,
'AuthString': None}
self.server = xmlrpclib.ServerProxy("URL", allow_none=True)
def __getattr__(self, name):
return Call(getattr(self.server, name), self.auth)
class Importer:
def __init__(self):
self.api = API()
self.roles = RoleImporter(self)
self.sites = SiteImporter(self)
self.users = UserImporter(self)
self.slices = SliceImporter(self)
self.slivers = SliverImporter(self)
def run(self):
self.roles.run()
self.sites.run()
self.users.run()
self.slices.run()
self.slivers.run()