ATLAS Offline Software
|
Public Member Functions | |
def | resolve_folder_string (cls, folder_name, db_override=None) |
def | get_folder (cls, folder_name, db_override=None, read_only=True, create_function=None, also_db=False) |
def | resolve_db_string (cls, db_string, read_only=True) |
def | get_instance (cls, db_string, read_only=True, create=False) |
def | build_folder (cls, db, folder_name, multiversion, record) |
def | fetch_for_writing (cls, orig_folder_name, multiversion=True, record=None, create=False, db_override=None) |
Static Public Attributes | |
dictionary | FOLDERS |
Databases helper class. Used as a singleton. (don't instantiate) Specifies abbreviations for database connection strings and folders
Definition at line 235 of file DQUtils/python/db.py.
def python.db.Databases.build_folder | ( | cls, | |
db, | |||
folder_name, | |||
multiversion, | |||
record | |||
) |
Create `folder_name` on database instance `db`, with recordspecification `record`. Also creates folderset to which folder_name belongs if necessary.
Definition at line 417 of file DQUtils/python/db.py.
def python.db.Databases.fetch_for_writing | ( | cls, | |
orig_folder_name, | |||
multiversion = True , |
|||
record = None , |
|||
create = False , |
|||
db_override = None |
|||
) |
Retrieve a folder for writing. Creates it if it doesn't exist. `folder_name` specifies folder to be queried `multiversion` specifies COOL versioning mode `record` is a list of fields to be created in the form: [("<field name>", cool.StorageType.<field type>), ...] or if None, defaults to one Code record, or if isinstance(record, cool.RecordSpecification), uses this. `create` should the database be created if it doesn't `db_override` overrides automatic detection of database string
Definition at line 453 of file DQUtils/python/db.py.
def python.db.Databases.get_folder | ( | cls, | |
folder_name, | |||
db_override = None , |
|||
read_only = True , |
|||
create_function = None , |
|||
also_db = False |
|||
) |
Retrieve a folder. The `db_override` parameter allows over-riding the database which comes from the folder string. Parameters: `folder_name` : Folder name or alias to load `db_override` : If specified, causes an alternate database string to be used. `read_only` : Specifies if a read-only database connection should be used. `create_function` : If specified, function to be called in case the folder doesn't exist. It is passed the database connection. `also_db` : Make the return value (db, folder)
Definition at line 306 of file DQUtils/python/db.py.
def python.db.Databases.resolve_db_string | ( | cls, | |
db_string, | |||
read_only = True |
|||
) |
Take a database string - if it looks like a filename ending in ".db" then assume it is a sqlite database with that name. If the `db_string` is prepended with "WRITE|" then a writable connection is requested. If the db_string doesn't contain a "/", then "/" + DEFAULT_DBNAME is appended.
Definition at line 360 of file DQUtils/python/db.py.
def python.db.Databases.resolve_folder_string | ( | cls, | |
folder_name, | |||
db_override = None |
|||
) |
Resolves a simplified folder URI. Examples: folder_name == "SHIFTOFL" will give a connection to COOLOFL_GLOBAL/COMP200 folder /GLOBAL/DETSTATUS/SHIFTOFL folder_name == "test.db::SHIFTOFL" will give a connection to an sqlite database test.db Priority: * Database specified in db_override * Database specified in `folder_name` * Database specified in cls.FOLDERS[folder_name]
Definition at line 271 of file DQUtils/python/db.py.
|
static |
Definition at line 241 of file DQUtils/python/db.py.