Skip to content

Rfio

RFIO protocol

Classes

Default

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

Implementing access to RSEs using the RFIO protocol.

Functions

connect
connect(credentials)

Establishes the actual connection to the referred RSE.

PARAMETER DESCRIPTION
credentials

needed to establish a connection with the storage.

RAISES DESCRIPTION
RSEAccessDenied

if no connection could be established.

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.

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.

close
close()

Closes the connection to RSE.

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) - dummy

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.

mkdir
mkdir(directory)

Create new directory.

split_pfn
split_pfn(pfn)

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, hostname, port, prefix, path, filename

RAISES DESCRIPTION
RSEFileNameNotSupported

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

Functions