SAGA C++ API 1.6
saga::name_space::entry Class Reference

An RNS entry that interconnects a reference to an existing resource into the hierarchical name space. More...

#include <namespace_entry.hpp>

Inheritance diagram for saga::name_space::entry:

List of all members.

Public Member Functions

 entry (session const &s, saga::url url, int mode=Read, saga::object::type t=saga::object::NSEntry)
 Creates the object.
 entry (saga::url url, int mode=Read, saga::object::type t=saga::object::NSEntry)
 Creates the object.
 entry (saga::object const &o)
 Creates the object.
 entry (void)
 Creates the object.
 ~entry (void)
 Destroys the object.
entryoperator= (saga::object const &o)
 Brief description starts here.
saga::url get_url () const
 Obtains the complete url pointing to the entry.
saga::url get_cwd () const
 Obtains the current working directory for the entry.
saga::url get_name () const
 Obtains the name part of the url.
saga::url read_link () const
 Returns the name of the link target.
bool is_dir () const
 Tests entry for being a directory.
bool is_entry () const
 Tests entry for being a namespace_entry.
bool is_link () const
 Tests the entry for being a link.
void copy (saga::url target, int flags=saga::name_space::None)
 Copy the entry to another part of the namespace.
void link (saga::url target, int flags=saga::name_space::None)
 Creates a symbolic link from the entry to the target entry.
void move (saga::url target, int flags=saga::name_space::None)
 Rename source to target, or move source to target if target is an directory.
void remove (int flags=saga::name_space::None)
 Removes this entry and closes it.
void close (double timeout=0.0)
 Closes the object.
void permissions_allow (std::string id, int perm, int flags)
 Enable a permission.
void permissions_deny (std::string id, int perm, int flags)
 Disable a permission.

Static Public Member Functions

static entry create (session const &s, saga::url url, int mode=Read)
 Factory function resembling entry(session, url, int) constructor.
static entry create (saga::url url, int mode=Read)
 Factory function resembling entry(url, int) constructor.
template<typename Tag >
static saga::task create (saga::url url, int mode=Read)

Detailed Description

An RNS entry that interconnects a reference to an existing resource into the hierarchical name space.

Defines methods which serve the inspection of the entry itself, methods which allows to manage the entry (e.g. to copy, move, or remove it), and methods to manipulate the entry’s access control lists.

Definition at line 95 of file namespace_entry.hpp.


Constructor & Destructor Documentation

saga::name_space::entry::entry ( session const &  s,
saga::url  url,
int  mode = Read,
saga::object::type  t = saga::object::NSEntry 
)

Creates the object.

Definition at line 49 of file namespace_entry.cpp.

References saga::object::NSEntry.

saga::name_space::entry::entry ( saga::url  url,
int  mode = Read,
saga::object::type  t = saga::object::NSEntry 
) [explicit]

Creates the object.

Definition at line 60 of file namespace_entry.cpp.

References saga::object::NSEntry.

saga::name_space::entry::entry ( saga::object const &  o) [explicit]

Creates the object.

Reimplemented in saga::advert::entry.

Definition at line 70 of file namespace_entry.cpp.

saga::name_space::entry::entry ( void  )

Creates the object.

Reimplemented in saga::advert::entry.

Definition at line 75 of file namespace_entry.cpp.

saga::name_space::entry::~entry ( void  )

Destroys the object.

Reimplemented in saga::advert::entry.

Definition at line 79 of file namespace_entry.cpp.


Member Function Documentation

static entry saga::name_space::entry::create ( session const &  s,
saga::url  url,
int  mode = Read 
) [inline, static]

Factory function resembling entry(session, url, int) constructor.

Reimplemented in saga::filesystem::directory, saga::filesystem::file, saga::name_space::directory, saga::replica::logical_directory, and saga::replica::logical_file.

Definition at line 184 of file namespace_entry.hpp.

static entry saga::name_space::entry::create ( saga::url  url,
int  mode = Read 
) [inline, static]
entry & saga::name_space::entry::operator= ( saga::object const &  o)
saga::url saga::name_space::entry::get_url ( ) const [inline]

Obtains the complete url pointing to the entry.

Returns:
url pointing to the entry

Definition at line 214 of file namespace_entry.hpp.

References saga::task::get_result().

saga::url saga::name_space::entry::get_cwd ( ) const [inline]

Obtains the current working directory for the entry.

Returns:
Current working directory

Definition at line 227 of file namespace_entry.hpp.

References saga::task::get_result().

saga::url saga::name_space::entry::get_name ( ) const [inline]

Obtains the name part of the url.

Returns:
last part of the pathname

Definition at line 240 of file namespace_entry.hpp.

References saga::task::get_result().

saga::url saga::name_space::entry::read_link ( ) const [inline]

Returns the name of the link target.

Returns:
Resolved name

Definition at line 253 of file namespace_entry.hpp.

References saga::task::get_result().

bool saga::name_space::entry::is_dir ( ) const [inline]

Tests entry for being a directory.

Returns:
Boolean indicating if entry is a directory

Definition at line 266 of file namespace_entry.hpp.

References saga::task::get_result().

bool saga::name_space::entry::is_entry ( ) const [inline]

Tests entry for being a namespace_entry.

Returns:
Boolean indicating if entry is a namespace_entry

Definition at line 279 of file namespace_entry.hpp.

References saga::task::get_result().

bool saga::name_space::entry::is_link ( ) const [inline]

Tests the entry for being a link.

Returns:
Boolean indicating if entry is a link

Definition at line 291 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::copy ( saga::url  target,
int  flags = saga::name_space::None 
) [inline]

Copy the entry to another part of the namespace.

Parameters:
targetName to copy to
flagsFlags defining the operation modus

Definition at line 305 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::link ( saga::url  target,
int  flags = saga::name_space::None 
) [inline]

Creates a symbolic link from the entry to the target entry.

Parameters:
targetName to link to
flagsFlags defining the operation modus

Definition at line 319 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::move ( saga::url  target,
int  flags = saga::name_space::None 
) [inline]

Rename source to target, or move source to target if target is an directory.

Parameters:
targetName to move to
flagsFlags defining the operation modus

Definition at line 333 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::remove ( int  flags = saga::name_space::None) [inline]

Removes this entry and closes it.

Definition at line 346 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::close ( double  timeout = 0.0) [inline]

Closes the object.

Definition at line 358 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::permissions_allow ( std::string  id,
int  perm,
int  flags 
) [inline]

Enable a permission.

Parameters:
idid to set permission for
permpermission to enable
flagsmode of operation

Definition at line 378 of file namespace_entry.hpp.

References saga::task::get_result().

void saga::name_space::entry::permissions_deny ( std::string  id,
int  perm,
int  flags 
) [inline]

Disable a permission.

Parameters:
idid to set permission for
permpermission to disable
flagsmode of operation

Definition at line 394 of file namespace_entry.hpp.

References saga::task::get_result().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines