diff options
author | Tleiades Hax | 2007-10-13 12:35:37 +0000 |
---|---|---|
committer | Tleiades Hax | 2007-10-13 12:35:37 +0000 |
commit | 5a1e896edcb3e5e8341e9d3fb5b3e323c7ec3210 (patch) | |
tree | e2b1b30f60fe91d5b578d39f816925fdc791bae3 /OpenSim | |
parent | Added capbility to use MySQL as the database backend in stand alone mode for ... (diff) | |
download | opensim-SC_OLD-5a1e896edcb3e5e8341e9d3fb5b3e323c7ec3210.zip opensim-SC_OLD-5a1e896edcb3e5e8341e9d3fb5b3e323c7ec3210.tar.gz opensim-SC_OLD-5a1e896edcb3e5e8341e9d3fb5b3e323c7ec3210.tar.bz2 opensim-SC_OLD-5a1e896edcb3e5e8341e9d3fb5b3e323c7ec3210.tar.xz |
OpenSimMain now respects the asset_plugin paramter, and storing of assets will *not* throw an exception
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Framework/Data.MySQL/MySQLAssetData.cs | 23 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MySQL/Resources/CreateAssetsTable.sql | 4 | ||||
-rw-r--r-- | OpenSim/Region/Application/OpenSimMain.cs | 5 |
3 files changed, 26 insertions, 6 deletions
diff --git a/OpenSim/Framework/Data.MySQL/MySQLAssetData.cs b/OpenSim/Framework/Data.MySQL/MySQLAssetData.cs index 70e04b6..79f87e0 100644 --- a/OpenSim/Framework/Data.MySQL/MySQLAssetData.cs +++ b/OpenSim/Framework/Data.MySQL/MySQLAssetData.cs | |||
@@ -40,9 +40,28 @@ namespace OpenSim.Framework.Data.MySQL | |||
40 | 40 | ||
41 | } | 41 | } |
42 | 42 | ||
43 | public AssetBase FetchAsset(LLUUID uuid) | 43 | public AssetBase FetchAsset(LLUUID assetID) |
44 | { | 44 | { |
45 | throw new Exception("The method or operation is not implemented."); | 45 | AssetBase asset = null; |
46 | |||
47 | MySqlCommand cmd = new MySqlCommand("SELECT name, description, assetType, invType, local, temporary, data FROM assets WHERE id=?id", _dbConnection.Connection); | ||
48 | MySqlParameter p = cmd.Parameters.Add("?id", MySqlDbType.Binary, 16); | ||
49 | p.Value = assetID.GetBytes(); | ||
50 | using (MySqlDataReader dbReader = cmd.ExecuteReader(System.Data.CommandBehavior.SingleRow)) | ||
51 | { | ||
52 | if (dbReader.Read()) | ||
53 | { | ||
54 | asset = new AssetBase(); | ||
55 | asset.Data = (byte[])dbReader["data"]; | ||
56 | asset.Description = (string)dbReader["description"]; | ||
57 | asset.FullID = assetID; | ||
58 | asset.InvType = (sbyte)dbReader["invType"]; | ||
59 | asset.Local = ((sbyte)dbReader["local"]) != 0 ? true : false; | ||
60 | asset.Name = (string)dbReader["name"]; | ||
61 | asset.Type = (sbyte)dbReader["assetType"]; | ||
62 | } | ||
63 | } | ||
64 | return asset; | ||
46 | } | 65 | } |
47 | 66 | ||
48 | public void CreateAsset(AssetBase asset) | 67 | public void CreateAsset(AssetBase asset) |
diff --git a/OpenSim/Framework/Data.MySQL/Resources/CreateAssetsTable.sql b/OpenSim/Framework/Data.MySQL/Resources/CreateAssetsTable.sql index 049a3a2..b9c1b97 100644 --- a/OpenSim/Framework/Data.MySQL/Resources/CreateAssetsTable.sql +++ b/OpenSim/Framework/Data.MySQL/Resources/CreateAssetsTable.sql | |||
@@ -2,8 +2,8 @@ CREATE TABLE `assets` ( | |||
2 | `id` binary(16) NOT NULL, | 2 | `id` binary(16) NOT NULL, |
3 | `name` varchar(64) NOT NULL, | 3 | `name` varchar(64) NOT NULL, |
4 | `description` varchar(64) NOT NULL, | 4 | `description` varchar(64) NOT NULL, |
5 | `assetType` smallint(5) unsigned NOT NULL, | 5 | `assetType` tinyint(4) NOT NULL, |
6 | `invType` smallint(5) unsigned NOT NULL, | 6 | `invType` tinyint(4) NOT NULL, |
7 | `local` tinyint(1) NOT NULL, | 7 | `local` tinyint(1) NOT NULL, |
8 | `temporary` tinyint(1) NOT NULL, | 8 | `temporary` tinyint(1) NOT NULL, |
9 | `data` longblob NOT NULL, | 9 | `data` longblob NOT NULL, |
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index 20152d8..2187e42 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -79,6 +79,7 @@ namespace OpenSim | |||
79 | private bool standaloneAuthenticate = false; | 79 | private bool standaloneAuthenticate = false; |
80 | private string standaloneWelcomeMessage = null; | 80 | private string standaloneWelcomeMessage = null; |
81 | private string standaloneInventoryPlugin = "OpenSim.Framework.Data.SQLite.dll"; | 81 | private string standaloneInventoryPlugin = "OpenSim.Framework.Data.SQLite.dll"; |
82 | private string standaloneAssetPlugin = "OpenSim.Framework.Data.SQLite.dll"; | ||
82 | private string standaloneUserPlugin = "OpenSim.Framework.Data.DB4o.dll"; | 83 | private string standaloneUserPlugin = "OpenSim.Framework.Data.DB4o.dll"; |
83 | 84 | ||
84 | private string m_assetStorage = "db4o"; | 85 | private string m_assetStorage = "db4o"; |
@@ -132,7 +133,7 @@ namespace OpenSim | |||
132 | standaloneWelcomeMessage = configSource.Configs["StandAlone"].GetString("welcome_message", "Welcome to OpenSim"); | 133 | standaloneWelcomeMessage = configSource.Configs["StandAlone"].GetString("welcome_message", "Welcome to OpenSim"); |
133 | standaloneInventoryPlugin = configSource.Configs["StandAlone"].GetString("inventory_plugin", "OpenSim.Framework.Data.SQLite.dll"); | 134 | standaloneInventoryPlugin = configSource.Configs["StandAlone"].GetString("inventory_plugin", "OpenSim.Framework.Data.SQLite.dll"); |
134 | standaloneUserPlugin = configSource.Configs["StandAlone"].GetString("userDatabase_plugin", "OpenSim.Framework.Data.DB4o.dll"); | 135 | standaloneUserPlugin = configSource.Configs["StandAlone"].GetString("userDatabase_plugin", "OpenSim.Framework.Data.DB4o.dll"); |
135 | 136 | standaloneAssetPlugin = configSource.Configs["StandAlone"].GetString("asset_plugin", "OpenSim.Framework.Data.SQLite.dll"); | |
136 | m_networkServersInfo.loadFromConfiguration(configSource); | 137 | m_networkServersInfo.loadFromConfiguration(configSource); |
137 | } | 138 | } |
138 | 139 | ||
@@ -283,7 +284,7 @@ namespace OpenSim | |||
283 | } | 284 | } |
284 | else | 285 | else |
285 | { | 286 | { |
286 | assetServer = new SQLAssetServer("OpenSim.Framework.Data.SQLite.dll"); | 287 | assetServer = new SQLAssetServer(standaloneAssetPlugin); |
287 | } | 288 | } |
288 | assetServer.SetServerInfo(m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); | 289 | assetServer.SetServerInfo(m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); |
289 | m_assetCache = new AssetCache(assetServer); | 290 | m_assetCache = new AssetCache(assetServer); |