* DB4o usermanager replacement coded for read-only attributes.
* IUserData interface needs expansion to cover all user/user-server related interactions.0.1-prestable
parent
4a155b08d7
commit
40eb8bc8b6
|
@ -57,12 +57,12 @@ namespace OpenGrid.Framework.Data.DB4o
|
|||
|
||||
}
|
||||
|
||||
class DB4oGridManager
|
||||
class DB4oUserManager
|
||||
{
|
||||
public Dictionary<LLUUID, UserProfileData> userProfiles = new Dictionary<LLUUID, UserProfileData>();
|
||||
string dbfl;
|
||||
|
||||
public DB4oGridManager(string db4odb)
|
||||
public DB4oUserManager(string db4odb)
|
||||
{
|
||||
dbfl = db4odb;
|
||||
IObjectContainer database;
|
||||
|
|
|
@ -8,34 +8,57 @@ namespace OpenGrid.Framework.Data.DB4o
|
|||
{
|
||||
public class DB4oUserData : IUserData
|
||||
{
|
||||
DB4oUserManager manager = new DB4oUserManager("userprofiles.yap");
|
||||
|
||||
public UserProfileData getUserByUUID(LLUUID uuid)
|
||||
{
|
||||
return new UserProfileData();
|
||||
if(manager.userProfiles.ContainsKey(uuid))
|
||||
return manager.userProfiles[uuid];
|
||||
return null;
|
||||
}
|
||||
|
||||
public UserProfileData getUserByName(string name)
|
||||
{
|
||||
return getUserByName(name.Split(',')[0], name.Split(',')[1]);
|
||||
return getUserByName(name.Split(' ')[0], name.Split(' ')[1]);
|
||||
}
|
||||
|
||||
public UserProfileData getUserByName(string fname, string lname)
|
||||
{
|
||||
return new UserProfileData();
|
||||
foreach (UserProfileData profile in manager.userProfiles.Values)
|
||||
{
|
||||
if (profile.username == fname && profile.surname == lname)
|
||||
return profile;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public UserAgentData getAgentByUUID(LLUUID uuid)
|
||||
{
|
||||
return new UserAgentData();
|
||||
try
|
||||
{
|
||||
return getUserByUUID(uuid).currentAgent;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public UserAgentData getAgentByName(string name)
|
||||
{
|
||||
return getAgentByName(name.Split(',')[0], name.Split(',')[1]);
|
||||
return getAgentByName(name.Split(' ')[0], name.Split(' ')[1]);
|
||||
}
|
||||
|
||||
public UserAgentData getAgentByName(string fname, string lname)
|
||||
{
|
||||
return new UserAgentData();
|
||||
try
|
||||
{
|
||||
return getUserByName(fname,lname).currentAgent;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public bool moneyTransferRequest(LLUUID from, LLUUID to, uint amount)
|
||||
|
|
|
@ -7,29 +7,30 @@ namespace OpenGrid.Framework.Data
|
|||
{
|
||||
public class UserProfileData
|
||||
{
|
||||
string username; // The configurable part of the users username
|
||||
string surname; // The users surname (can be used to indicate user class - eg 'Test User' or 'Test Admin')
|
||||
public LLUUID UUID;
|
||||
public string username; // The configurable part of the users username
|
||||
public string surname; // The users surname (can be used to indicate user class - eg 'Test User' or 'Test Admin')
|
||||
|
||||
string passwordHash; // Hash of the users password
|
||||
public string passwordHash; // Hash of the users password
|
||||
|
||||
ulong homeRegion; // RegionHandle of home
|
||||
LLVector3 homeLocation; // Home Location inside the sim
|
||||
public ulong homeRegion; // RegionHandle of home
|
||||
public LLVector3 homeLocation; // Home Location inside the sim
|
||||
|
||||
int created; // UNIX Epoch Timestamp (User Creation)
|
||||
int lastLogin; // UNIX Epoch Timestamp (Last Login Time)
|
||||
public int created; // UNIX Epoch Timestamp (User Creation)
|
||||
public int lastLogin; // UNIX Epoch Timestamp (Last Login Time)
|
||||
|
||||
string userInventoryURI; // URI to inventory server for this user
|
||||
string userAssetURI; // URI to asset server for this user
|
||||
public string userInventoryURI; // URI to inventory server for this user
|
||||
public string userAssetURI; // URI to asset server for this user
|
||||
|
||||
uint profileCanDoMask; // Profile window "I can do" mask
|
||||
uint profileWantDoMask; // Profile window "I want to" mask
|
||||
public uint profileCanDoMask; // Profile window "I can do" mask
|
||||
public uint profileWantDoMask; // Profile window "I want to" mask
|
||||
|
||||
string profileAboutText; // My about window text
|
||||
string profileFirstText; // First Life Text
|
||||
public string profileAboutText; // My about window text
|
||||
public string profileFirstText; // First Life Text
|
||||
|
||||
LLUUID profileImage; // My avatars profile image
|
||||
LLUUID profileFirstImage; // First-life image
|
||||
UserAgentData currentAgent; // The users last agent
|
||||
public LLUUID profileImage; // My avatars profile image
|
||||
public LLUUID profileFirstImage; // First-life image
|
||||
public UserAgentData currentAgent; // The users last agent
|
||||
}
|
||||
|
||||
public class UserAgentData
|
||||
|
|
Loading…
Reference in New Issue