123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using Db4objects.Db4o;
- using OpenGrid.Framework.Data;
- using libsecondlife;
- namespace OpenGrid.Framework.Data.DB4o
- {
- class DB4oGridManager
- {
- public Dictionary<LLUUID, SimProfileData> simProfiles = new Dictionary<LLUUID, SimProfileData>();
- string dbfl;
- public DB4oGridManager(string db4odb)
- {
- dbfl = db4odb;
- IObjectContainer database;
- database = Db4oFactory.OpenFile(dbfl);
- IObjectSet result = database.Get(typeof(SimProfileData));
- foreach(SimProfileData row in result) {
- simProfiles.Add(row.UUID, row);
- }
- database.Close();
- }
- /// <summary>
- /// Adds a new profile to the database (Warning: Probably slow.)
- /// </summary>
- /// <param name="row">The profile to add</param>
- /// <returns>Successful?</returns>
- public bool AddRow(SimProfileData row)
- {
- if (simProfiles.ContainsKey(row.UUID))
- {
- simProfiles[row.UUID] = row;
- }
- else
- {
- simProfiles.Add(row.UUID, row);
- }
- try
- {
- IObjectContainer database;
- database = Db4oFactory.OpenFile(dbfl);
- database.Set(row);
- database.Close();
- return true;
- }
- catch (Exception e)
- {
- return false;
- }
- }
- }
- class DB4oUserManager
- {
- public Dictionary<LLUUID, UserProfileData> userProfiles = new Dictionary<LLUUID, UserProfileData>();
- string dbfl;
- public DB4oUserManager(string db4odb)
- {
- dbfl = db4odb;
- IObjectContainer database;
- database = Db4oFactory.OpenFile(dbfl);
- IObjectSet result = database.Get(typeof(UserProfileData));
- foreach (UserProfileData row in result)
- {
- userProfiles.Add(row.UUID, row);
- }
- database.Close();
- }
- /// <summary>
- /// Adds a new profile to the database (Warning: Probably slow.)
- /// </summary>
- /// <param name="row">The profile to add</param>
- /// <returns>Successful?</returns>
- public bool AddRow(UserProfileData row)
- {
- if (userProfiles.ContainsKey(row.UUID))
- {
- userProfiles[row.UUID] = row;
- }
- else
- {
- userProfiles.Add(row.UUID, row);
- }
- try
- {
- IObjectContainer database;
- database = Db4oFactory.OpenFile(dbfl);
- database.Set(row);
- database.Close();
- return true;
- }
- catch (Exception e)
- {
- return false;
- }
- }
- }
- }
|