aboutsummaryrefslogtreecommitdiffstats
path: root/src/textPartFactory.hpp
diff options
context:
space:
mode:
authorVincent Richard <[email protected]>2004-12-26 20:23:29 +0000
committerVincent Richard <[email protected]>2004-12-26 20:23:29 +0000
commit4ce991d3b1bd97fbb896d17fb8f36f6650429a22 (patch)
tree2db6e072b862dd809d4acd8c571a1b859fdcb484 /src/textPartFactory.hpp
parentAllow creating a service from an URL. (diff)
downloadvmime-4ce991d3b1bd97fbb896d17fb8f36f6650429a22.tar.gz
vmime-4ce991d3b1bd97fbb896d17fb8f36f6650429a22.zip
Moved all header files to 'vmime/' directory.
Diffstat (limited to 'src/textPartFactory.hpp')
-rw-r--r--src/textPartFactory.hpp76
1 files changed, 0 insertions, 76 deletions
diff --git a/src/textPartFactory.hpp b/src/textPartFactory.hpp
deleted file mode 100644
index 2193f843..00000000
--- a/src/textPartFactory.hpp
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-// VMime library (http://vmime.sourceforge.net)
-// Copyright (C) 2002-2004 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 with this program; if not, write to the Free Software
-// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-//
-
-#ifndef VMIME_TEXTPARTFACTORY_HPP_INCLUDED
-#define VMIME_TEXTPARTFACTORY_HPP_INCLUDED
-
-
-#include "textPart.hpp"
-#include "mediaType.hpp"
-#include "utility/singleton.hpp"
-
-
-namespace vmime
-{
-
-
-class textPartFactory : public utility::singleton <textPartFactory>
-{
- friend class utility::singleton <textPartFactory>;
-
-protected:
-
- textPartFactory();
- ~textPartFactory();
-
- typedef textPart* (*AllocFunc)(void);
- typedef std::map <string, AllocFunc> NameMap;
-
- NameMap m_nameMap;
-
-#ifndef VMIME_BUILDING_DOC
- template <class TYPE>
- class registerer
- {
- public:
-
- static textPart* creator()
- {
- // Allocate a new object
- return new TYPE();
- }
- };
-#endif // VMIME_BUILDING_DOC
-
-public:
-
- template <class T>
- void registerType(const mediaType& type)
- {
- m_nameMap.insert(NameMap::value_type(type.generate(), &registerer<T>::creator));
- }
-
- textPart* create(const mediaType& type);
-};
-
-
-} // vmime
-
-
-#endif // VMIME_TEXTPARTFACTORY_HPP_INCLUDED