All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Plugin.cpp
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file terralib/qt/plugins/datasource/mysql/Plugin.cpp
22 
23  \brief Plugin implementation for the MySQL data source widget.
24 */
25 
26 // TerraLib
27 #include "../../../../common/Config.h"
28 #include "../../../../common/Translator.h"
29 #include "../../../../common/Logger.h"
30 #include "../../../../dataaccess/datasource/DataSourceInfoManager.h"
31 #include "../../../widgets/datasource/core/DataSourceTypeManager.h"
32 #include "MySQLType.h"
33 #include "Plugin.h"
34 
36  : te::plugin::Plugin(pluginInfo)
37 {
38 }
39 
41 {
42 }
43 
45 {
46  if(m_initialized)
47  return;
48 
50 
51 // it initializes the Translator support for the TerraLib MySQL driver support
53 
54  TE_LOG_TRACE(TE_QT_PLUGIN_DATASOURCE_MYSQL("TerraLib Qt MySQL widget startup!"));
55 
56  m_initialized = true;
57 }
58 
60 {
61  if(!m_initialized)
62  return;
63 
64  te::da::DataSourceInfoManager::getInstance().removeByType("MYSQL");
66 
67  TE_LOG_TRACE(TE_QT_PLUGIN_DATASOURCE_MYSQL("TerraLib Qt MySQL widget shutdown!"));
68 
69  m_initialized = false;
70 }
71 
#define TE_LOG_TRACE(msg)
Use this tag in order to log a message to a specified logger with the TRACE level.
Definition: Logger.h:137
void startup()
Do nothing! Just set plugin as started.
Definition: Plugin.cpp:44
#define TE_QT_PLUGIN_DATASOURCE_MYSQL_TEXT_DOMAIN
It contains the name of the text domain used in the translation of messages in TerraLib MYSQL driver ...
Definition: Config.h:39
#define TE_QT_PLUGIN_DATASOURCE_MYSQL(message)
It marks a string in order to get translated. This is a special mark used in the DataAccess module of...
Definition: Config.h:53
MySQL data source type.
Plugin implementation for the MySQL data source widget.
#define PLUGIN_CALL_BACK_IMPL(PLUGIN_CLASS_NAME)
This macro should be used by C++ plugins in order to declare the exportable/callable DLL function...
Definition: Config.h:57
static DataSourceTypeManager & getInstance()
It returns a reference to the singleton instance.
#define TE_ADD_TEXT_DOMAIN(domain, domaindir, codeset)
It adds the given text domain located at domain-dir with the given codeset to the multilingual system...
Definition: Translator.h:310
Plugin(const te::plugin::PluginInfo &pluginInfo)
Definition: Plugin.cpp:35
void shutdown()
Do nothing! Just set plugin as stopped.
Definition: Plugin.cpp:59
The basic information about a plugin.
Definition: PluginInfo.h:61
~Plugin()
Virtual destructor.
Definition: Plugin.cpp:40
#define TE_QT_PLUGIN_DATASOURCE_MYSQL_TEXT_DOMAIN_DIR
It contains the translation catalog directory.
Definition: Config.h:46