23 #ifndef SYSTEM_HANDLER_H
24 #define SYSTEM_HANDLER_H
32 #include "../entity/DataSetSpecifier.h"
33 #include "../entity/DataSet.h"
43 SystemHandler(
const std::string &dataDir,
const std::string &confDir);
71 void fillDssList(std::vector<std::string> &dssList);
82 bool holdsDss(
const std::string &dss);
89 bool holdsDataSet(
const std::string& dssName,
int sequenceNumber);
93 void generateSequenceNumber(
const std::string &dssName,
entity::DataSet &dataSet);
111 std::string
getStorePath(
const std::string &dssName,
const std::string &itemName,
int sequenceNumber, entity::Group group, entity::Tag tag);
119 std::string
getStorePath(
const std::string &dssName,
int sequenceNumber);
127 bool removeDataSet(
const std::string &dssName,
int sequenceNumber);
144 void search(
const std::string &dssName,
const std::map<std::string, std::string> &queryFields, std::vector<entity::SetDescriptor> &descriptorList);
148 std::string dataDirectory;
149 std::string confDirectory;
150 std::map<std::string, entity::DataSetSpecifier> dssArray;
151 std::map<std::string, std::vector<entity::DataSet> > dataSetCollection;
152 std::map<std::string, int> dssSequenceNumbers;
160 bool parse(
const std::string &conf);
172 void addDataItem(
const std::string &name,
const std::string &tag,
const std::string &group,
entity::DataSetSpecifier &dss);
178 void createIndex(
const std::string &path);
185 void updateIndex(
const std::string &path,
const entity::DataSet &dataSet);
191 void initFromIndex(
const std::string &dssName);
194 void fillDatSetCollection();
203 ParseException(
const std::string &msg) : std::runtime_error(msg) {}
void setDataDirectory(const std::string &datatDir)
Definition: SystemHandler.cpp:71
void addDataSet(const std::string &dssName, entity::DataSet &dataSet)
Definition: SystemHandler.cpp:227
void fillDssList(std::vector< std::string > &dssList)
Definition: SystemHandler.cpp:178
bool removeDataSet(const std::string &dssName, int sequenceNumber)
Definition: SystemHandler.cpp:295
A Data Set (DS) is an instance of a DSS and is defined by a SetDescriptor and a set of DataItems...
Definition: DataSet.h:36
Definition: SystemHandler.h:38
A DataSetSpecifier (DSS) is an object representing a single configuration file of the SimDB system...
Definition: DataSetSpecifier.h:41
std::string findNewDSS()
Definition: SystemHandler.cpp:135
void setConfDirectory(const std::string &confDir)
Definition: SystemHandler.cpp:77
bool holdsDss(const std::string &dss)
Definition: SystemHandler.cpp:195
std::string getStorePath(const std::string &dssName, const std::string &itemName, int sequenceNumber, entity::Group group, entity::Tag tag)
void search(const std::string &dssName, const std::map< std::string, std::string > &queryFields, std::vector< entity::SetDescriptor > &descriptorList)
Definition: SystemHandler.cpp:372
bool empty()
Definition: SystemHandler.cpp:190
std::string initDatabase()
Definition: SystemHandler.cpp:83
Definition: SystemHandler.h:200
entity::DataSet getDataSet(const std::string &dssName, int sequenceNumber)
Definition: SystemHandler.cpp:360
bool holdsDataSet(const std::string &dssName, int sequenceNumber)
Definition: SystemHandler.cpp:200