Skip to content

Srm

Classes

Default

Default(protocol_attr, rse_settings, logger=logging.log)

Implementing access to RSEs using the SRM protocol.

Functions

lfns2pfns
lfns2pfns(lfns)

Returns a fully qualified PFN for the file referred by path.

PARAMETER DESCRIPTION
path

The path to the file.

RETURNS DESCRIPTION

Fully qualified PFN.

parse_pfns
parse_pfns(pfns)

Splits the given PFN into the parts known by the protocol. During parsing the PFN is also checked for validity on the given RSE with the given protocol.

PARAMETER DESCRIPTION
pfn

a fully qualified PFN

RETURNS DESCRIPTION

a dict containing all known parts of the PFN for the protocol e.g. scheme, path, filename

RAISES DESCRIPTION
RSEFileNameNotSupported

if the provided PFN doesn't match with the protocol settings

path2pfn
path2pfn(path)

Returns a fully qualified PFN for the file referred by path.

PARAMETER DESCRIPTION
path

The path to the file.

RETURNS DESCRIPTION

Fully qualified PFN.

connect
connect()

Establishes the actual connection to the referred RSE. As a quick and dirty implementation we just use this method to check if the lcg tools are available. If we decide to use gfal, init should be done here.

RAISES DESCRIPTION
RSEAccessDenied

Cannot connect.

get
get(path, dest, transfer_timeout=None)

Provides access to files stored inside connected the RSE.

PARAMETER DESCRIPTION
path

Physical file name of requested file

dest

Name and path of the files when stored at the client

transfer_timeout

Transfer timeout (in seconds)

DEFAULT: None

RAISES DESCRIPTION
DestinationNotAccessible

if the destination storage was not accessible.

ServiceUnavailable

if some generic error occurred in the library.

SourceNotFound

if the source file was not found on the referred storage.

put
put(source, target, source_dir, transfer_timeout=None)

Allows to store files inside the referred RSE.

PARAMETER DESCRIPTION
source

path to the source file on the client file system

target

path to the destination file on the storage

source_dir

Path where the to be transferred files are stored in the local file system

transfer_timeout

Transfer timeout (in seconds)

DEFAULT: None

RAISES DESCRIPTION
DestinationNotAccessible

if the destination storage was not accessible.

ServiceUnavailable

if some generic error occurred in the library.

SourceNotFound

if the source file was not found on the referred storage.

delete
delete(path)

Deletes a file from the connected RSE.

PARAMETER DESCRIPTION
path

path to the to be deleted file

RAISES DESCRIPTION
ServiceUnavailable

if some generic error occurred in the library.

SourceNotFound

if the source file was not found on the referred storage.

rename
rename(path, new_path)

Allows to rename a file stored inside the connected RSE.

PARAMETER DESCRIPTION
path

path to the current file on the storage

new_path

path to the new file on the storage

RAISES DESCRIPTION
DestinationNotAccessible

if the destination storage was not accessible.

ServiceUnavailable

if some generic error occurred in the library.

SourceNotFound

if the source file was not found on the referred storage.

exists
exists(path)

Checks if the requested file is known by the referred RSE.

PARAMETER DESCRIPTION
path

Physical file name

RETURNS DESCRIPTION

True if the file exists, False if it doesn't

RAISES DESCRIPTION
SourceNotFound

if the source file was not found on the referred storage.

__parse_srm_error__
__parse_srm_error__(err_code, out, err)

Parse the error message to return error code.

close
close()

Closes the connection to RSE.

Functions