irods  4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
  Fossies Dox: irods-4.2.8.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

irods::experimental Namespace Reference

Namespaces

 administration
 
 detail
 
 filesystem
 
 interprocess
 
 io
 
 translator
 

Classes

struct  array_delete
 
struct  delay
 
struct  delay_multiplier
 A type that specifies a multiplier of delay. More...
 
class  durability_options
 A type that holds options used to control the behavior of with_durability. More...
 
class  key_value_proxy
 
class  lifetime_manager
 
class  query_builder
 
struct  retries
 
class  scoped_client_identity
 
class  scoped_privileged_client
 

Typedefs

using key_value_pair = std::pair< std::string, std::string >
 
using proxy_struct_pair = std::pair< key_value_proxy, lifetime_manager< keyValPair_t > >
 

Enumerations

enum  query_type { query_type::general, query_type::specific }
 
enum  execution_result {
  execution_result::ready, execution_result::success, execution_result::failure, execution_result::exception,
  execution_result::stop
}
 

Functions

auto make_key_value_proxy (std::initializer_list< key_value_pair > _kvps={}) -> proxy_struct_pair
 
template<typename Function >
auto with_durability (const durability_options &opts, Function func) noexcept -> execution_result
 
template<typename ... Args>
auto with_durability (Args &&...args) noexcept -> execution_result
 

Variables

struct irods::experimental::array_delete array_delete
 

Typedef Documentation

◆ key_value_pair

using irods::experimental::key_value_pair = typedef std::pair<std::string, std::string>

Definition at line 508 of file key_value_proxy.hpp.

◆ proxy_struct_pair

Enumeration Type Documentation

◆ execution_result

An enumeration used to indicate how with_durability should proceed. These values are also used to inform the caller of with_durability of what happened.

Enumerator
ready 

The state before invoking the callable.

success 

The callable succeeded.

failure 

The callable failed.

exception 

The callable leaked an exception.

stop 

The callable manually terminated execution.

Definition at line 181 of file with_durability.hpp.

◆ query_type

Enumerator
general 
specific 

Definition at line 12 of file query_builder.hpp.

Function Documentation

◆ make_key_value_proxy()

proxy_struct_pair irods::experimental::make_key_value_proxy ( std::initializer_list< key_value_pair _kvps = {}) -> proxy_struct_pair
Description:\n Creates an empty keyValPair_t and wraps it with a proxy and lifetime_manager

If no arguments are passed in, the keyValPair_t is initialized to empty.

The lifetime_manager will free the allocated memory on destruction.

Parameters
[in]_kvps- Initializer list of key_value_pairs. Defaults to an empty list.
Example Usage:\n auto [p, m] = make_key_value_proxy({{"key1", "val1"}, {"key2", "val2"}});
Returns
std::pair<key_value_proxy, lifetime_manager<keyValPair_t>>
Since
4.2.8

Definition at line 526 of file key_value_proxy.hpp.

◆ with_durability() [1/2]

template<typename ... Args>
auto irods::experimental::with_durability ( Args &&...  args) -> execution_result
noexcept

A convenient retry mechanism for functions and function-like objects.

Primary User:\n Client
Primary User:\n Server
Since
4.2.8
Parameters
[in]argsA parameter pack optionally containing objects used to construct an instance of durability_options followed by a function or function-like object to invoke. The last argument must be a function-like object.

return execution_result An indicator of what happened. retval execution_result::ready Indicates that the function-like object was never invoked. retval execution_result::success Indicates that the function-like object was successful. retval execution_result::failure Indicates that the function-like object failed. retval execution_result::exception Indicates that the function-like object failed due to an exception. retval execution_result::stop Indicates that the function-like object was stopped manually.

Definition at line 257 of file with_durability.hpp.

References irods::experimental::detail::last_arg().

Here is the call graph for this function:

◆ with_durability() [2/2]

template<typename Function >
auto irods::experimental::with_durability ( const durability_options opts,
Function  func 
) -> execution_result
noexcept

A convenient retry mechanism for functions and function-like objects.

Takes a set of options defining at most how many times a given function-like object will be invoked (retried) following a failure. The function-like object is always invoked at least once. It will be invoked once more for each failure until the specified retry conditions are met or it succeeds or it is stopped manually.

Primary User:\n Client
Primary User:\n Server
Since
4.2.8
Parameters
[in]optsThe options that control how func is handled.
[in]funcThe function or function-like object to invoke.

return execution_result An indicator of what happened. retval execution_result::ready Indicates that func was never invoked. retval execution_result::success Indicates that func was successful. retval execution_result::failure Indicates that func failed. retval execution_result::exception Indicates that func failed due to an exception. retval execution_result::stop Indicates that func was stopped manually.

Definition at line 212 of file with_durability.hpp.

References exception, and stop.

Variable Documentation

◆ array_delete