mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-07-19 20:44:44 -04:00
* EGD-3087 WIP adding SMS Querry * EGD-3087 Added query virtual interface on Service top layer Service shouldn't implement query logic and should be proxying that. additionally: - small fixes in includes - shared service db name same way as apps and event manager * EGD-3087 Query - want to work on interface not on db * EGD-3087 Query gluecode works fine. Our query in SMS search calls getBySMSQuery Changes cut off before any potential orm interface layer * EGD-3087 WIP Interface in use * EGD-3087 Query for SMS search works as designed * EGD-3087 Query results should be on screen * EGD-3087 BUG workaround - need to deep refresh display to show data * EGD-3087 Searching for text from input works fine * EGD-3087 Showing results / or empty results depending on query * EGD-3087 Pre PR fixups * EGD-3087 Empty search - getting back to prewious window ignore current * EGD-3087 PR applied * EGD-3087 PR - style fixed * EGD-3087 Review - DB ListView handling moved to separate function * EGD-3087 Workaround: crash on use after free fix * EGD-3087 PR stylistic changes * EGD-3087 PR cleanup applied * EGD-3087 Added test for Query interface * EGD-3087 renamed getByQuery to getQuery & finished tests * EGD-3087 Post rebase fixup * EGD-3087 PR - moved ListView request part to separate function * EGD-3087 PR Fixups * EGD-3087 Post rebase style fix * EGD-3087 Added variable for DB service stack & const to getter function
56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
#pragma once
|
|
|
|
#include "../Database/Database.hpp"
|
|
#include "BaseInterface.hpp"
|
|
|
|
template <typename T, typename F> class RecordInterface : public db::Interface
|
|
{
|
|
public:
|
|
RecordInterface() = default;
|
|
|
|
virtual ~RecordInterface() = default;
|
|
|
|
virtual bool Add(const T &)
|
|
{
|
|
return true;
|
|
};
|
|
|
|
virtual bool RemoveByID(uint32_t id)
|
|
{
|
|
return true;
|
|
};
|
|
|
|
virtual bool RemoveByField(F field, const char *str)
|
|
{
|
|
return true;
|
|
};
|
|
|
|
virtual bool Update(const T &)
|
|
{
|
|
return true;
|
|
};
|
|
|
|
virtual T GetByID(uint32_t id)
|
|
{
|
|
return T{};
|
|
};
|
|
|
|
virtual uint32_t GetCount()
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
virtual std::unique_ptr<std::vector<T>> GetLimitOffset(uint32_t offset, uint32_t limit)
|
|
{
|
|
return std::make_unique<std::vector<T>>();
|
|
}
|
|
|
|
virtual std::unique_ptr<std::vector<T>> GetLimitOffsetByField(uint32_t offset,
|
|
uint32_t limit,
|
|
F field,
|
|
const char *str)
|
|
{
|
|
return std::make_unique<std::vector<T>>();
|
|
}
|
|
};
|