Revision: 40775
http://brlcad.svn.sourceforge.net/brlcad/?rev=40775&view=rev
Author: davidloman
Date: 2010-09-29 06:49:30 +0000 (Wed, 29 Sep 2010)
Log Message:
-----------
Check in abit of SessionManager and AccountManage work.
Modified Paths:
--------------
rt^3/trunk/src/GS/Account.cxx
rt^3/trunk/src/GS/Account.h
rt^3/trunk/src/GS/AccountManager.cxx
rt^3/trunk/src/GS/AccountManager.h
rt^3/trunk/src/GS/Session.cxx
rt^3/trunk/src/GS/Session.h
rt^3/trunk/src/GS/SessionManager.cxx
rt^3/trunk/src/GS/SessionManager.h
Modified: rt^3/trunk/src/GS/Account.cxx
===================================================================
--- rt^3/trunk/src/GS/Account.cxx 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/Account.cxx 2010-09-29 06:49:30 UTC (rev 40775)
@@ -25,16 +25,15 @@
#include "Account.h"
-Account::Account()
-{
+Account::Account(QString uname, Portal* portal) :
+ uname(uname), portal(portal) {
}
-Account::~Account()
-{
+Account::~Account() {
}
-QString Account::getUname(){
- return this->uname;
+QString Account::getUname() {
+ return this->uname;
}
// Local Variables: ***
Modified: rt^3/trunk/src/GS/Account.h
===================================================================
--- rt^3/trunk/src/GS/Account.h 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/Account.h 2010-09-29 06:49:30 UTC (rev 40775)
@@ -26,19 +26,20 @@
#ifndef __ACCOUNT_H__
#define __ACCOUNT_H__
+#include "Portal.h"
#include <QtCore/QString>
class Account
{
public:
- Account();
+ Account(QString uname, Portal* portal);
virtual ~Account();
QString getUname();
private:
QString uname;
-
+ Portal* portal;
};
#endif /* __ACCOUNT_H__ */
Modified: rt^3/trunk/src/GS/AccountManager.cxx
===================================================================
--- rt^3/trunk/src/GS/AccountManager.cxx 2010-09-29 04:23:07 UTC (rev
40774)
+++ rt^3/trunk/src/GS/AccountManager.cxx 2010-09-29 06:49:30 UTC (rev
40775)
@@ -24,22 +24,26 @@
*/
#include "AccountManager.h"
+#include "SessionManager.h"
+
#include <cstdlib>
AccountManager* AccountManager::pInstance = NULL;
AccountManager::AccountManager()
{
+ this->accounts = new QList<Account*>();
}
AccountManager::~AccountManager()
{
+ delete this->accounts;
}
AccountManager* AccountManager::getInstance()
{
if (!AccountManager::pInstance) {
- pInstance = new AccountManager();
+ pInstance = new AccountManager();
}
return AccountManager::pInstance;
}
@@ -55,6 +59,25 @@
return false;
}
+Session* AccountManager::login(QString uname, QString passwd, Portal* p)
+{
+ quint32 id = this->validateLoginCreds(uname, passwd);
+
+ if (id <= 0) {
+ return NULL;
+ }
+
+ Account* acc = new Account(uname,p);
+
+ return SessionManager::getInstance()->newSession(acc);
+}
+
+bool
+AccountManager::handleNetMsg(NetMsg* msg)
+{
+
+}
+
// Local Variables: ***
// mode: C++ ***
// tab-width: 8 ***
Modified: rt^3/trunk/src/GS/AccountManager.h
===================================================================
--- rt^3/trunk/src/GS/AccountManager.h 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/AccountManager.h 2010-09-29 06:49:30 UTC (rev 40775)
@@ -26,20 +26,29 @@
#ifndef __ACCOUNTMANAGER_H__
#define __ACCOUNTMANAGER_H__
+#include "Session.h"
+#include "INetMsgHandler.h"
+
#include <QtCore/QString>
+#include <QtCore/QList>
-class AccountManager
+class AccountManager : public INetMsgHandler
{
public:
virtual ~AccountManager();
static AccountManager* getInstance();
- quint32 validateLoginCreds(QString uname, QString passwd);
+ Session* login(QString uname, QString passwd, Portal* p);
+ bool handleNetMsg(NetMsg* msg);
private:
static AccountManager* pInstance;
AccountManager();
+
+ QList<Account*>* accounts;
+ quint32 validateLoginCreds(QString uname, QString passwd);
+
};
#endif
Modified: rt^3/trunk/src/GS/Session.cxx
===================================================================
--- rt^3/trunk/src/GS/Session.cxx 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/Session.cxx 2010-09-29 06:49:30 UTC (rev 40775)
@@ -25,10 +25,10 @@
#include "Session.h"
-Session::Session(quint32 accountID)
+Session::Session(Account* a)
{
this->sessionID = QUuid::createUuid();
- this->accountID = accountID;
+ this->a = a;
}
Session::~Session()
@@ -41,9 +41,9 @@
return this->sessionID;
}
-quint32 Session::getAccountID()
+Account* Session::getAccount()
{
- return this->accountID;
+ return this->a;
}
// Local Variables: ***
Modified: rt^3/trunk/src/GS/Session.h
===================================================================
--- rt^3/trunk/src/GS/Session.h 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/Session.h 2010-09-29 06:49:30 UTC (rev 40775)
@@ -26,6 +26,7 @@
#ifndef __SESSION_H__
#define __SESSION_H__
+#include "Account.h"
#include <cstdlib>
#include <iostream>
#include <ios>
@@ -35,17 +36,18 @@
class Session
{
-
+friend class SessionManager;
public:
- Session(quint32 accountID);
virtual ~Session();
QUuid getSessionID();
- quint32 getAccountID();
+ Account* getAccount();
private:
+ Session(Account* a);
+
QUuid sessionID;
- quint32 accountID;
+ Account* a;
};
#endif
Modified: rt^3/trunk/src/GS/SessionManager.cxx
===================================================================
--- rt^3/trunk/src/GS/SessionManager.cxx 2010-09-29 04:23:07 UTC (rev
40774)
+++ rt^3/trunk/src/GS/SessionManager.cxx 2010-09-29 06:49:30 UTC (rev
40775)
@@ -42,19 +42,28 @@
SessionManager* SessionManager::getInstance()
{
if (!SessionManager::pInstance) {
- pInstance = new SessionManager();
+ pInstance = new SessionManager();
}
return SessionManager::pInstance;
}
-Session* SessionManager::newSession(quint32 accountID)
+Session*
+SessionManager::newSession(Account* a)
{
- Session* s = new Session(accountID);
+ Session* s = new Session(a);
+
+
return s;
}
+bool
+SessionManager::handleNetMsg(NetMsg* msg)
+{
+
+}
+
// Local Variables: ***
// mode: C++ ***
// tab-width: 8 ***
Modified: rt^3/trunk/src/GS/SessionManager.h
===================================================================
--- rt^3/trunk/src/GS/SessionManager.h 2010-09-29 04:23:07 UTC (rev 40774)
+++ rt^3/trunk/src/GS/SessionManager.h 2010-09-29 06:49:30 UTC (rev 40775)
@@ -27,20 +27,23 @@
#define __SESSIONMANAGER_H__
#include "Session.h"
-
+#include "INetMsgHandler.h"
#include <QtCore/QMap>
+#include <QtCore/QMutex>
-class SessionManager
+class SessionManager: public INetMsgHandler
{
public:
static SessionManager* getInstance();
virtual ~SessionManager();
+ Session* newSession(Account* a);
+ bool handleNetMsg(NetMsg* msg);
private:
static SessionManager* pInstance;
SessionManager();
- Session* newSession(quint32 accountID);
+ QMutex sesIDMapLock;
QMap<quint32, Session*>* sessionIdMap;
};
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits