[haiku-commits] r39022 - in haiku/trunk: headers/private/storage src/kits/storage

  • From: clemens.zeidler@xxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 20 Oct 2010 15:24:39 +0200 (CEST)

Author: czeidler
Date: 2010-10-20 15:24:39 +0200 (Wed, 20 Oct 2010)
New Revision: 39022
Changeset: http://dev.haiku-os.org/changeset/39022

Modified:
   haiku/trunk/headers/private/storage/AddOnMonitorHandler.h
   haiku/trunk/headers/private/storage/NodeMonitorHandler.h
   haiku/trunk/src/kits/storage/AddOnMonitorHandler.cpp
   haiku/trunk/src/kits/storage/NodeMonitorHandler.cpp
Log:
Update NodeMonitorHandler to use all haiku specific fields.



Modified: haiku/trunk/headers/private/storage/AddOnMonitorHandler.h
===================================================================
--- haiku/trunk/headers/private/storage/AddOnMonitorHandler.h   2010-10-20 
12:45:49 UTC (rev 39021)
+++ haiku/trunk/headers/private/storage/AddOnMonitorHandler.h   2010-10-20 
13:24:39 UTC (rev 39022)
@@ -61,11 +61,12 @@
 protected:
        virtual void                            EntryCreated(const char* name, 
ino_t directory,
                                                                        dev_t 
device, ino_t node);
-       virtual void                            EntryRemoved(ino_t directory, 
dev_t device,
-                                                                       ino_t 
node);
-       virtual void                            EntryMoved(const char* name,
-                                                                       ino_t 
fromDirectory, ino_t toDirectory,
+       virtual void                            EntryRemoved(const char *name, 
ino_t directory,
                                                                        dev_t 
device, ino_t node);
+       virtual void                            EntryMoved(const char *name,
+                                                                       const 
char *fromName, ino_t from_directory,
+                                                                       ino_t 
to_directory, dev_t device,
+                                                                       ino_t 
node, dev_t nodeDevice);
        virtual void                            StatChanged(ino_t node, dev_t 
device);
 
 private:

Modified: haiku/trunk/headers/private/storage/NodeMonitorHandler.h
===================================================================
--- haiku/trunk/headers/private/storage/NodeMonitorHandler.h    2010-10-20 
12:45:49 UTC (rev 39021)
+++ haiku/trunk/headers/private/storage/NodeMonitorHandler.h    2010-10-20 
13:24:39 UTC (rev 39022)
@@ -27,14 +27,16 @@
 protected:
        // hooks for subclass
        virtual void    EntryCreated(const char *name, ino_t directory,
-                                                    dev_t device, ino_t node);
-       virtual void    EntryRemoved(ino_t directory, dev_t device, ino_t node);
-       virtual void    EntryMoved(const char *name, ino_t from_directory,
-                                                  ino_t to_directory, dev_t 
device, ino_t node);
+                                               dev_t device, ino_t node);
+       virtual void    EntryRemoved(const char *name, ino_t directory,
+                                               dev_t device, ino_t node);
+       virtual void    EntryMoved(const char *name, const char *fromName,
+                                               ino_t from_directory, ino_t 
to_directory, dev_t device,
+                                               ino_t node, dev_t nodeDevice);
        virtual void    StatChanged(ino_t node, dev_t device);
        virtual void    AttrChanged(ino_t node, dev_t device);
        virtual void    DeviceMounted(dev_t new_device, dev_t device,
-                                                     ino_t directory);
+                                               ino_t directory);
        virtual void    DeviceUnmounted(dev_t new_device);
 
 private:

Modified: haiku/trunk/src/kits/storage/AddOnMonitorHandler.cpp
===================================================================
--- haiku/trunk/src/kits/storage/AddOnMonitorHandler.cpp        2010-10-20 
12:45:49 UTC (rev 39021)
+++ haiku/trunk/src/kits/storage/AddOnMonitorHandler.cpp        2010-10-20 
13:24:39 UTC (rev 39022)
@@ -149,7 +149,8 @@
 
 
 void
