#include "stdafx.h"
#include "internal/internal_datastore.h"
#include "internal/constants.h"
#include "datastore.h"

namespace You {
namespace DataStore {

DataStore& DataStore::get() {
	static DataStore ds;
	return ds;
}

Transaction DataStore::begin() {
	return Internal::DataStore::get().begin();
}

void DataStore::post(TaskId taskId, const KeyValuePairs& task) {
	Internal::DataStore::get().post(taskId, task);
}

void DataStore::put(TaskId taskId, const KeyValuePairs& task) {
	Internal::DataStore::get().put(taskId, task);
}

void DataStore::erase(TaskId taskId) {
	Internal::DataStore::get().erase(taskId);
}

std::vector<KeyValuePairs> DataStore::getAllTasks() {
	return Internal::DataStore::get().getAll(Internal::TASKS_NODE);
}

std::vector<KeyValuePairs> DataStore::getAllResources() {
	return Internal::DataStore::get().getAll(Internal::RESOURCES_NODE);
}

}  // namespace DataStore
}  // namespace You

#include "stdafx.h"
#include "internal/internal_datastore.h"
#include "internal/constants.h"
#include "datastore.h"

namespace You {
namespace DataStore {

DataStore& DataStore::get() {
	static DataStore ds;
	return ds;
}

Transaction DataStore::begin() {
	return Internal::DataStore::get().begin();
}

void DataStore::post(TaskId taskId, const KeyValuePairs& task) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().post(Internal::TASKS_NODE, stringId, task);
}

void DataStore::put(TaskId taskId, const KeyValuePairs& task) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().put(Internal::TASKS_NODE, stringId, task);
}

void DataStore::erase(TaskId taskId) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().erase(Internal::TASKS_NODE, stringId);
}

std::vector<KeyValuePairs> DataStore::getAllTasks() {
	return Internal::DataStore::get().getAll(Internal::TASKS_NODE);
}

std::vector<KeyValuePairs> DataStore::getAllResources() {
	return Internal::DataStore::get().getAll(Internal::RESOURCES_NODE);
}

}  // namespace DataStore
}  // namespace You

Fix post, put, erase for tasks to follow the changes
Fix post, put, erase for tasks to follow the changes
