/***************************************************************************
* By Théophile Bastian, 2017
* M1 Network course project at ENS Cachan, Juliusz Chroboczek.
* License: WTFPL v2
**************************************************************************/
#pragma once
#include
#include
#include "data.h"
class ConfigFile {
public:
ConfigFile();
bool read(const char* path);
bool write(const char* path);
u64 getSelfId() const { return selfId; }
void setSelfId(u64 id) { selfId = id; }
/** Self id */
const std::vector& getBootstrapNodes() const {
return bootstrapNodes;
};
/** Bootstrap nodes. No setter: wouldn't be useful. */
const std::vector >& getData() const {
return data;
}
/** Data to publish. */
private:
u64 randId() const;
u64 selfId;
std::vector bootstrapNodes;
std::vector > data;
};