sysrepo  1.4.70
YANG datastore
Connection.hpp
Go to the documentation of this file.
1 
23 #ifndef CONNECTION_H
24 #define CONNECTION_H
25 
26 #include <iostream>
27 
28 #include <libyang/Libyang.hpp>
29 
30 #include "Sysrepo.hpp"
31 #include "Internal.hpp"
32 
33 #include "sysrepo.h"
34 
35 namespace sysrepo {
36 
47 {
48 public:
50  Connection(const sr_conn_options_t opts = (sr_conn_options_t)CONN_DEFAULT);
53 
55  libyang::S_Context get_context();
56 
58  void install_module(const char *schema_path, const char *search_dir, std::vector<std::string> features);
60  void install_module_data(const char *module_name, const char *data, const char *data_path, LYD_FORMAT format);
62  void remove_module(const char *module_name);
64  void update_module(const char *schema_path, const char *search_dir);
66  void cancel_update_module(const char *module_name);
68  void set_module_replay_support(const char *module_name, int replay_support);
70  void set_module_access(const char *module_name, const char *owner, const char *group, mode_t perm);
72  std::tuple<std::string, std::string, mode_t> get_module_access(const char *module_name);
74  void enable_module_feature(const char *module_name, const char *feature_name);
76  void disable_module_feature(const char *module_name, const char *feature_name);
78  libyang::S_Data_Node get_module_info();
79 
81  std::tuple<int, uint32_t, uint32_t, time_t> get_lock(sr_datastore_t datastore, const char *module_name = nullptr);
82 
83  friend class Session;
84 
85 private:
86  sr_conn_ctx_t *_conn;
87  sr_conn_options_t _opts;
88 };
89 
91 }
92 
93 #endif
sysrepo::Connection::get_module_access
std::tuple< std::string, std::string, mode_t > get_module_access(const char *module_name)
sysrepo.h
public API sysrepo header
Internal.hpp
Sysrepo class header for internal C++ classes.
sysrepo::Connection
Class for wrapping sr_conn_ctx_t.
Definition: Connection.hpp:47
sysrepo::Connection::enable_module_feature
void enable_module_feature(const char *module_name, const char *feature_name)
sysrepo
Definition: Connection.hpp:35
sysrepo::Connection::cancel_update_module
void cancel_update_module(const char *module_name)
sr_datastore_t
enum sr_datastore_e sr_datastore_t
Datastores that sysrepo supports. To change which datastore a session operates on,...
sr_conn_options_t
uint32_t sr_conn_options_t
Options overriding default connection handling by sr_connect call, it is supposed to be bitwise OR-ed...
Definition: sysrepo.h:192
sysrepo::Session
Class for wrapping sr_session_ctx_t.
Definition: Session.hpp:53
sysrepo::Connection::~Connection
~Connection()
sysrepo::Connection::install_module
void install_module(const char *schema_path, const char *search_dir, std::vector< std::string > features)
sysrepo::Connection::install_module_data
void install_module_data(const char *module_name, const char *data, const char *data_path, LYD_FORMAT format)
Sysrepo.hpp
Sysrepo Sysrepo class header.
sysrepo::Connection::set_module_replay_support
void set_module_replay_support(const char *module_name, int replay_support)
sysrepo::Connection::disable_module_feature
void disable_module_feature(const char *module_name, const char *feature_name)
sysrepo::Connection::get_lock
std::tuple< int, uint32_t, uint32_t, time_t > get_lock(sr_datastore_t datastore, const char *module_name=nullptr)
sysrepo::Connection::get_module_info
libyang::S_Data_Node get_module_info()
sysrepo::Connection::update_module
void update_module(const char *schema_path, const char *search_dir)
sysrepo::Connection::Connection
Connection(const sr_conn_options_t opts=(sr_conn_options_t) CONN_DEFAULT)
sr_conn_ctx_t
struct sr_conn_ctx_s sr_conn_ctx_t
Sysrepo connection.
Definition: sysrepo.h:168
sysrepo::Connection::get_context
libyang::S_Context get_context()
sysrepo::Connection::remove_module
void remove_module(const char *module_name)
sysrepo::Connection::set_module_access
void set_module_access(const char *module_name, const char *owner, const char *group, mode_t perm)