aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/maildir
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/net/maildir/maildirServiceInfos.cpp64
-rw-r--r--src/net/maildir/maildirStore.cpp42
2 files changed, 71 insertions, 35 deletions
diff --git a/src/net/maildir/maildirServiceInfos.cpp b/src/net/maildir/maildirServiceInfos.cpp
new file mode 100644
index 00000000..f6487103
--- /dev/null
+++ b/src/net/maildir/maildirServiceInfos.cpp
@@ -0,0 +1,64 @@
+//
+// VMime library (http://www.vmime.org)
+// Copyright (C) 2002-2005 Vincent Richard <[email protected]>
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License as
+// published by the Free Software Foundation; either version 2 of
+// the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along along
+// with this program; if not, write to the Free Software Foundation, Inc., Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA..
+//
+
+#include "vmime/net/maildir/maildirServiceInfos.hpp"
+
+
+namespace vmime {
+namespace net {
+namespace maildir {
+
+
+maildirServiceInfos::maildirServiceInfos()
+{
+}
+
+
+const string maildirServiceInfos::getPropertyPrefix() const
+{
+ return "store.maildir.";
+}
+
+
+const maildirServiceInfos::props& maildirServiceInfos::getProperties() const
+{
+ static props maildirProps =
+ {
+ property(serviceInfos::property::SERVER_ROOTPATH, serviceInfos::property::FLAG_REQUIRED)
+ };
+
+ return maildirProps;
+}
+
+
+const std::vector <serviceInfos::property> maildirServiceInfos::getAvailableProperties() const
+{
+ std::vector <property> list;
+ const props& p = getProperties();
+
+ list.push_back(p.PROPERTY_SERVER_ROOTPATH);
+
+ return list;
+}
+
+
+} // maildir
+} // net
+} // vmime
+
diff --git a/src/net/maildir/maildirStore.cpp b/src/net/maildir/maildirStore.cpp
index bbb95624..d1baf8dd 100644
--- a/src/net/maildir/maildirStore.cpp
+++ b/src/net/maildir/maildirStore.cpp
@@ -29,9 +29,11 @@
// Helpers for service properties
#define GET_PROPERTY(type, prop) \
- (sm_infos.getPropertyValue <type>(getSession(), sm_infos.getProperties().prop))
+ (getInfos().getPropertyValue <type>(getSession(), \
+ dynamic_cast <const maildirServiceInfos&>(getInfos()).getProperties().prop))
#define HAS_PROPERTY(prop) \
- (sm_infos.hasProperty(getSession(), sm_infos.getProperties().prop))
+ (getInfos().hasProperty(getSession(), \
+ dynamic_cast <const maildirServiceInfos&>(getInfos()).getProperties().prop))
namespace vmime {
@@ -205,50 +207,20 @@ const int maildirStore::getCapabilities() const
-
// Service infos
-maildirStore::_infos maildirStore::sm_infos;
+maildirServiceInfos maildirStore::sm_infos;
const serviceInfos& maildirStore::getInfosInstance()
{
- return (sm_infos);
+ return sm_infos;
}
const serviceInfos& maildirStore::getInfos() const
{
- return (sm_infos);
-}
-
-
-const string maildirStore::_infos::getPropertyPrefix() const
-{
- return "store.maildir.";
-}
-
-
-const maildirStore::_infos::props& maildirStore::_infos::getProperties() const
-{
- static props p =
- {
- property(serviceInfos::property::SERVER_ROOTPATH, serviceInfos::property::FLAG_REQUIRED)
- };
-
- return p;
-}
-
-
-const std::vector <serviceInfos::property> maildirStore::_infos::getAvailableProperties() const
-{
- std::vector <property> list;
- const props& p = getProperties();
-
- // Maildir-specific properties
- list.push_back(p.PROPERTY_SERVER_ROOTPATH);
-
- return (list);
+ return sm_infos;
}