Changeset 5915 for branches/newapi
- Timestamp:
- 12/02/07 20:58:20 (12 months ago)
- Location:
- branches/newapi/licq/src
- Files:
-
- 5 modified
-
daemon.cpp (modified) (2 diffs)
-
main.cpp (modified) (2 diffs)
-
plugin/pluginmanager.h (modified) (1 diff)
-
plugin/pluginmanagerimpl.cpp (modified) (4 diffs)
-
plugin/pluginmanagerimpl.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/newapi/licq/src/daemon.cpp
r5911 r5915 176 176 if (vm.count("plugin")) 177 177 { 178 PluginManager* pluginManager = PluginManager::getInstance(); 179 178 180 std::vector<std::string> 179 181 plugins = vm["plugin"].as< std::vector<std::string> >(); … … 181 183 it != plugins.end(); ++it) 182 184 { 183 /* 184 Licq::Plugin::Id 185 id = myPluginManager->loadPlugin(*it, myLogDistributor, 0, NULL); 185 Licq::Plugin::Id id = pluginManager->loadPlugin(*it, 0, NULL); 186 186 myLog.debug(tr("Loaded plugin %1% with id %2%") % *it % id); 187 */188 187 } 189 188 } -
branches/newapi/licq/src/main.cpp
r5910 r5915 10 10 #include "licq/exception/exception.h" 11 11 #include "licq/exception/invalidargumentexception.h" 12 #include "plugin/pluginmanager.h" 12 13 #include "util/log.h" 13 14 #include "util/logdistributor.h" … … 64 65 if (!isatty(STDERR_FILENO)) 65 66 streamLogSink.setUseColors(false); 67 68 // Configure PluginManager 69 LicqDaemon::PluginManager::getInstance()->setPluginLogSink(&logDistributor); 66 70 67 71 // Fail if argv[0] isn't set -
branches/newapi/licq/src/plugin/pluginmanager.h
r5909 r5915 49 49 static PluginManager* getInstance(); 50 50 51 virtual void setPluginLogSink(Licq::LogSink* sink) = 0; 52 51 53 virtual void getPluginInformation( 52 54 std::vector< boost::shared_ptr<const Licq::Plugin::Information> >* info) = 0; 53 55 54 56 virtual Licq::Plugin::Id 55 loadPlugin(const std::string& filename, 56 Licq::LogSink& sink, 57 int argc, char** argv) = 0; 57 loadPlugin(const std::string& filename, int argc, char** argv) = 0; 58 58 59 59 virtual PluginCache* getPluginCache() const = 0; -
branches/newapi/licq/src/plugin/pluginmanagerimpl.cpp
r5797 r5915 23 23 24 24 LicqDaemon::PluginManagerImpl::PluginManagerImpl(PluginCache& cache) 25 : myCache(cache) 25 : myCache(cache), 26 myPluginLogSink(NULL) 26 27 { 27 28 // Empty … … 31 32 { 32 33 // Empty 34 } 35 36 void LicqDaemon::PluginManagerImpl::setPluginLogSink(Licq::LogSink* sink) 37 { 38 assert(myPluginLogSink == NULL); 39 myPluginLogSink = sink; 33 40 } 34 41 … … 45 52 46 53 Licq::Plugin::Id LicqDaemon::PluginManagerImpl:: 47 loadPlugin(const std::string& filename, 48 Licq::LogSink& sink, 49 int argc, char** argv) 54 loadPlugin(const std::string& filename, int argc, char** argv) 50 55 { 56 assert(myPluginLogSink != NULL); 57 51 58 const size_t index = myCache.getIndex(filename); 52 59 … … 57 64 58 65 boost::shared_ptr<PluginInstance> 59 instance(new PluginInstanceImpl(info, lib, sink));66 instance(new PluginInstanceImpl(info, lib, *myPluginLogSink)); 60 67 61 68 Licq::Plugin::Id id = instance->load(argc, argv); -
branches/newapi/licq/src/plugin/pluginmanagerimpl.h
r5909 r5915 40 40 ~PluginManagerImpl(); 41 41 42 /** 43 * Set the LogSink that plugins will log to. This must have been 44 * called before the first call to loadPlugin(). 45 */ 46 void setPluginLogSink(Licq::LogSink* sink); 47 42 48 void getPluginInformation( 43 49 std::vector< boost::shared_ptr<const Licq::Plugin::Information> >* info); 44 50 45 Licq::Plugin::Id loadPlugin(const std::string& filename, 46 Licq::LogSink& sink, 47 int argc, char** argv); 51 Licq::Plugin::Id 52 loadPlugin(const std::string& filename, int argc, char** argv); 48 53 49 54 /** … … 54 59 private: 55 60 PluginCache& myCache; 61 Licq::LogSink* myPluginLogSink; 56 62 57 63 typedef std::map<Licq::Plugin::Id,
