CernVM-FS  2.12.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
publish::Session Class Reference
Inheritance diagram for publish::Session:
Collaboration diagram for publish::Session:


struct  Settings

Public Member Functions

 Session ()
 Session (const Settings &settings_session)
 Session (const SettingsPublisher &settings_publisher, int llvl=0)
 ~Session ()
void Acquire ()
void Drop ()
void SetKeepAlive (bool value)
bool has_lease () const
std::string token_path () const

Private Attributes

Settings settings_
bool keep_alive_
bool has_lease_

Additional Inherited Members

- Private Member Functions inherited from SingleCopy
 SingleCopy ()

Detailed Description

A session encapsulates an active storage (gateway) lease

Definition at line 230 of file repository.h.

Constructor & Destructor Documentation

publish::Session::Session ( )

For non-gateway nodes, we have an implicit lease for the entire repository

Definition at line 248 of file repository.h.

publish::Session::Session ( const Settings settings_session)
publish::Session::Session ( const SettingsPublisher settings_publisher,
int  llvl = 0 
publish::Session::~Session ( )

Drops the lease unless keep_alive_ is set

Member Function Documentation

void publish::Session::Acquire ( )
void publish::Session::Drop ( )
bool publish::Session::has_lease ( ) const

Definition at line 260 of file repository.h.

void publish::Session::SetKeepAlive ( bool  value)
std::string publish::Session::token_path ( ) const

Definition at line 261 of file repository.h.

Member Data Documentation

bool publish::Session::has_lease_

Definition at line 272 of file repository.h.

bool publish::Session::keep_alive_

If set to true, the session is not closed on destruction, i.e. the lease is not dropped and the lease token is not removed. A newly created Session object will pick up an existing lease token and not re-acquire it.

Definition at line 271 of file repository.h.

Settings publish::Session::settings_

Definition at line 264 of file repository.h.

The documentation for this class was generated from the following file: