diff options
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/Broadcaster.hpp | 5 | ||||
-rw-r--r-- | src/server/ClientUpdate.cpp | 2 | ||||
-rw-r--r-- | src/server/ClientUpdate.hpp | 3 | ||||
-rw-r--r-- | src/server/EventWriter.cpp | 4 | ||||
-rw-r--r-- | src/server/EventWriter.hpp | 3 | ||||
-rw-r--r-- | src/server/events/Delete.cpp | 12 | ||||
-rw-r--r-- | src/server/events/Delete.hpp | 12 |
7 files changed, 24 insertions, 17 deletions
diff --git a/src/server/Broadcaster.hpp b/src/server/Broadcaster.hpp index fd8d3996..8ffc25c3 100644 --- a/src/server/Broadcaster.hpp +++ b/src/server/Broadcaster.hpp @@ -122,8 +122,9 @@ public: BROADCAST(move, old_path, new_path); } - void del(const Raul::URI& uri) { - BROADCAST(del, uri); + void del(const Raul::URI& uri, + const Properties& properties = Properties()) { + BROADCAST(del, uri, properties); } void connect(const Raul::Path& tail, diff --git a/src/server/ClientUpdate.cpp b/src/server/ClientUpdate.cpp index e4d9c08f..49a3b22a 100644 --- a/src/server/ClientUpdate.cpp +++ b/src/server/ClientUpdate.cpp @@ -118,7 +118,7 @@ ClientUpdate::put_preset(const URIs& uris, } void -ClientUpdate::del(const Raul::URI& subject) +ClientUpdate::del(const Raul::URI& subject, const Properties& properties) { dels.push_back(subject); } diff --git a/src/server/ClientUpdate.hpp b/src/server/ClientUpdate.hpp index ea11c2b8..027a250b 100644 --- a/src/server/ClientUpdate.hpp +++ b/src/server/ClientUpdate.hpp @@ -55,7 +55,8 @@ struct ClientUpdate { const Raul::URI& preset, const std::string& label); - void del(const Raul::URI& subject); + void del(const Raul::URI& subject, + const Properties& properties = Properties()); void send(Interface* dest); diff --git a/src/server/EventWriter.cpp b/src/server/EventWriter.cpp index 28a8d319..5c528238 100644 --- a/src/server/EventWriter.cpp +++ b/src/server/EventWriter.cpp @@ -110,10 +110,10 @@ EventWriter::move(const Raul::Path& old_path, } void -EventWriter::del(const Raul::URI& uri) +EventWriter::del(const Raul::URI& uri, const Properties& properties) { _engine.enqueue_event( - new Events::Delete(_engine, _respondee, _request_id, now(), uri), + new Events::Delete(_engine, _respondee, _request_id, now(), uri, properties), _event_mode); } diff --git a/src/server/EventWriter.hpp b/src/server/EventWriter.hpp index 18e98421..dbcc1fa4 100644 --- a/src/server/EventWriter.hpp +++ b/src/server/EventWriter.hpp @@ -83,7 +83,8 @@ public: const Atom& value, Resource::Graph ctx = Resource::Graph::DEFAULT); - virtual void del(const Raul::URI& uri); + virtual void del(const Raul::URI& uri, + const Properties& properties = Properties()); virtual void disconnect_all(const Raul::Path& graph, const Raul::Path& path); diff --git a/src/server/events/Delete.cpp b/src/server/events/Delete.cpp index 5683f3a4..a6ade2c9 100644 --- a/src/server/events/Delete.cpp +++ b/src/server/events/Delete.cpp @@ -35,13 +35,15 @@ namespace Ingen { namespace Server { namespace Events { -Delete::Delete(Engine& engine, - SPtr<Interface> client, - int32_t id, - FrameTime time, - const Raul::URI& uri) +Delete::Delete(Engine& engine, + SPtr<Interface> client, + int32_t id, + FrameTime time, + const Raul::URI& uri, + const Properties& properties) : Event(engine, client, id, time) , _uri(uri) + , _properties(properties) , _engine_port(NULL) , _disconnect_event(NULL) { diff --git a/src/server/events/Delete.hpp b/src/server/events/Delete.hpp index 224cad3b..e1c762ca 100644 --- a/src/server/events/Delete.hpp +++ b/src/server/events/Delete.hpp @@ -46,11 +46,12 @@ class DisconnectAll; class Delete : public Event { public: - Delete(Engine& engine, - SPtr<Interface> client, - int32_t id, - FrameTime timestamp, - const Raul::URI& uri); + Delete(Engine& engine, + SPtr<Interface> client, + int32_t id, + FrameTime timestamp, + const Raul::URI& uri, + const Properties& properties); ~Delete(); @@ -62,6 +63,7 @@ public: private: Raul::URI _uri; Raul::Path _path; + Properties _properties; SPtr<BlockImpl> _block; ///< Non-NULL iff a block SPtr<DuplexPort> _port; ///< Non-NULL iff a port EnginePort* _engine_port; |