Added a DiskDeviceManager to the registrar. Does nothing for now, but will soon be the one responsible for the disk device functionality in the registrar.

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2620 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold 2003-02-01 21:39:22 +00:00
parent 3e103b0660
commit 3f82d4f1d2
5 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1,37 @@
//----------------------------------------------------------------------
// This software is part of the OpenBeOS distribution and is covered
// by the OpenBeOS license.
//---------------------------------------------------------------------
#include <RegistrarDefs.h>
#include "DiskDeviceManager.h"
// constructor
DiskDeviceManager::DiskDeviceManager()
: BLooper("disk device manager")
{
}
// destructor
DiskDeviceManager::~DiskDeviceManager()
{
}
// MessageReceived
void
DiskDeviceManager::MessageReceived(BMessage *message)
{
switch (message->what) {
case B_REG_NEXT_DISK_DEVICE:
case B_REG_GET_DISK_DEVICE:
case B_REG_UPDATE_DISK_DEVICE:
case B_REG_DEVICE_START_WATCHING:
case B_REG_DEVICE_STOP_WATCHING:
break;
default:
BLooper::MessageReceived(message);
break;
}
}

View File

@ -0,0 +1,19 @@
//----------------------------------------------------------------------
// This software is part of the OpenBeOS distribution and is covered
// by the OpenBeOS license.
//---------------------------------------------------------------------
#ifndef DISK_DEVICE_MANAGER_H
#define DISK_DEVICE_MANAGER_H
#include <Looper.h>
class DiskDeviceManager : public BLooper {
public:
DiskDeviceManager();
virtual ~DiskDeviceManager();
virtual void MessageReceived(BMessage *message);
};
#endif // DISK_DEVICE_MANAGER_H

View File

@ -8,6 +8,7 @@ Server obos_registrar :
AppInfoList.cpp
ClipboardHandler.cpp
ClipboardTree.cpp
DiskDeviceManager.cpp
Event.cpp
EventMaskWatcher.cpp
EventQueue.cpp

View File

@ -8,6 +8,7 @@
#include <RegistrarDefs.h>
#include "ClipboardHandler.h"
#include "DiskDeviceManager.h"
#include "EventQueue.h"
#include "MessageEvent.h"
#include "MessageRunnerManager.h"
@ -36,6 +37,7 @@ Registrar::Registrar()
fRoster(NULL),
fClipboardHandler(NULL),
fMIMEManager(NULL),
fDiskDeviceManager(NULL),
fEventQueue(NULL),
fMessageRunnerManager(NULL),
fSanityEvent(NULL)
@ -57,6 +59,8 @@ Registrar::~Registrar()
delete fMessageRunnerManager;
delete fEventQueue;
delete fSanityEvent;
fDiskDeviceManager->Lock();
fDiskDeviceManager->Quit();
fMIMEManager->Lock();
fMIMEManager->Quit();
RemoveHandler(fClipboardHandler);
@ -97,6 +101,15 @@ Registrar::MessageReceived(BMessage *message)
message->SendReply(&reply);
break;
}
case B_REG_GET_DISK_DEVICE_MESSENGER:
{
PRINT(("B_REG_GET_DISK_DEVICE_MESSENGER\n"));
BMessenger messenger(NULL, fDiskDeviceManager);
BMessage reply(B_REG_SUCCESS);
reply.AddMessenger("messenger", messenger);
message->SendReply(&reply);
break;
}
// roster requests
case B_REG_ADD_APP:
fRoster->HandleAddApplication(message);
@ -213,6 +226,9 @@ Registrar::ReadyToRun()
// create MIME manager
fMIMEManager = new MIMEManager;
fMIMEManager->Run();
// create disk device manager
fDiskDeviceManager = new DiskDeviceManager;
fDiskDeviceManager->Run();
// create message runner manager
fEventQueue = new EventQueue(kEventQueueName);
fMessageRunnerManager = new MessageRunnerManager(fEventQueue);

View File

@ -29,6 +29,7 @@
#include <Application.h>
class ClipboardHandler;
class DiskDeviceManager;
class EventQueue;
class MessageEvent;
class MessageRunnerManager;
@ -55,6 +56,7 @@ private:
BPrivate::TRoster *fRoster;
ClipboardHandler *fClipboardHandler;
MIMEManager *fMIMEManager;
DiskDeviceManager *fDiskDeviceManager;
EventQueue *fEventQueue;
MessageRunnerManager *fMessageRunnerManager;
MessageEvent *fSanityEvent;