mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-05-03 20:46:28 +00:00
feat(EventsDb): add deleteEvent impl
This commit is contained in:
parent
086a749511
commit
ec8327d102
3 changed files with 22 additions and 4 deletions
|
|
@ -28,11 +28,12 @@
|
||||||
|
|
||||||
#include "abstract/abstract-db-p.h"
|
#include "abstract/abstract-db-p.h"
|
||||||
#include "chat/chat-message.h"
|
#include "chat/chat-message.h"
|
||||||
#include "content/content.h"
|
|
||||||
#include "conference/participant.h"
|
#include "conference/participant.h"
|
||||||
|
#include "content/content.h"
|
||||||
#include "db/provider/db-session-provider.h"
|
#include "db/provider/db-session-provider.h"
|
||||||
#include "event-log/call-event.h"
|
#include "event-log/call-event.h"
|
||||||
#include "event-log/chat-message-event.h"
|
#include "event-log/chat-message-event.h"
|
||||||
|
#include "event-log/event-log-p.h"
|
||||||
#include "logger/logger.h"
|
#include "logger/logger.h"
|
||||||
|
|
||||||
#include "events-db.h"
|
#include "events-db.h"
|
||||||
|
|
@ -501,14 +502,26 @@ EventsDb::EventsDb () : AbstractDb(*new EventsDbPrivate) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool EventsDb::deleteEvent (const EventLog &eventLog) {
|
bool EventsDb::deleteEvent (const EventLog &eventLog) {
|
||||||
|
L_D();
|
||||||
|
|
||||||
if (!isConnected()) {
|
if (!isConnected()) {
|
||||||
lWarning() << "Unable to delete event. Not connected.";
|
lWarning() << "Unable to delete event. Not connected.";
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO.
|
int &id = const_cast<EventLog &>(eventLog).getPrivate()->id;
|
||||||
(void)eventLog;
|
if (id < 0)
|
||||||
return true;
|
return false;
|
||||||
|
|
||||||
|
L_BEGIN_LOG_EXCEPTION
|
||||||
|
|
||||||
|
soci::session *session = d->dbSession.getBackendSession<soci::session>();
|
||||||
|
*session << "DELETE FROM event WHERE id = :id", soci::use(id);
|
||||||
|
id = -1;
|
||||||
|
|
||||||
|
L_END_LOG_EXCEPTION
|
||||||
|
|
||||||
|
return id == -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EventsDb::cleanEvents (FilterMask mask) {
|
void EventsDb::cleanEvents (FilterMask mask) {
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,9 @@
|
||||||
LINPHONE_BEGIN_NAMESPACE
|
LINPHONE_BEGIN_NAMESPACE
|
||||||
|
|
||||||
class EventLogPrivate : public ClonableObjectPrivate {
|
class EventLogPrivate : public ClonableObjectPrivate {
|
||||||
|
public:
|
||||||
|
int id = -1;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
EventLog::Type type = EventLog::Type::None;
|
EventLog::Type type = EventLog::Type::None;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,8 @@ LINPHONE_BEGIN_NAMESPACE
|
||||||
class EventLogPrivate;
|
class EventLogPrivate;
|
||||||
|
|
||||||
class LINPHONE_PUBLIC EventLog : public ClonableObject {
|
class LINPHONE_PUBLIC EventLog : public ClonableObject {
|
||||||
|
friend class EventsDb;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
L_DECLARE_ENUM(Type, L_ENUM_VALUES_EVENT_LOG_TYPE);
|
L_DECLARE_ENUM(Type, L_ENUM_VALUES_EVENT_LOG_TYPE);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue