Exemple #1
0
def delete_item(namespace, item_def):
    """
    Delete item from namespace
    """
    db, namespace_name = namespace
    log_operation.info(f"Delete item: {item_def} from namespace {namespace_name}")
    db.item_delete(namespace_name, item_def)
Exemple #2
0
def update_item(namespace, item_def):
    """
    Update item to namespace
    """
    db, namespace_name = namespace
    log_operation.info(f"Update item: {item_def} to namespace {namespace_name}")
    db.item_upsert(namespace_name, item_def)
Exemple #3
0
def insert_item(namespace, item_def):
    """
    Insert item to namespace
    """
    db, namespace_name = namespace
    log_operation.info(f"Insert item: {item_def} to namespace {namespace_name}")
    db.item_insert(namespace_name, item_def)
Exemple #4
0
def drop_namespace(database, namespace_name):
    """
    Drop a namespace
    """
    db, db_name = database
    log_operation.info(f"Drop a namespace with name '{namespace_name}' on database '{db_name}'")
    db.namespace_drop(namespace_name)
Exemple #5
0
def create_index(namespace, index_def):
    """
    Create an index
    """
    db, namespace_name = namespace
    log_operation.info(
        f"Create an index to namespace '{namespace_name}', index={index_def}")
    db.index_add(namespace_name, index_def)
Exemple #6
0
def get_namespace_list(database):
    """
    Get list of namespaces in database
    """
    log_operation.info("Get list of namespaces in database")
    db, db_name = database
    namespace_list = db.namespaces_enum()
    return namespace_list
Exemple #7
0
def drop_index(namespace, index_name):
    """
    Drop index from namespace
    """
    db, namespace_name = namespace
    log_operation.info(
        f"Drop index from namespace '{namespace_name}', index name = '{index_name}'"
    )
    db.index_drop(namespace_name, index_name)
Exemple #8
0
def update_index(namespace, index_def):
    """
    Update an index
    """
    db, namespace_name = namespace
    log_operation.info(
        f"Update an index to namespace '{namespace_name}', new index={index_def}"
    )
    db.index_update(namespace_name, index_def)
Exemple #9
0
def get_ns_description(database, namespace):
    """
    Get information about namespace in database
    """
    db, namespace_name = namespace
    namespace_list = get_namespace_list(database)
    log_operation.info(f"Get information about namespace {namespace_name} in database")
    ns_entry = list(filter(lambda ns: ns['name'] == namespace_name, namespace_list))
    return ns_entry
Exemple #10
0
def create_namespace(database, namespace_name):
    """
    Create a namespace
    """
    db, db_name = database
    log_operation.info(f"Create a namespace with name '{namespace_name}' on database '{db_name}'")
    try:
        db.namespace_open(namespace_name)
    except Exception as e:
        logging.error(e)
Exemple #11
0
def sql_query(namespace, query):
    db, namespace_name = namespace
    item_list = list(db.select(query))
    log_operation.info(f"Execute SQL query: {query}, got result: {item_list}")
    return item_list
Exemple #12
0
def put_metadata(namespace, key, value):
    db, namespace_name = namespace
    log_operation.info(
        f"Put metadata '{key}: {value}' to namespace '{namespace_name}'")
    db.meta_put(namespace_name, key, value)
    return key, value
Exemple #13
0
def get_metadata_by_key(namespace, key):
    db, namespace_name = namespace
    value = db.meta_get(namespace_name, key)
    log_operation.info(f"Get metadata value by key: '{key}: {value}'")
    return value
Exemple #14
0
def get_metadata_keys(namespace):
    db, namespace_name = namespace
    log_operation.info("Get list of metadata keys")
    meta_list = db.meta_enum(namespace_name)
    return meta_list