Example #1
0
def getCheshire3Env(args):
    """Init and return Cheshire3 Session, Server and Database.

    Intialize Cheshire3 Session, Server and Database objects based on
    ``args``.
    """
    # Create a Session
    session = Session()
    # Get the Server based on given serverConfig file
    server = SimpleServer(session, args.serverconfig)
    # Try to get the Database
    if args.database is None:
        try:
            dbid = identify_database(session, os.getcwd())
        except EnvironmentError as e:
            server.log_critical(session, e.message)
            raise
        server.log_debug(
            session,
            "database identifier not specified, discovered: {0}".format(dbid)
        )
    else:
        dbid = args.database
    try:
        db = server.get_object(session, dbid)
    except ObjectDoesNotExistException:
        msg = """Cheshire3 database {0} does not exist.
Please provide a different database identifier using the --database option.
""".format(dbid)
        server.log_critical(session, msg)
        raise
    else:
        # Attach a default Logger to the Session
        session.logger = db.get_path(session, 'defaultLogger')

    return session, server, db
server = SimpleServer(
    session,
    os.path.join(cheshirePath, 'cheshire3', 'configs', 'serverConfig.xml'))
configs = {}
dbmap = {}
server._cacheDatabases(session)
for db in server.databases.values():
    if db.get_setting(session, "z3950"):
        db._cacheProtocolMaps(session)
        map1 = db.protocolMaps.get('http://www.loc.gov/z3950/', None)
        if map1:
            configs[map1.databaseName] = map1
            dbmap[db.id] = map1.databaseName

session.resultSetStore = server.get_path(session, 'resultSetStore')
session.logger = server.get_path(session, 'z3950Logger')
session.configs = configs


class ZHandler:

    connection = None
    session = None
    handlers = {}
    debug = 1
    decode_ctx = None
    encode_ctx = None

    def __init__(self):
        self.session = session
        self.decode_ctx = asn1.IncrementalDecodeCtx(APDU)
Example #3
0
session = Session()
session.environment = "apache"
server = SimpleServer(session, os.path.join(internal.cheshire3Root, 'configs', 'serverConfig.xml'))
configs = {}
dbmap = {}
server._cacheDatabases(session)
for db in server.databases.values():
    if db.get_setting(session, "z3950"):
        db._cacheProtocolMaps(session)
	map1 = db.protocolMaps.get('http://www.loc.gov/z3950/', None)
	if map1:
	    configs[map1.databaseName] = map1
	    dbmap[db.id] = map1.databaseName

session.resultSetStore = server.get_path(session, 'resultSetStore')
session.logger = server.get_path(session, 'z3950Logger')
session.configs = configs

class ZHandler:

    connection = None
    session = None
    handlers = {}
    debug = 1
    decode_ctx = None
    encode_ctx = None

    def __init__(self):
        self.session = session
        self.decode_ctx = asn1.IncrementalDecodeCtx(APDU)
        self.encode_ctx = asn1.Ctx()
#!/usr/bin/python
import sys
import os
from cheshire3.baseObjects import Session
from cheshire3.server import SimpleServer
from cheshire3.internal import cheshire3Root

# Build environment...
session = Session() # a Session - used to store
print cheshire3Root

serv = SimpleServer(session, os.path.join(cheshire3Root, 'configs', 'serverConfig.xml'))
session.logger = serv.get_path(session, 'defaultLogger') # a logger
db = serv.get_object(session, 'db_tdo_index') # the Database
session.database = db.id

#qf = db.get_object(session, 'defaultQueryFactory')

def testVec():
    recordStore = db.get_object(session, 'recordStore')
    rec = recordStore.fetch_record(session, 1)
    idx= db.get_object(session, 'idx-topic')
    vec = idx.fetch_vector(session, rec)