summaryrefslogtreecommitdiffstats
path: root/tdenetworkmanager/src/knetworkmanager-connection_store.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tdenetworkmanager/src/knetworkmanager-connection_store.cpp')
-rw-r--r--tdenetworkmanager/src/knetworkmanager-connection_store.cpp191
1 files changed, 0 insertions, 191 deletions
diff --git a/tdenetworkmanager/src/knetworkmanager-connection_store.cpp b/tdenetworkmanager/src/knetworkmanager-connection_store.cpp
deleted file mode 100644
index aeb3b60..0000000
--- a/tdenetworkmanager/src/knetworkmanager-connection_store.cpp
+++ /dev/null
@@ -1,191 +0,0 @@
-/***************************************************************************
- *
- * knetworkmanager-connection_store.h - A NetworkManager frontend for KDE
- *
- * Copyright (C) 2005, 2006 Novell, Inc.
- *
- * Author: Helmut Schaa <[email protected]>, <[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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- **************************************************************************/
-
-#include <tqtimer.h>
-#include <tquuid.h>
-#include <tqdbusobjectpath.h>
-
-#include <kstaticdeleter.h>
-#include <kapplication.h>
-#include <kdebug.h>
-
-#include "knetworkmanager-connection_store.h"
-#include "knetworkmanager-connection.h"
-#include "knetworkmanager-connection_setting.h"
-#include "knetworkmanager-connection_setting_info.h"
-#include "knetworkmanager-connection_setting_ipv4.h"
-#include "knetworkmanager-connection_setting_wired.h"
-#include "knetworkmanager-connection_setting_wireless.h"
-#include "knetworkmanager-connection_setting_wireless_security.h"
-
-using namespace ConnectionSettings;
-
-static KStaticDeleter<ConnectionStore> sd;
-
-ConnectionStore* ConnectionStore::_instance = NULL;
-
-ConnectionStore*
-ConnectionStore::getInstance()
-{
- if (_instance)
- return _instance;
- return sd.setObject(_instance, new ConnectionStore());
-}
-
-ConnectionStore::ConnectionStore()
- : _connectionList()
-{
- // defer the connection init a bit
- TQTimer::singleShot(0, this, TQT_SLOT(slotInit()));
-}
-
-ConnectionStore::~ConnectionStore()
-{
- for (TQValueList<Connection*>::Iterator it = _connectionList.begin(); it != _connectionList.end(); ++it)
- {
- delete (*it);
- *it = NULL;
- }
-}
-
-void
-ConnectionStore::slotInit()
-{
-
-}
-
-void
-ConnectionStore::slotSecretsNeeded(Connection* conn, ConnectionSetting* setting, const TQStringList& hints, bool request_new)
-{
- kdDebug() << "ConnectionStore::slotSecretsNeeded" << endl;
- emit SecretsNeeded(conn, setting, hints, request_new);
-}
-
-void
-ConnectionStore::addConnection(Connection* con)
-{
- if (_connectionList.find(con) != _connectionList.end())
- {
- con->slotUpdated();
- emit signalConnectionUpdated(con);
- return;
- }
-
- // check if the connection has an ID already
- if (con->getID().isEmpty())
- {
- // set unique id for this connection
- con->setID(createNewConnectionID());
- }
-
- // we own the connection now
- _connectionList.append(con);
-
- // let's get notified if the connection asks for new secrets
- connect(con, TQT_SIGNAL(SecretsNeeded(Connection*, ConnectionSetting*, const TQStringList&, bool)),
- this, TQT_SLOT(slotSecretsNeeded(Connection*, ConnectionSetting*, const TQStringList&, bool)));
-
- // new connection, ring ring
- emit signalConnectionAdded(con);
-}
-
-void
-ConnectionStore::removeConnection(Connection* con)
-{
- // check if the connection is != NULL
- if (!con)
- return;
-
- // remove the object from our list
- if (_connectionList.remove(con) == 0)
- return;
-
- // notify everybody about the removed connection
- emit signalConnectionRemoved(con);
-
- // delete the connection, it will deregister itself from NM
- con->slotAboutToBeRemoved();
- delete con;
-}
-
-Connection*
-ConnectionStore::getConnection(const TQString& obj_path)
-{
- // find a connection by obj_path
- TQValueList<Connection*>::Iterator it = _connectionList.begin();
- for (; it != _connectionList.end(); ++it)
- if (TQString((*it)->getObjectPath()) == obj_path)
- return (*it);
- return NULL;
-}
-
-TQValueList<Connection*>
-ConnectionStore::getConnections(const TQString& type)
-{
- // return a list of connection
- if (type.isEmpty())
- return _connectionList;
- else
- {
- TQValueList<Connection*> ret;
- for (TQValueList<Connection*>::Iterator it = _connectionList.begin(); it != _connectionList.end(); ++it)
- {
- if ( (*it)->getType() == type)
- ret.append(*it);
- }
- return ret;
- }
-}
-
-TQString
-ConnectionStore::createNewConnectionID()
-{
- bool unique;
- TQString id;
-
- do
- {
- unique = true;
-
- // 16 bytes of randomness should be enougth for getting a unique ID
- id = TQUuid::createUuid().toString();
- id = id.replace("{","");
- id = id.replace("}","");
-
- // nevertheless check if the id is used already
- TQValueList<Connection*>::Iterator it = _connectionList.begin();
- for (; it != _connectionList.end(); ++it)
- {
- if ((*it)->getID() == id)
- {
- unique = false;
- break;
- }
- }
- } while (unique == false);
-
- return id;
-}
-
-#include "knetworkmanager-connection_store.moc"