registrar: Move more classes to libstorage_kit_mime.a

Move MimeSnifferAddon, MimeSnifferAddonManager, and TextSnifferAddon to
libstorage_kit_mime.a, so we can reuse them.
This commit is contained in:
Ingo Weinhold
2013-11-22 12:24:12 +01:00
parent eb539d59e7
commit 85835e4186
9 changed files with 71 additions and 31 deletions
@@ -1,13 +1,15 @@
/*
* Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
* All rights reserved. Distributed under the terms of the MIT License.
* Copyright 2006-2013, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#ifndef MIME_SNIFFER_ADDON_MANAGER_H
#define MIME_SNIFFER_ADDON_MANAGER_H
#ifndef _MINE_MIME_SNIFFER_ADDON_MANAGER_H
#define _MINE_MIME_SNIFFER_ADDON_MANAGER_H
#include <List.h>
#include <Locker.h>
#include <mime/MimeSniffer.h>
@@ -15,6 +17,7 @@ class BFile;
class BMimeSnifferAddon;
class BMimeType;
namespace BPrivate {
namespace Storage {
namespace Mime {
@@ -59,7 +62,6 @@ private:
} // namespace Storage
} // namespace BPrivate
using BPrivate::Storage::Mime::MimeSnifferAddonManager;
#endif // MIME_SNIFFER_ADDON_MANAGER_H
#endif // _MINE_MIME_SNIFFER_ADDON_MANAGER_H
@@ -1,12 +1,19 @@
/*
* Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
* All rights reserved. Distributed under the terms of the MIT License.
* Copyright 2006-2013, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#ifndef TEXT_SNIFFER_ADDON_H
#define TEXT_SNIFFER_ADDON_H
#ifndef _MIME_TEXT_SNIFFER_ADDON_H
#define _MIME_TEXT_SNIFFER_ADDON_H
#include <MimeSnifferAddon.h>
namespace BPrivate {
namespace Storage {
namespace Mime {
class TextSnifferAddon : public BMimeSnifferAddon {
public:
TextSnifferAddon();
@@ -21,4 +28,10 @@ public:
BMimeType* type);
};
#endif // TEXT_SNIFFER_ADDON_H
} // namespace Mime
} // namespace Storage
} // namespace BPrivate
#endif // _MIME_TEXT_SNIFFER_ADDON_H
+3
View File
@@ -20,9 +20,12 @@ for architectureObject in [ MultiArchSubDirSetup ] {
MimeEntryProcessor.cpp
MimeInfoUpdater.cpp
MimeSniffer.cpp
MimeSnifferAddon.cpp
MimeSnifferAddonManager.cpp
SnifferRules.cpp
Supertype.cpp
SupportingApps.cpp
TextSnifferAddon.cpp
;
}
}
@@ -1,9 +1,11 @@
/*
* Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
* All rights reserved. Distributed under the terms of the MIT License.
* Copyright 2006-2013, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#include "MimeSnifferAddon.h"
#include <MimeSnifferAddon.h>
// constructor
BMimeSnifferAddon::BMimeSnifferAddon()
@@ -1,18 +1,22 @@
/*
* Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
* All rights reserved. Distributed under the terms of the MIT License.
* Copyright 2006-2013, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#include "MimeSnifferAddonManager.h"
#include <mime/MimeSnifferAddonManager.h>
#include <new>
#include <Autolock.h>
#include <MimeType.h>
#include "MimeSnifferAddon.h"
#include <MimeSnifferAddon.h>
using std::nothrow;
namespace BPrivate {
namespace Storage {
namespace Mime {
// singleton instance
@@ -78,7 +82,8 @@ MimeSnifferAddonManager::Default()
status_t
MimeSnifferAddonManager::CreateDefault()
{
MimeSnifferAddonManager* manager = new(nothrow) MimeSnifferAddonManager;
MimeSnifferAddonManager* manager
= new(std::nothrow) MimeSnifferAddonManager;
if (!manager)
return B_NO_MEMORY;
@@ -109,7 +114,7 @@ MimeSnifferAddonManager::AddMimeSnifferAddon(BMimeSnifferAddon* addon)
return B_ERROR;
// create a reference for the addon
AddonReference* reference = new(nothrow) AddonReference(addon);
AddonReference* reference = new(std::nothrow) AddonReference(addon);
if (!reference)
return B_NO_MEMORY;
@@ -202,7 +207,7 @@ MimeSnifferAddonManager::_GetAddons(AddonReference**& references, int32& count)
return B_ERROR;
count = fAddons.CountItems();
references = new(nothrow) AddonReference*[count];
references = new(std::nothrow) AddonReference*[count];
if (!references)
return B_NO_MEMORY;
@@ -223,3 +228,8 @@ MimeSnifferAddonManager::_PutAddons(AddonReference** references, int32 count)
delete[] references;
}
} // namespace Mime
} // namespace Storage
} // namespace BPrivate
@@ -1,13 +1,19 @@
/*
* Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>.
* All rights reserved. Distributed under the terms of the MIT License.
* Copyright 2006-2013, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#include "TextSnifferAddon.h"
#include <mime/TextSnifferAddon.h>
#include <MimeType.h>
namespace BPrivate {
namespace Storage {
namespace Mime {
static int file_ascmagic(const unsigned char *buf, size_t nbytes,
BMimeType* mimeType);
@@ -686,3 +692,8 @@ from_ebcdic(const unsigned char *buf, size_t nbytes, unsigned char *out)
out[i] = ebcdic_to_ascii[buf[i]];
}
}
} // namespace Mime
} // namespace Storage
} // namespace BPrivate
-3
View File
@@ -34,15 +34,12 @@ Server registrar
RosterAppInfo.cpp
RosterSettingsCharStream.cpp
ShutdownProcess.cpp
TextSnifferAddon.cpp
TRoster.cpp
Watcher.cpp
WatchingService.cpp
# mime
CreateAppMetaMimeThread.cpp
MimeSnifferAddon.cpp
MimeSnifferAddonManager.cpp
MimeUpdateThread.cpp
RegistrarThread.cpp
RegistrarThreadManager.cpp
+5 -3
View File
@@ -1,5 +1,5 @@
/*
* Copyright 2002-2009, Haiku Inc.
* Copyright 2002-2013, Haiku Inc.
* Distributed under the terms of the MIT License.
*
* Authors:
@@ -23,16 +23,18 @@
#include <mime/AppMetaMimeCreator.h>
#include <mime/database_support.h>
#include <mime/MimeSnifferAddonManager.h>
#include <mime/TextSnifferAddon.h>
#include "CreateAppMetaMimeThread.h"
#include "MessageDeliverer.h"
#include "MimeSnifferAddonManager.h"
#include "TextSnifferAddon.h"
#include "UpdateMimeInfoThread.h"
using namespace std;
using namespace BPrivate;
using BPrivate::Storage::Mime::MimeSnifferAddonManager;
using BPrivate::Storage::Mime::TextSnifferAddon;
/*! \class MIMEManager