SAGA C++ API 1.5.3

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)

Protected Types

typedef
saga::detail::monitorable
< entry
monitorable_base

Protected Member Functions

TR1::shared_ptr
< saga::impl::namespace_entry > 
get_impl_sp (void) const
 @ /** These methods are not within API scope */
saga::impl::namespace_entry * get_impl (void) const
 entry (saga::impl::namespace_entry *init)

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.


Member Typedef Documentation


Constructor & Destructor Documentation

saga::name_space::entry::entry ( saga::impl::namespace_entry *  init) [explicit, protected]

@ /** These methods are not within API scope */

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

Creates the object.

References saga::object::get_impl(), and 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.

References saga::object::get_impl(), and saga::object::NSEntry.

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

Creates the object.

Reimplemented in saga::advert::entry.

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

Creates the object.

Reimplemented in saga::advert::entry.

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

Destroys the object.

Reimplemented in saga::advert::entry.


Member Function Documentation

TR1::shared_ptr< saga::impl::namespace_entry > saga::name_space::entry::get_impl_sp ( void  ) const [protected]
saga::impl::namespace_entry * saga::name_space::entry::get_impl ( void  ) const [protected]
static entry saga::name_space::entry::create ( session const &  s,
saga::url  url,
int  mode = Read 
) [inline, static]
saga::url saga::name_space::entry::get_url ( ) const [inline]

Obtains the complete url pointing to the entry.

Returns:
url pointing to the entry
saga::url saga::name_space::entry::get_cwd ( ) const [inline]

Obtains the current working directory for the entry.

Returns:
Current working directory
saga::url saga::name_space::entry::get_name ( ) const [inline]

Obtains the name part of the url.

Returns:
last part of the pathname
saga::url saga::name_space::entry::read_link ( ) const [inline]

Returns the name of the link target.

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

Tests entry for being a directory.

Returns:
Boolean indicating if entry is a directory
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
bool saga::name_space::entry::is_link ( ) const [inline]

Tests the entry for being a link.

Returns:
Boolean indicating if entry is a link
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
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
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
void saga::name_space::entry::remove ( int  flags = saga::name_space::None) [inline]

Removes this entry and closes it.

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

Closes the object.

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

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