Skip to content

Commit 71e5e09

Browse files
author
ganglyu
committed
Fix lost src file
1 parent f019892 commit 71e5e09

File tree

5 files changed

+225
-1
lines changed

5 files changed

+225
-1
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,5 @@ debian/sonic-telemetry.debhelper.log
55
debian/sonic-telemetry.substvars
66
debian/sonic-telemetry/
77
vendor
8-
src
98
cvl
109
translib

libcswsscommon/src/dbconnector.cpp

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#include <capi/dbconnector.h>
2+
#include <dbconnector.h>
3+
4+
#include <string>
5+
6+
extern "C" db_connector_t db_connector_new(int db, const char *hostname, int port, unsigned int timeout)
7+
{
8+
auto dbc = new swss::DBConnector(db, std::string(hostname), port, timeout);
9+
return static_cast<db_connector_t>(dbc);
10+
}
11+
12+
extern "C" db_connector_t db_connector_new2(int db, const char *unixPath, unsigned int timeout)
13+
{
14+
auto dbc = new swss::DBConnector(db, std::string(unixPath), timeout);
15+
return static_cast<db_connector_t>(dbc);
16+
}
17+
18+
extern "C" void db_connector_delete(db_connector_t db)
19+
{
20+
delete static_cast<swss::DBConnector*>(db);
21+
}
22+
23+
extern "C" redisContext *db_connector_get_context(db_connector_t db)
24+
{
25+
return static_cast<swss::DBConnector*>(db)->getContext();
26+
}
27+
28+
extern "C" int db_connector_get_db(db_connector_t db)
29+
{
30+
return static_cast<swss::DBConnector*>(db)->getDbId();
31+
}
32+
33+
extern "C" void db_connector_select(db_connector_t db)
34+
{
35+
swss::DBConnector::select(static_cast<swss::DBConnector*>(db));
36+
}
37+
38+
extern "C" db_connector_t db_connector_new_connector(db_connector_t db, unsigned int timeout)
39+
{
40+
auto dbc = static_cast<swss::DBConnector*>(db)->newConnector(timeout);
41+
return static_cast<db_connector_t>(dbc);
42+
}
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
#include <capi/producerstatetable.h>
2+
#include <producerstatetable.h>
3+
#include <dbconnector.h>
4+
#include <redispipeline.h>
5+
6+
#include <string>
7+
#include <vector>
8+
#include <tuple>
9+
10+
producer_state_table_t producer_state_table_new(db_connector_t db, const char *tableName)
11+
{
12+
auto pt = new swss::ProducerStateTable(static_cast<swss::DBConnector*>(db), std::string(tableName));
13+
return static_cast<producer_state_table_t>(pt);
14+
}
15+
16+
producer_state_table_t producer_state_table_new2(redis_pipeline_t pipeline, const char *tableName, bool buffered)
17+
{
18+
auto pt = new swss::ProducerStateTable(static_cast<swss::RedisPipeline*>(pipeline), std::string(tableName), buffered);
19+
return static_cast<producer_state_table_t>(pt);
20+
}
21+
22+
void producer_state_table_delete(producer_state_table_t pt)
23+
{
24+
delete static_cast<swss::ProducerStateTable*>(pt);
25+
}
26+
27+
void producer_state_table_set_buffered(producer_state_table_t pt, bool buffered)
28+
{
29+
static_cast<swss::ProducerStateTable*>(pt)->setBuffered(buffered);
30+
}
31+
32+
void producer_state_table_set(producer_state_table_t pt,
33+
const char *key,
34+
const field_value_tuple_t *values,
35+
size_t count,
36+
const char *op,
37+
const char *prefix)
38+
{
39+
std::vector<swss::FieldValueTuple> tuples;
40+
for(size_t i = 0; i < count; i++)
41+
{
42+
auto tuple = std::make_pair(std::string(values[i].field), std::string(values[i].value));
43+
tuples.push_back(tuple);
44+
}
45+
static_cast<swss::ProducerStateTable*>(pt)->set(std::string(key), tuples, std::string(op), std::string(prefix));
46+
}
47+
48+
void producer_state_table_del(producer_state_table_t pt,
49+
const char *key,
50+
const char *op,
51+
const char *prefix)
52+
{
53+
static_cast<swss::ProducerStateTable*>(pt)->del(std::string(key), std::string(op), std::string(prefix));
54+
}
55+
56+
void producer_state_table_flush(producer_state_table_t pt)
57+
{
58+
static_cast<swss::ProducerStateTable*>(pt)->flush();
59+
}
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
#include <capi/producertable.h>
2+
#include <producertable.h>
3+
#include <dbconnector.h>
4+
#include <redispipeline.h>
5+
6+
#include <string>
7+
#include <vector>
8+
#include <tuple>
9+
10+
producer_table_t producer_table_new(db_connector_t db, const char *tableName)
11+
{
12+
auto pt = new swss::ProducerTable(static_cast<swss::DBConnector*>(db), std::string(tableName));
13+
return static_cast<producer_table_t>(pt);
14+
}
15+
16+
producer_table_t producer_table_new2(redis_pipeline_t pipeline, const char *tableName, bool buffered)
17+
{
18+
auto pt = new swss::ProducerTable(static_cast<swss::RedisPipeline*>(pipeline), std::string(tableName), buffered);
19+
return static_cast<producer_table_t>(pt);
20+
}
21+
22+
producer_table_t producer_table_new3(db_connector_t db, const char *tableName, const char *dumpFile)
23+
{
24+
auto pt = new swss::ProducerTable(static_cast<swss::DBConnector*>(db), std::string(tableName), std::string(dumpFile));
25+
return static_cast<producer_table_t>(pt);
26+
}
27+
28+
void producer_table_delete(producer_table_t pt)
29+
{
30+
delete static_cast<swss::ProducerTable*>(pt);
31+
}
32+
33+
void producer_table_set_buffered(producer_table_t pt, bool buffered)
34+
{
35+
static_cast<swss::ProducerTable*>(pt)->setBuffered(buffered);
36+
}
37+
38+
void producer_table_set(producer_table_t pt,
39+
const char *key,
40+
const field_value_tuple_t *values,
41+
size_t count,
42+
const char *op,
43+
const char *prefix)
44+
{
45+
std::vector<swss::FieldValueTuple> tuples;
46+
for(size_t i = 0; i < count; i++)
47+
{
48+
auto tuple = std::make_pair(std::string(values[i].field), std::string(values[i].value));
49+
tuples.push_back(tuple);
50+
}
51+
static_cast<swss::ProducerTable*>(pt)->set(std::string(key), tuples, std::string(op), std::string(prefix));
52+
}
53+
54+
void producer_table_del(producer_table_t pt,
55+
const char *key,
56+
const char *op,
57+
const char *prefix)
58+
{
59+
static_cast<swss::ProducerTable*>(pt)->del(std::string(key), std::string(op), std::string(prefix));
60+
}
61+
62+
void producer_table_flush(producer_table_t pt)
63+
{
64+
static_cast<swss::ProducerTable*>(pt)->flush();
65+
}

