SAGA C++ API 1.5.3

saga::replica::logical_file Class Reference

The saga::replica class implements the saga::attributes interface. More...

#include <logical_file.hpp>

Inheritance diagram for saga::replica::logical_file:

List of all members.

Public Member Functions

 logical_file (session const &s, saga::url url, int mode=Read)
 Creates the object.
 logical_file (saga::url url, int mode=Read)
 Creates the object.
 logical_file (saga::object const &o)
 Creates the object.
 logical_file (void)
 Creates the object.
 ~logical_file (void)
 Destroys the object.
logical_fileoperator= (saga::object const &o)
 Brief description starts here.
void add_location (saga::url url)
 Add a replica location to the replica set.
void remove_location (saga::url url)
 Remove a replica location from the replica set.
void update_location (saga::url old_url, saga::url new_url)
 Change a replica location in the replica set.
std::vector< saga::urllist_locations (void)
 List the locations in the location set.
void replicate (saga::url url, int flags=saga::replica::None)
 Brief Replicate a file from any of the known replica locations to a new location, and, on success, add the new replica location to the set of associated replicas.

Static Public Member Functions

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

Protected Types

typedef
saga::detail::attribute
< logical_file
attribute_base
typedef
saga::name_space::entry::monitorable_base 
monitorable_base

Protected Member Functions

TR1::shared_ptr
< saga::impl::logical_file > 
get_impl_sp (void) const
saga::impl::logical_file * get_impl (void) const
 logical_file (saga::impl::logical_file *impl)

Detailed Description

The saga::replica class implements the saga::attributes interface.

A logical file represents merely an entry in a name space which has (a) an associated set of registered (physical) replicas of that file, and (b) an associated set of meta data describing that logical file. Both sets can be empty. To access the content of a logical file, a saga::file needs to be created with one of the registered replica locations.


Member Typedef Documentation


Constructor & Destructor Documentation

saga::replica::logical_file::logical_file ( saga::impl::logical_file *  impl) [explicit, protected]
saga::replica::logical_file::logical_file ( saga::object const &  o) [explicit]
saga::replica::logical_file::logical_file ( void  )

Creates the object.

saga::replica::logical_file::~logical_file ( void  )

Destroys the object.


Member Function Documentation

TR1::shared_ptr< saga::impl::logical_file > saga::replica::logical_file::get_impl_sp ( void  ) const [protected]

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

Reimplemented from saga::name_space::entry.

saga::impl::logical_file * saga::replica::logical_file::get_impl ( void  ) const [protected]

Reimplemented from saga::name_space::entry.

Referenced by logical_file().

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

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

Reimplemented from saga::name_space::entry.

static logical_file saga::replica::logical_file::create ( saga::url  url,
int  mode = Read 
) [inline, static]

Factory function resembling logical_file(url, int) constructor.

Reimplemented from saga::name_space::entry.

template<typename Tag >
static saga::task saga::replica::logical_file::create ( saga::url  url,
int  mode = Read 
) [inline, static]

Factory function resembling entry(url, int) constructor.

Reimplemented from saga::name_space::entry.

logical_file & saga::replica::logical_file::operator= ( saga::object const &  o)

Brief description starts here.

Reimplemented from saga::name_space::entry.

void saga::replica::logical_file::add_location ( saga::url  url) [inline]

Add a replica location to the replica set.

Parameters:
urlLocation to add to set
void saga::replica::logical_file::remove_location ( saga::url  url) [inline]

Remove a replica location from the replica set.

Parameters:
urlReplica to remove from set
void saga::replica::logical_file::update_location ( saga::url  old_url,
saga::url  new_url 
) [inline]

Change a replica location in the replica set.

Parameters:
old_urlReplica to be updated
new_urlUpdate for the replica
std::vector<saga::url> saga::replica::logical_file::list_locations ( void  ) [inline]

List the locations in the location set.

Returns:
Array of locations in set
void saga::replica::logical_file::replicate ( saga::url  url,
int  flags = saga::replica::None 
) [inline]

Brief Replicate a file from any of the known replica locations to a new location, and, on success, add the new replica location to the set of associated replicas.

Parameters:
urlLocation to replicate to

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