package_dirs = [
'sfa',
'sfa/trust',
+ 'sfa/storage',
'sfa/util',
'sfa/client',
'sfa/server',
from types import StringTypes, ListType
from optparse import OptionParser
+from sfa.util.sfalogging import logger
+
from sfa.trust.certificate import Certificate
from sfa.trust.credential import Credential
from sfa.trust.gid import GID
-from sfa.util.record import SfaRecord
-from sfa.util.sfalogging import logger
+
+from sfa.storage.record import SfaRecord
def determine_sfa_filekind(fn):
from sfa.util.config import Config
from sfa.util.version import version_core
from sfa.util.cache import Cache
-from sfa.util.record import SfaRecord, UserRecord, SliceRecord, NodeRecord, AuthorityRecord
+
+from sfa.storage.record import SfaRecord, UserRecord, SliceRecord, NodeRecord, AuthorityRecord
from sfa.rspecs.rspec import RSpec
from sfa.rspecs.rspec_converter import RSpecConverter
from sfa.rspecs.version_manager import VersionManager
-from sfa.client.return_value import ReturnValue
import sfa.client.xmlrpcprotocol as xmlrpcprotocol
+from sfa.client.return_value import ReturnValue
from sfa.client.client_helper import pg_users_arg, sfa_users_arg
AGGREGATE_PORT=12346
import getopt
import sys
-from sfa.util.table import SfaTable
from sfa.util.xrn import get_leaf, get_authority
from sfa.util.plxrn import hostname_to_hrn, slicename_to_hrn, email_to_hrn, hrn_to_pl_slicename
from sfa.util.config import Config
from sfa.util.xrn import Xrn
+from sfa.storage.table import SfaTable
+
from sfa.importer.sfaImport import sfaImport
def process_options():
import os
from optparse import OptionParser
-from sfa.util.table import SfaTable
from sfa.util.sfalogging import logger
+from sfa.storage.table import SfaTable
+
def main():
usage="%prog: trash the registry DB (the 'sfa' table in the 'planetlab5' database)"
parser = OptionParser(usage=usage)
##
from sfa.util.sfalogging import _SfaLogger
-
-from sfa.util.record import SfaRecord
-from sfa.util.table import SfaTable
from sfa.util.xrn import get_authority, hrn_to_urn
from sfa.util.plxrn import email_to_hrn
from sfa.util.config import Config
+
from sfa.trust.certificate import convert_public_key, Keypair
from sfa.trust.trustedroots import TrustedRoots
from sfa.trust.hierarchy import Hierarchy
from sfa.trust.gid import create_uuid
+from sfa.storage.record import SfaRecord
+from sfa.storage.table import SfaTable
+
def _un_unicode(str):
if isinstance(str, unicode):
from sfa.util.faults import RecordNotFound, AccountNotEnabled, PermissionError, MissingAuthority, \
UnknownSfaType, ExistingRecord, NonExistingRecord
from sfa.util.prefixTree import prefixTree
-from sfa.util.record import SfaRecord
-from sfa.util.table import SfaTable
from sfa.util.xrn import Xrn, get_authority, hrn_to_urn, urn_to_hrn
from sfa.util.plxrn import hrn_to_pl_login_base
from sfa.util.version import version_core
from sfa.trust.certificate import Certificate, Keypair, convert_public_key
from sfa.trust.gid import create_uuid
+from sfa.storage.record import SfaRecord
+from sfa.storage.table import SfaTable
+
class RegistryManager:
def __init__ (self): pass
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
+from sfa.storage.parameter import Parameter, Mixed
from sfa.trust.credential import Credential
class CreateGid(Method):
from sfa.util.faults import SfaInvalidArgument
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
from sfa.util.sfatablesRuntime import run_sfatables
+
from sfa.trust.credential import Credential
+
+from sfa.storage.parameter import Parameter, Mixed
+
from sfa.rspecs.rspec import RSpec
class CreateSliver(Method):
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+from sfa.storage.parameter import Parameter, Mixed
from sfa.trust.auth import Auth
from sfa.trust.credential import Credential
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class GetCredential(Method):
"""
Retrive a credential for an object
from sfa.util.faults import RecordNotFound
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class GetGids(Method):
"""
Get a list of record information (hrn, gid and type) for
from sfa.util.faults import RecordNotFound, ConnectionKeyGIDMismatch
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
-from sfa.util.record import SfaRecord
+
from sfa.trust.certificate import Certificate
+from sfa.storage.parameter import Parameter, Mixed
+from sfa.storage.record import SfaRecord
+
class GetSelfCredential(Method):
"""
Retrive a credential for an object
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
from sfa.util.sfatablesRuntime import run_sfatables
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class GetTicket(Method):
"""
Retrieve a ticket. This operation is currently implemented on PLC
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
+
+from sfa.storage.parameter import Parameter
class GetVersion(Method):
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
-from sfa.util.record import SfaRecord
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+from sfa.storage.record import SfaRecord
+
class List(Method):
"""
List the records in an authority.
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
-from sfa.trust.credential import Credential
from sfa.util.sfatablesRuntime import run_sfatables
+from sfa.trust.credential import Credential
+
+from sfa.storage.parameter import Parameter, Mixed
+
class ListResources(Method):
"""
Returns information about available resources or resources allocated to this slice
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class ListSlices(Method):
"""
List the slices instantiated at this interface
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
+from sfa.storage.parameter import Parameter, Mixed
class RedeemTicket(Method):
"""
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class Register(Method):
"""
Register an object with the registry. In addition to being stored in the
from sfa.util.xrn import Xrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class Remove(Method):
"""
Remove an object from the registry. If the object represents a PLC object,
from sfa.util.faults import InsufficientRights
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
-from sfa.trust.credential import Credential
from sfa.util.sfatime import utcparse
+from sfa.trust.credential import Credential
+
+from sfa.storage.parameter import Parameter
+
class RenewSliver(Method):
"""
Renews the resources in a sliver, extending the lifetime of the slice.
from sfa.util.xrn import Xrn, urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
-from sfa.util.record import SfaRecord
+
+from sfa.storage.parameter import Parameter, Mixed
+from sfa.storage.record import SfaRecord
class Resolve(Method):
"""
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
+
+from sfa.storage.parameter import Parameter
class ResolveGENI(Method):
"""
-from sfa.util.parameter import Parameter
+from sfa.storage.parameter import Parameter
+
from sfa.methods.Stop import Stop
class Shutdown(Stop):
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
+from sfa.storage.parameter import Parameter, Mixed
class SliverStatus(Method):
"""
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class Start(Method):
"""
Start the specified slice
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
+
class Stop(Method):
"""
Stop the specified slice
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
+
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter
+
class Update(Method):
"""
Update an object in the registry. Currently, this only updates the
-from sfa.util.parameter import Parameter, Mixed
+from sfa.storage.parameter import Parameter, Mixed
+
from sfa.methods.CreateSliver import CreateSliver
class UpdateSliver(CreateSliver):
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
from sfa.util.sfalogging import logger
+from sfa.storage.parameter import Parameter
+
class get_key_from_incoming_ip(Method):
"""
Generate a new keypair and gid for requesting caller (component/node).
-#from sfa.util.faults import *
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
from sfa.trust.auth import Auth
from sfa.trust.credential import Credential
+from sfa.storage.parameter import Parameter, Mixed
class get_trusted_certs(Method):
"""
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
-from sfa.util.parameter import Parameter, Mixed
+
+from sfa.storage.parameter import Parameter, Mixed
class reset_slice(Method):
"""
#
from sfa.util.faults import MissingSfaInfo, UnknownSfaType
from sfa.util.sfalogging import logger
-from sfa.util.table import SfaTable
from sfa.util.defaultdict import defaultdict
-
from sfa.util.xrn import hrn_to_urn, get_leaf
from sfa.util.plxrn import slicename_to_hrn, hostname_to_hrn, hrn_to_pl_slicename, hrn_to_pl_login_base
+# one would think the driver should not need to mess with the SFA db, but..
+from sfa.storage.table import SfaTable
+
# the driver interface, mostly provides default behaviours
from sfa.managers.driver import Driver
# we obtain
# get the sfa records
- # xxx thgen fixme - use SfaTable hardwired for now
- # table = self.SfaTable()
table = SfaTable()
person_list, persons = [], {}
person_list = table.find({'type': 'user', 'pointer': person_ids})
from optparse import OptionParser
from sfa.util.config import Config
-from sfa.util.table import SfaTable
from sfa.trust.gid import GID, create_uuid
from sfa.trust.hierarchy import Hierarchy
+from sfa.storage.table import SfaTable
+
def main():
args = sys.argv
script_name = args[0]
import traceback
import socket
-import sfa.client.xmlrpcprotocol as xmlrpcprotocol
-from sfa.util.table import SfaTable
from sfa.util.prefixTree import prefixTree
from sfa.util.config import Config
-from sfa.generic import Generic
-
from sfa.trust.certificate import Keypair
from sfa.trust.hierarchy import Hierarchy
from sfa.server.registry import Registries
+from sfa.storage.table import SfaTable
+
+import sfa.client.xmlrpcprotocol as xmlrpcprotocol
+
+from sfa.generic import Generic
+
def main():
config = Config()
if not config.SFA_REGISTRY_ENABLED:
Removes old records from the db.
"""
# import SfaTable here so this module can be loaded by PlcComponentApi
- from sfa.util.table import SfaTable
- from sfa.util.record import SfaRecord
+ from sfa.storage.table import SfaTable
+ from sfa.storage.record import SfaRecord
if not gids:
return
table = SfaTable()
import datetime
from sfa.util.faults import SfaFault, SfaAPIError
+from sfa.util.genicode import GENICODE
from sfa.util.config import Config
from sfa.util.cache import Cache
from sfa.trust.auth import Auth
+
from sfa.trust.certificate import Keypair, Certificate
from sfa.trust.credential import Credential
from sfa.trust.rights import determine_rights
+
from sfa.server.xmlrpcapi import XmlrpcApi
-from sfa.util.genicode import GENICODE
+
from sfa.client.return_value import ReturnValue
# thgen xxx fixme this is wrong all right, but temporary, will use generic
-from sfa.util.table import SfaTable
+from sfa.storage.table import SfaTable
####################
class SfaApi (XmlrpcApi):
from types import StringTypes
-try:
- set
-except NameError:
- from sets import Set
- set = Set
-
-try: import pgdb
-except: pass
+import pgdb
from sfa.util.faults import SfaInvalidArgument
-from sfa.util.parameter import Parameter, Mixed, python_type
+from sfa.storage.parameter import Parameter, Mixed, python_type
class Filter(Parameter, dict):
"""
from sfa.trust.gid import GID
-from sfa.util.parameter import Parameter
+from sfa.storage.parameter import Parameter
from sfa.util.xrn import get_authority
-from sfa.util.row import Row
+from sfa.storage.row import Row
from sfa.util.xml import XML
class SfaRecord(Row):
from types import StringTypes
from sfa.util.config import Config
-from sfa.util.parameter import Parameter
-from sfa.util.filter import Filter
-from sfa.util.PostgreSQL import PostgreSQL
-from sfa.util.record import SfaRecord, AuthorityRecord, NodeRecord, SliceRecord, UserRecord
+
+from sfa.storage.parameter import Parameter
+from sfa.storage.filter import Filter
+from sfa.storage.PostgreSQL import PostgreSQL
+from sfa.storage.record import SfaRecord, AuthorityRecord, NodeRecord, SliceRecord, UserRecord
class SfaTable(list):
from types import IntType, LongType, StringTypes
import textwrap
-
from sfa.util.sfalogging import logger
from sfa.util.faults import SfaFault, SfaInvalidAPIMethod, SfaInvalidArgumentCount, SfaInvalidArgument
-from sfa.util.parameter import Parameter, Mixed, python_type, xmlrpc_type
+
+from sfa.storage.parameter import Parameter, Mixed, python_type, xmlrpc_type
class Method:
"""
import xmlrpclib
from sfa.trust.gid import *
from sfa.util.config import *
-from sfa.util.record import *
+from sfa.storage.record import *
class TestRecord(unittest.TestCase):
def setUp(self):
from types import *
from optparse import OptionParser
-from sfa.util.parameter import Parameter,Mixed
+from sfa.storage.parameter import Parameter,Mixed
import globals