-AddOnMonitorHandler::EntryRemoved(ino_t directory, dev_t device, ino_t node)
+AddOnMonitorHandler::EntryRemoved(const char* name, ino_t directory,
+       dev_t device, ino_t node)
 {
        node_ref entryNodeRef;
        make_node_ref(device, node, &entryNodeRef);
@@ -212,15 +213,16 @@
 
 
 void
-AddOnMonitorHandler::EntryMoved(const char* name, ino_t fromDirectory,
-       ino_t toDirectory, dev_t device, ino_t node)
+AddOnMonitorHandler::EntryMoved(const char *name, const char *fromName,
+       ino_t from_directory, ino_t to_directory, dev_t device, ino_t node,
+       dev_t nodeDevice)
 {
        node_ref toNodeRef;
-       make_node_ref(device, toDirectory, &toNodeRef);
+       make_node_ref(device, to_directory, &toNodeRef);
 
        // Search the "from" and "to" directory in the known directories
        DirectoryList::iterator from_iter = fDirectories.begin();
-       bool watchingFromDirectory = _FindDirectory(fromDirectory, device,
+       bool watchingFromDirectory = _FindDirectory(from_directory, device,
                from_iter);
 
        DirectoryList::iterator to_iter = fDirectories.begin();
@@ -342,7 +344,7 @@
                // the entry and readding it. TODO: This can temporarily enable 
add-ons
                // which should in fact stay hidden (moving add-on from home to 
common
                // folder or vice versa, the system add-on should remain 
hidden).
-               EntryRemoved(fromDirectory, device, node);
+               EntryRemoved(name, from_directory, device, node);
                info.dir_nref = toNodeRef;
                _EntryCreated(info);
        } else {

Modified: haiku/trunk/src/kits/storage/NodeMonitorHandler.cpp
===================================================================
--- haiku/trunk/src/kits/storage/NodeMonitorHandler.cpp 2010-10-20 12:45:49 UTC 
(rev 39021)
+++ haiku/trunk/src/kits/storage/NodeMonitorHandler.cpp 2010-10-20 13:24:39 UTC 
(rev 39022)
@@ -86,22 +86,24 @@
 
 /* virtual */ void
 NodeMonitorHandler::EntryCreated(const char *name, ino_t directory,
-                                                    dev_t device, ino_t node)
+       dev_t device, ino_t node)
 {
        // ignore
 }
 
 
 /* virtual */ void
-NodeMonitorHandler::EntryRemoved(ino_t directory, dev_t device, ino_t node)
+NodeMonitorHandler::EntryRemoved(const char *name, ino_t directory,
+       dev_t device, ino_t node)
 {
        // ignore
 }
 
 
 /* virtual */ void
-NodeMonitorHandler::EntryMoved(const char *name, ino_t from_directory,
-                                                  ino_t to_directory, dev_t 
device, ino_t node)
+NodeMonitorHandler::EntryMoved(const char *name, const char *fromName,
+       ino_t from_directory, ino_t to_directory, dev_t device,ino_t node,
+       dev_t nodeDevice)
 {
        // ignore
 }
@@ -123,7 +125,7 @@
 
 /* virtual */ void
 NodeMonitorHandler::DeviceMounted(dev_t new_device, dev_t device,
-                                                     ino_t directory)
+       ino_t directory)
 {
        // ignore
 }
@@ -161,15 +163,17 @@
 status_t
 NodeMonitorHandler::HandleEntryRemoved(BMessage * msg)
 {
+       const char *name;
        ino_t directory;
        dev_t device;
        ino_t node;
-       if ((msg->FindInt64("directory", &directory) != B_OK) ||
+       if ((msg->FindString("name", &name) != B_OK) ||
+               (msg->FindInt64("directory", &directory) != B_OK) ||
                (msg->FindInt32("device", &device) != B_OK) ||
                (msg->FindInt64("node", &node) != B_OK)) {
                return B_MESSAGE_NOT_UNDERSTOOD;
        }
-       EntryRemoved(directory, device, node);
+       EntryRemoved(name, directory, device, node);
        return B_OK;
 }
 
@@ -178,18 +182,23 @@
 NodeMonitorHandler::HandleEntryMoved(BMessage * msg)
 {
        const char *name;
+       const char *fromName;
        ino_t from_directory;
        ino_t to_directory;
        dev_t device;
        ino_t node;
+       dev_t deviceNode;
        if ((msg->FindString("name", &name) != B_OK) ||
-        (msg->FindInt64("from directory", &from_directory) != B_OK) ||
+               (msg->FindString("from name", &fromName) != B_OK) ||
+               (msg->FindInt64("from directory", &from_directory) != B_OK) ||
                (msg->FindInt64("to directory", &to_directory) != B_OK) ||
                (msg->FindInt32("device", &device) != B_OK) ||
+               (msg->FindInt32("node device", &deviceNode) != B_OK) ||
                (msg->FindInt64("node", &node) != B_OK)) {
                return B_MESSAGE_NOT_UNDERSTOOD;
        }
-       EntryMoved(name, from_directory, to_directory, device, node);
+       EntryMoved(name, fromName, from_directory, to_directory, device, node,
+               deviceNode);
        return B_OK;
 }
 


Other related posts: