libdballe 9.6
mysql/repinfo.h
1#ifndef DBALLE_DB_V7_MYSQL_REPINFO_H
2#define DBALLE_DB_V7_MYSQL_REPINFO_H
3
5#include <dballe/sql/fwd.h>
6#include <vector>
7#include <string>
8#include <map>
9
10namespace dballe {
11namespace db {
12namespace v7 {
13namespace mysql {
14
19{
25
27 MySQLRepinfoV7(const MySQLRepinfoV7&) = delete;
28 MySQLRepinfoV7(const MySQLRepinfoV7&&) = delete;
29 virtual ~MySQLRepinfoV7();
30 MySQLRepinfoV7& operator=(const MySQLRepinfoV7&) = delete;
31
32 void dump(FILE* out) override;
33
34protected:
36 int id_use_count(unsigned id, const char* name) override;
37 void delete_entry(unsigned id) override;
38 void update_entry(const v7::repinfo::Cache& entry) override;
39 void insert_entry(const v7::repinfo::Cache& entry) override;
40 void read_cache() override;
41 void insert_auto_entry(const char* memo) override;
42};
43
44}
45}
46}
47}
48#endif
Database connection.
Definition: mysql.h:127
Repinfo table management used by the db module.
Forward declarations for public dballe/sql names.
Fast cached access to the repinfo table.
Definition: repinfo.h:72
Fast cached access to the repinfo table.
Definition: mysql/repinfo.h:19
void update_entry(const v7::repinfo::Cache &entry) override
Update an entry using the new_* fields of entry.
void dump(FILE *out) override
Dump the entire contents of the database to an output stream.
int id_use_count(unsigned id, const char *name) override
Return how many time this ID is used in the database.
void read_cache() override
Reread the repinfo cache from the database FIXME: needed when rolling back a transaction,...
void insert_auto_entry(const char *memo) override
Create an automatic entry for a missing memo, and insert it in the database.
void insert_entry(const v7::repinfo::Cache &entry) override
Insert an entry using the new_* fields of entry.
void delete_entry(unsigned id) override
Delete a repinfo entry.
dballe::sql::MySQLConnection & conn
DB connection.
Definition: mysql/repinfo.h:24
repinfo cache entry
Definition: repinfo.h:25