From dc197856727c06b0b06488ab839409831af84865 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Sun, 14 Feb 2010 16:57:02 -0800
Subject: Added UserAccount, Avatar and Authentication to Data.Null, so that
OpenSim can run out-of-the-box. #WaitingForSQLite
---
OpenSim/Data/SQLite/SQLiteInventoryStore.cs | 67 +++++++++++++++++------------
1 file changed, 39 insertions(+), 28 deletions(-)
(limited to 'OpenSim/Data/SQLite')
diff --git a/OpenSim/Data/SQLite/SQLiteInventoryStore.cs b/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
index 64591fd..c058bc7 100644
--- a/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
+++ b/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
@@ -46,10 +46,12 @@ namespace OpenSim.Data.SQLite
private const string invItemsSelect = "select * from inventoryitems";
private const string invFoldersSelect = "select * from inventoryfolders";
- private SqliteConnection conn;
- private DataSet ds;
- private SqliteDataAdapter invItemsDa;
- private SqliteDataAdapter invFoldersDa;
+ private static SqliteConnection conn;
+ private static DataSet ds;
+ private static SqliteDataAdapter invItemsDa;
+ private static SqliteDataAdapter invFoldersDa;
+
+ private static bool m_Initialized = false;
public void Initialise()
{
@@ -67,39 +69,44 @@ namespace OpenSim.Data.SQLite
/// connect string
public void Initialise(string dbconnect)
{
- if (dbconnect == string.Empty)
+ if (!m_Initialized)
{
- dbconnect = "URI=file:inventoryStore.db,version=3";
- }
- m_log.Info("[INVENTORY DB]: Sqlite - connecting: " + dbconnect);
- conn = new SqliteConnection(dbconnect);
+ m_Initialized = true;
+
+ if (dbconnect == string.Empty)
+ {
+ dbconnect = "URI=file:inventoryStore.db,version=3";
+ }
+ m_log.Info("[INVENTORY DB]: Sqlite - connecting: " + dbconnect);
+ conn = new SqliteConnection(dbconnect);
- conn.Open();
+ conn.Open();
- Assembly assem = GetType().Assembly;
- Migration m = new Migration(conn, assem, "InventoryStore");
- m.Update();
+ Assembly assem = GetType().Assembly;
+ Migration m = new Migration(conn, assem, "InventoryStore");
+ m.Update();
- SqliteCommand itemsSelectCmd = new SqliteCommand(invItemsSelect, conn);
- invItemsDa = new SqliteDataAdapter(itemsSelectCmd);
- // SqliteCommandBuilder primCb = new SqliteCommandBuilder(primDa);
+ SqliteCommand itemsSelectCmd = new SqliteCommand(invItemsSelect, conn);
+ invItemsDa = new SqliteDataAdapter(itemsSelectCmd);
+ // SqliteCommandBuilder primCb = new SqliteCommandBuilder(primDa);
- SqliteCommand foldersSelectCmd = new SqliteCommand(invFoldersSelect, conn);
- invFoldersDa = new SqliteDataAdapter(foldersSelectCmd);
+ SqliteCommand foldersSelectCmd = new SqliteCommand(invFoldersSelect, conn);
+ invFoldersDa = new SqliteDataAdapter(foldersSelectCmd);
- ds = new DataSet();
+ ds = new DataSet();
- ds.Tables.Add(createInventoryFoldersTable());
- invFoldersDa.Fill(ds.Tables["inventoryfolders"]);
- setupFoldersCommands(invFoldersDa, conn);
- m_log.Info("[INVENTORY DB]: Populated Inventory Folders Definitions");
+ ds.Tables.Add(createInventoryFoldersTable());
+ invFoldersDa.Fill(ds.Tables["inventoryfolders"]);
+ setupFoldersCommands(invFoldersDa, conn);
+ m_log.Info("[INVENTORY DB]: Populated Inventory Folders Definitions");
- ds.Tables.Add(createInventoryItemsTable());
- invItemsDa.Fill(ds.Tables["inventoryitems"]);
- setupItemsCommands(invItemsDa, conn);
- m_log.Info("[INVENTORY DB]: Populated Inventory Items Definitions");
+ ds.Tables.Add(createInventoryItemsTable());
+ invItemsDa.Fill(ds.Tables["inventoryitems"]);
+ setupItemsCommands(invItemsDa, conn);
+ m_log.Info("[INVENTORY DB]: Populated Inventory Items Definitions");
- ds.AcceptChanges();
+ ds.AcceptChanges();
+ }
}
///
@@ -384,7 +391,9 @@ namespace OpenSim.Data.SQLite
List folders = new List();
DataTable inventoryFolderTable = ds.Tables["inventoryfolders"];
string selectExp = "agentID = '" + user + "' AND parentID = '" + UUID.Zero + "'";
+ m_log.DebugFormat("XXX selectExp = {0}", selectExp);
DataRow[] rows = inventoryFolderTable.Select(selectExp);
+ m_log.DebugFormat("XXX rows: {0}", rows.Length);
foreach (DataRow row in rows)
{
folders.Add(buildFolder(row));
@@ -397,9 +406,11 @@ namespace OpenSim.Data.SQLite
// suitably refactor.
if (folders.Count > 0)
{
+ m_log.DebugFormat("XXX Found root folder");
return folders[0];
}
+ m_log.DebugFormat("XXX Root folder for {0} not found", user);
return null;
}
}
--
cgit v1.1