libcswsscommon/src/table.cpp

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
#include <capi/table.h>
2+
#include <table.h>
3+
#include <dbconnector.h>
4+
#include <redispipeline.h>
5+
6+
#include <string>
7+
#include <vector>
8+
#include <tuple>
9+
10+
table_t table_new(db_connector_t db, const char *tableName)
11+
{
12+
auto pt = new swss::Table(static_cast<swss::DBConnector*>(db), std::string(tableName));
13+
return static_cast<table_t>(pt);
14+
}
15+
16+
table_t table_new2(redis_pipeline_t pipeline, const char *tableName, bool buffered)
17+
{
18+
auto pt = new swss::Table(static_cast<swss::RedisPipeline*>(pipeline), std::string(tableName), buffered);
19+
return static_cast<table_t>(pt);
20+
}
21+
22+
void table_delete(table_t pt)
23+
{
24+
delete static_cast<swss::Table*>(pt);
25+
}
26+
27+
void table_set_buffered(table_t pt, bool buffered)
28+
{
29+
static_cast<swss::Table*>(pt)->setBuffered(buffered);
30+
}
31+
32+
void table_set(table_t pt,
33+
const char *key,
34+
const field_value_tuple_t *values,
35+
size_t count,
36+
const char *op,
37+
const char *prefix)
38+
{
39+
std::vector<swss::FieldValueTuple> tuples;
40+
for(size_t i = 0; i < count; i++)
41+
{
42+
auto tuple = std::make_pair(std::string(values[i].field), std::string(values[i].value));
43+
tuples.push_back(tuple);
44+
}
45+
static_cast<swss::Table*>(pt)->set(std::string(key), tuples, std::string(op), std::string(prefix));
46+
}
47+
48+
void table_del(table_t pt,
49+
const char *key,
50+
const char *op,
51+
const char *prefix)
52+
{
53+
static_cast<swss::Table*>(pt)->del(std::string(key), std::string(op), std::string(prefix));
54+
}
55+
56+
void table_flush(table_t pt)
57+
{
58+
static_cast<swss::Table*>(pt)->flush();
59+
}

0 commit comments

Comments
 (0)