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_re_plugin.hpp File Reference
#include "irods_error.hpp"
#include "irods_load_plugin.hpp"
#include "irods_lookup_table.hpp"
#include "irods_re_structs.hpp"
#include "irods_state_table.h"
#include "rodsLog.h"
#include <iostream>
#include <list>
#include <vector>
#include <utility>
#include <functional>
#include <map>
#include <memory>
#include <initializer_list>
#include <boost/any.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/optional.hpp>
Include dependency graph for irods_re_plugin.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  irods::unpack
 
class  irods::default_microservice_manager< C >
 
class  irods::callback
 
class  irods::serialize
 
class  irods::pluggable_rule_engine< T >
 
class  irods::dynamic_operation_execution_manager< T, C, Audit >
 
struct  irods::re_pack_inp< T >
 
class  irods::rule_engine_plugin_manager< T >
 
class  irods::rule_engine_manager< T, C >
 
class  irods::rule_exists_manager< T, C >
 
class  irods::rule_engine_context_manager< T, C, Audit >
 
class  irods::rule_engine_context_manager< T, C, AUDIT_RULE >
 
class  irods::rule_engine_context_manager< T, C, DONT_AUDIT_RULE >
 
class  irods::default_microservice_manager< default_ms_ctx >
 
struct  irods::global_re_plugin_mgr
 

Namespaces

 irods
 

Macros

#define UNIT   unit()
 
#define DEFINE_FACTORY
 

Typedefs

template<typename C >
using irods::microservice_manager = default_microservice_manager< C >
 
template<typename T >
using irods::re_plugin_operation = error(*)(T &,...)
 
using irods::unit = std::tuple<>
 
using irods::default_re_ctx = unit
 
using irods::default_ms_ctx = ruleExecInfo_t *
 

Enumerations

enum  irods::rule_execution_manager_pack { irods::AUDIT_RULE, irods::DONT_AUDIT_RULE }
 

Functions

template<typename T >
irods::clone (T &a)
 
void irods::var_arg_to_list (std::list< boost::any > &_l)
 
template<typename... As>
void irods::var_arg_to_list (std::list< boost::any > &_l, unpack &&_p, As &&... _ps)
 
template<typename... As>
void irods::var_arg_to_list (std::list< boost::any > &_l, unpack &_p, As &&... _ps)
 
template<typename A , typename... As>
void irods::var_arg_to_list (std::list< boost::any > &_l, A &&_p, As &&... _ps)
 
error irods::list_to_var_arg (std::list< boost::any > &_l)
 
template<typename A , typename... As>
error irods::list_to_var_arg (std::list< boost::any > &_l, A &&_p, As &&... _ps)
 
template<typename... As>
std::list< boost::any > irods::pack (As &&... _ps)
 
bool irods::is_continuation_code (int _error_code)
 
void irods::log_error_code (const error &e)
 
template<typename ER , typename EM , typename T , typename ... As>
error irods::control (std::list< re_pack_inp< T > > &_re_packs, ER _er, EM _em, const std::string &_rn, As &&... _ps)
 
error irods::convertToMsParam (boost::any &itr, msParam_t *t)
 
error irods::convertFromMsParam (boost::any &itr, msParam_t *t)
 
template<typename T >
irods::any_extract (boost::any _p, std::function< T()> f)
 
template<typename T >
void irods::any_update (boost::any &_p, T _p2)
 
template<typename S , typename T , typename F >
void irods::foreach2 (S &&a, T &&b, F &&f)
 
template<typename InputC , typename OutputC , typename UnaryOperation >
void irods::transform (const InputC &ic, OutputC &oc, UnaryOperation func)
 
template<typename InputC , typename OutputC , typename UnaryOperation >
OutputC irods::transform (const InputC &ic, UnaryOperation func)
 
std::vector< re_pack_inp< default_re_ctx > > irods::init_global_re_packs ()
 

Variables

std::unique_ptr< struct irods::global_re_plugin_mgrirods::re_plugin_globals
 

Macro Definition Documentation

◆ DEFINE_FACTORY

#define DEFINE_FACTORY
Value:
irods::pluggable_rule_engine<irods::default_re_ctx>* plugin_factory(const std::string& _inst_name, const std::string& _context) { \
return new irods::pluggable_rule_engine<irods::default_re_ctx>( _inst_name , _context); \
} \
double get_plugin_interface_version() { \
static const double PLUGIN_INTERFACE_VERSION = 1.0; \
}

Definition at line 844 of file irods_re_plugin.hpp.

◆ UNIT

#define UNIT   unit()

Definition at line 738 of file irods_re_plugin.hpp.

irods::pluggable_rule_engine
Definition: irods_re_plugin.hpp:169
plugin_factory
auto plugin_factory(const std::string &_instance_name, const std::string &_context) -> irods::api_entry *
Definition: atomic_apply_metadata_operations.cpp:596
PLUGIN_INTERFACE_VERSION
static double PLUGIN_INTERFACE_VERSION
Definition: irods_plugin_base.hpp:23