示例#1
0
    def setUp(self):
        api.initialize(extra_jars=(os.environ[OVATION_TEST_JAR_PATH_KEY],os.environ[OVATION_TEST_JAR_PATH_KEY]))

        if not CONNECTION_PATH_KEY in os.environ:
            raise OvationTestException("OVATION_CONNECTION_FILE not defined in the test environment")

        self.connection_file_path = os.environ[CONNECTION_PATH_KEY]

        if not os.path.exists(self.connection_file_path):
            if 'OVATION_LOCK_SERVER' in os.environ:
                host = os.environ['OVATION_LOCK_SERVER']
            else:
                host = gethostname()
                if host == 'localhost':
                    host = '127.0.0.1'

            create_local_database(self.connection_file_path,
                host=host,
                federatedDatabaseID=os.environ.get(OVATION_FDID_KEY, None))

        test = api.ovation_package().test

        self.test_manager = test.TestManager(self.connection_file_path,
            'Institution',
            'Lab',
            'crS9RjS6wJgmZkJZ1WRbdEtIIwynAVmqFwrooGgsM7ytyR+wCD3xpjJEENey+b0GVVEgib++HAKh94LuvLQXQ2lL2UCUo75xJwVLL3wmd21WbumQqKzZk9p6fkHCVoiSxgon+2RaGA75ckKNmUVTeIBn+QkalKCg9p1P7FbWqH3diXlAOKND2mwjI8V4unq7aaKEUuCgdU9V/BjFBkoytG8FzyBCNn+cBUNTByYy7RxYxH37xECZJ6/hG/vP4QjKpks9cu3yQL9QjXBQIizrzini0eQj62j+QzCSf0oQg8KdIeZHuU+ZSZZ1pUHLYiOiQWaOL9cVPxqMzh5Q/Zvu6Q==',
            'TestUser',
            'TestPassword')

        self.dsc = self.test_manager.setupDatabase()

        # Make sure we cleanup
        self.addCleanup(clean_local_database, self.test_manager)
示例#2
0
def create_local_database(connection_path, host=None, federatedDatabaseID=1):
    if host is None:
        host = gethostname()

    ovation = api.ovation_package()
    ovation.database.DatabaseManager.createLocalDatabase(connection_path,
        host,
        int(federatedDatabaseID))
示例#3
0
        # Retrieving each parameter may throw a DatabaseError, so we can't use a list comprehension
        for k in xnatScan.attrs():
            try:
                if k.startswith(dtype + '/parameters/'):
                    parametersDict[k] = xnat_api(xnatScan.attrs.get, k)
            except (DatabaseError, StopIteration):
                _log.error("Unable to retrieve parameter " + k)

    except DatabaseError, e:
        _log.error("Unable to set parameters")
        parametersDict = {}

    parameters = dict2map(parametersDict)
    scannerParameters = parameters

    ovation = api.ovation_package()
    BYTE_DATATYPE = ovation.NumericDataType(
        ovation.NumericDataFormat.SignedFixedPointDataType, 1,
        ovation.NumericByteOrder.ByteOrderNeutral)

    for r in iterate_entity_collection(xnatScan.resources):
        _log.info("        Resource " + xnat_api(r.label))
        # Insert one epoch group per resource group
        resourceGroup = g.insertEpochGroup(xnat_api(r.label), g.getStartTime())

        for f in iterate_entity_collection(r.files):
            # Import one epoch per resource file
            e = resourceGroup.insertEpoch(
                g.getStartTime(),
                g.getEndTime(),  #TODO
                scanType,
示例#4
0
        # Retrieving each parameter may throw a DatabaseError, so we can't use a list comprehension
        for k in xnatScan.attrs():
            try:
                if k.startswith(dtype + '/parameters/'):
                    parametersDict[k] = xnat_api(xnatScan.attrs.get, k)
            except (DatabaseError,StopIteration):
                _log.error("Unable to retrieve parameter " + k)

    except DatabaseError, e:
        _log.error("Unable to set parameters")
        parametersDict = {}

    parameters = dict2map(parametersDict)
    scannerParameters = parameters

    ovation = api.ovation_package()
    BYTE_DATATYPE = ovation.NumericDataType(ovation.NumericDataFormat.SignedFixedPointDataType, 1, ovation.NumericByteOrder.ByteOrderNeutral)

    for r in iterate_entity_collection(xnatScan.resources):
        _log.info("        Resource " + xnat_api(r.label))
        # Insert one epoch group per resource group
        resourceGroup = g.insertEpochGroup(xnat_api(r.label),
                            g.getStartTime())

        for f in iterate_entity_collection(r.files):
            # Import one epoch per resource file
            e = resourceGroup.insertEpoch(
                g.getStartTime(),
                g.getEndTime(), #TODO
                scanType,
                parameters