diff options
Diffstat (limited to 'OpenSim/Framework/Data.MSSQL')
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLAssetData.cs | 59 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLGridData.cs | 46 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLInventoryData.cs | 163 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLLogData.cs | 13 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLManager.cs | 261 | ||||
-rw-r--r-- | OpenSim/Framework/Data.MSSQL/MSSQLUserData.cs | 142 |
6 files changed, 343 insertions, 341 deletions
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLAssetData.cs b/OpenSim/Framework/Data.MSSQL/MSSQLAssetData.cs index cc0422c..08fbef0 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLAssetData.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLAssetData.cs | |||
@@ -27,18 +27,18 @@ | |||
27 | */ | 27 | */ |
28 | 28 | ||
29 | using System; | 29 | using System; |
30 | using System.Data; | ||
31 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
31 | using System.Data; | ||
32 | using System.Data.SqlClient; | 32 | using System.Data.SqlClient; |
33 | |||
34 | using libsecondlife; | 33 | using libsecondlife; |
35 | using OpenSim.Framework.Console; | 34 | using OpenSim.Framework.Console; |
36 | 35 | ||
37 | namespace OpenSim.Framework.Data.MSSQL | 36 | namespace OpenSim.Framework.Data.MSSQL |
38 | { | 37 | { |
39 | class MSSQLAssetData : IAssetProvider | 38 | internal class MSSQLAssetData : IAssetProvider |
40 | { | 39 | { |
41 | MSSQLManager database; | 40 | private MSSQLManager database; |
41 | |||
42 | #region IAssetProvider Members | 42 | #region IAssetProvider Members |
43 | 43 | ||
44 | private void UpgradeAssetsTable(string tableName) | 44 | private void UpgradeAssetsTable(string tableName) |
@@ -46,7 +46,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
46 | // null as the version, indicates that the table didn't exist | 46 | // null as the version, indicates that the table didn't exist |
47 | if (tableName == null) | 47 | if (tableName == null) |
48 | { | 48 | { |
49 | MainLog.Instance.Notice("ASSETS", "Creating new database tables"); | 49 | MainLog.Instance.Notice("ASSETS", "Creating new database tables"); |
50 | database.ExecuteResourceSql("CreateAssetsTable.sql"); | 50 | database.ExecuteResourceSql("CreateAssetsTable.sql"); |
51 | return; | 51 | return; |
52 | } | 52 | } |
@@ -57,14 +57,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
57 | /// </summary> | 57 | /// </summary> |
58 | private void TestTables() | 58 | private void TestTables() |
59 | { | 59 | { |
60 | |||
61 | Dictionary<string, string> tableList = new Dictionary<string, string>(); | 60 | Dictionary<string, string> tableList = new Dictionary<string, string>(); |
62 | 61 | ||
63 | tableList["assets"] = null; | 62 | tableList["assets"] = null; |
64 | database.GetTableVersion(tableList); | 63 | database.GetTableVersion(tableList); |
65 | 64 | ||
66 | UpgradeAssetsTable(tableList["assets"]); | 65 | UpgradeAssetsTable(tableList["assets"]); |
67 | |||
68 | } | 66 | } |
69 | 67 | ||
70 | public AssetBase FetchAsset(LLUUID assetID) | 68 | public AssetBase FetchAsset(LLUUID assetID) |
@@ -80,30 +78,27 @@ namespace OpenSim.Framework.Data.MSSQL | |||
80 | asset = database.getAssetRow(reader); | 78 | asset = database.getAssetRow(reader); |
81 | reader.Close(); | 79 | reader.Close(); |
82 | result.Dispose(); | 80 | result.Dispose(); |
83 | 81 | ||
84 | return asset; | 82 | return asset; |
85 | } | 83 | } |
86 | 84 | ||
87 | public void CreateAsset(AssetBase asset) | 85 | public void CreateAsset(AssetBase asset) |
88 | { | 86 | { |
89 | 87 | if (ExistsAsset((LLUUID) asset.FullID)) | |
90 | if (ExistsAsset((LLUUID)asset.FullID)) | ||
91 | { | 88 | { |
92 | return; | 89 | return; |
93 | } | 90 | } |
94 | 91 | ||
95 | 92 | ||
96 | |||
97 | SqlCommand cmd = | 93 | SqlCommand cmd = |
98 | new SqlCommand( | 94 | new SqlCommand( |
99 | "INSERT INTO assets ([id], [name], [description], [assetType], [invType], [local], [temporary], [data])"+ | 95 | "INSERT INTO assets ([id], [name], [description], [assetType], [invType], [local], [temporary], [data])" + |
100 | " VALUES "+ | 96 | " VALUES " + |
101 | "(@id, @name, @description, @assetType, @invType, @local, @temporary, @data)", | 97 | "(@id, @name, @description, @assetType, @invType, @local, @temporary, @data)", |
102 | database.getConnection()); | 98 | database.getConnection()); |
103 | 99 | ||
104 | using (cmd) | 100 | using (cmd) |
105 | { | 101 | { |
106 | |||
107 | //SqlParameter p = cmd.Parameters.Add("id", SqlDbType.NVarChar); | 102 | //SqlParameter p = cmd.Parameters.Add("id", SqlDbType.NVarChar); |
108 | //p.Value = asset.FullID.ToString(); | 103 | //p.Value = asset.FullID.ToString(); |
109 | cmd.Parameters.AddWithValue("id", asset.FullID.ToString()); | 104 | cmd.Parameters.AddWithValue("id", asset.FullID.ToString()); |
@@ -127,24 +122,23 @@ namespace OpenSim.Framework.Data.MSSQL | |||
127 | { | 122 | { |
128 | throw; | 123 | throw; |
129 | } | 124 | } |
130 | 125 | ||
131 | cmd.Dispose(); | 126 | cmd.Dispose(); |
132 | } | 127 | } |
133 | |||
134 | } | 128 | } |
135 | 129 | ||
136 | 130 | ||
137 | public void UpdateAsset(AssetBase asset) | 131 | public void UpdateAsset(AssetBase asset) |
138 | { | 132 | { |
139 | SqlCommand command = new SqlCommand("UPDATE assets set id = @id, " + | 133 | SqlCommand command = new SqlCommand("UPDATE assets set id = @id, " + |
140 | "name = @name, " + | 134 | "name = @name, " + |
141 | "description = @description," + | 135 | "description = @description," + |
142 | "assetType = @assetType," + | 136 | "assetType = @assetType," + |
143 | "invType = @invType," + | 137 | "invType = @invType," + |
144 | "local = @local,"+ | 138 | "local = @local," + |
145 | "temporary = @temporary," + | 139 | "temporary = @temporary," + |
146 | "data = @data where " + | 140 | "data = @data where " + |
147 | "id = @keyId;", database.getConnection()); | 141 | "id = @keyId;", database.getConnection()); |
148 | SqlParameter param1 = new SqlParameter("@id", asset.FullID.ToString()); | 142 | SqlParameter param1 = new SqlParameter("@id", asset.FullID.ToString()); |
149 | SqlParameter param2 = new SqlParameter("@name", asset.Name); | 143 | SqlParameter param2 = new SqlParameter("@name", asset.Name); |
150 | SqlParameter param3 = new SqlParameter("@description", asset.Description); | 144 | SqlParameter param3 = new SqlParameter("@description", asset.Description); |
@@ -172,12 +166,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
172 | { | 166 | { |
173 | MainLog.Instance.Error(e.ToString()); | 167 | MainLog.Instance.Error(e.ToString()); |
174 | } | 168 | } |
175 | |||
176 | } | 169 | } |
177 | 170 | ||
178 | public bool ExistsAsset(LLUUID uuid) | 171 | public bool ExistsAsset(LLUUID uuid) |
179 | { | 172 | { |
180 | if (FetchAsset(uuid) != null) { | 173 | if (FetchAsset(uuid) != null) |
174 | { | ||
181 | return true; | 175 | return true; |
182 | } | 176 | } |
183 | return false; | 177 | return false; |
@@ -194,11 +188,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
194 | 188 | ||
195 | #region IPlugin Members | 189 | #region IPlugin Members |
196 | 190 | ||
197 | |||
198 | |||
199 | public void Initialise() | 191 | public void Initialise() |
200 | { | 192 | { |
201 | |||
202 | IniFile GridDataMySqlFile = new IniFile("mssql_connection.ini"); | 193 | IniFile GridDataMySqlFile = new IniFile("mssql_connection.ini"); |
203 | string settingDataSource = GridDataMySqlFile.ParseFileReadValue("data_source"); | 194 | string settingDataSource = GridDataMySqlFile.ParseFileReadValue("data_source"); |
204 | string settingInitialCatalog = GridDataMySqlFile.ParseFileReadValue("initial_catalog"); | 195 | string settingInitialCatalog = GridDataMySqlFile.ParseFileReadValue("initial_catalog"); |
@@ -206,7 +197,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
206 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); | 197 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); |
207 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); | 198 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); |
208 | 199 | ||
209 | this.database = new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, settingPassword); | 200 | database = |
201 | new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, | ||
202 | settingPassword); | ||
210 | 203 | ||
211 | TestTables(); | 204 | TestTables(); |
212 | } | 205 | } |
@@ -214,7 +207,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
214 | public string Version | 207 | public string Version |
215 | { | 208 | { |
216 | // get { return database.getVersion(); } | 209 | // get { return database.getVersion(); } |
217 | get { return database.getVersion(); } | 210 | get { return database.getVersion(); } |
218 | } | 211 | } |
219 | 212 | ||
220 | public string Name | 213 | public string Name |
@@ -224,4 +217,4 @@ namespace OpenSim.Framework.Data.MSSQL | |||
224 | 217 | ||
225 | #endregion | 218 | #endregion |
226 | } | 219 | } |
227 | } | 220 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLGridData.cs b/OpenSim/Framework/Data.MSSQL/MSSQLGridData.cs index 72db568..7d228e6 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLGridData.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLGridData.cs | |||
@@ -57,8 +57,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
57 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); | 57 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); |
58 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); | 58 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); |
59 | 59 | ||
60 | database = new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, settingPassword); | 60 | database = |
61 | 61 | new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, | |
62 | settingPassword); | ||
62 | } | 63 | } |
63 | 64 | ||
64 | /// <summary> | 65 | /// <summary> |
@@ -120,14 +121,13 @@ namespace OpenSim.Framework.Data.MSSQL | |||
120 | result.Dispose(); | 121 | result.Dispose(); |
121 | 122 | ||
122 | return row; | 123 | return row; |
123 | |||
124 | } | 124 | } |
125 | catch (Exception) | 125 | catch (Exception) |
126 | { | 126 | { |
127 | if (reader != null) { | 127 | if (reader != null) |
128 | { | ||
128 | reader.Close(); | 129 | reader.Close(); |
129 | } | 130 | } |
130 | |||
131 | } | 131 | } |
132 | return null; | 132 | return null; |
133 | } | 133 | } |
@@ -135,7 +135,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
135 | /// <summary> | 135 | /// <summary> |
136 | /// // Returns a list of avatar and UUIDs that match the query | 136 | /// // Returns a list of avatar and UUIDs that match the query |
137 | /// </summary> | 137 | /// </summary> |
138 | |||
139 | public List<AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query) | 138 | public List<AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query) |
140 | { | 139 | { |
141 | List<AvatarPickerAvatar> returnlist = new List<AvatarPickerAvatar>(); | 140 | List<AvatarPickerAvatar> returnlist = new List<AvatarPickerAvatar>(); |
@@ -152,18 +151,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
152 | param["second"] = querysplit[1]; | 151 | param["second"] = querysplit[1]; |
153 | 152 | ||
154 | IDbCommand result = | 153 | IDbCommand result = |
155 | database.Query("SELECT UUID,username,surname FROM users WHERE username = @first AND lastname = @second", param); | 154 | database.Query( |
155 | "SELECT UUID,username,surname FROM users WHERE username = @first AND lastname = @second", | ||
156 | param); | ||
156 | IDataReader reader = result.ExecuteReader(); | 157 | IDataReader reader = result.ExecuteReader(); |
157 | 158 | ||
158 | 159 | ||
159 | while (reader.Read()) | 160 | while (reader.Read()) |
160 | { | 161 | { |
161 | AvatarPickerAvatar user = new AvatarPickerAvatar(); | 162 | AvatarPickerAvatar user = new AvatarPickerAvatar(); |
162 | user.AvatarID = new LLUUID((string)reader["UUID"]); | 163 | user.AvatarID = new LLUUID((string) reader["UUID"]); |
163 | user.firstName = (string)reader["username"]; | 164 | user.firstName = (string) reader["username"]; |
164 | user.lastName = (string)reader["surname"]; | 165 | user.lastName = (string) reader["surname"]; |
165 | returnlist.Add(user); | 166 | returnlist.Add(user); |
166 | |||
167 | } | 167 | } |
168 | reader.Close(); | 168 | reader.Close(); |
169 | result.Dispose(); | 169 | result.Dispose(); |
@@ -175,13 +175,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
175 | MainLog.Instance.Error(e.ToString()); | 175 | MainLog.Instance.Error(e.ToString()); |
176 | return returnlist; | 176 | return returnlist; |
177 | } | 177 | } |
178 | |||
179 | |||
180 | |||
181 | } | 178 | } |
182 | else if (querysplit.Length == 1) | 179 | else if (querysplit.Length == 1) |
183 | { | 180 | { |
184 | |||
185 | try | 181 | try |
186 | { | 182 | { |
187 | lock (database) | 183 | lock (database) |
@@ -191,18 +187,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
191 | param["second"] = querysplit[1]; | 187 | param["second"] = querysplit[1]; |
192 | 188 | ||
193 | IDbCommand result = | 189 | IDbCommand result = |
194 | database.Query("SELECT UUID,username,surname FROM users WHERE username = @first OR lastname = @second", param); | 190 | database.Query( |
191 | "SELECT UUID,username,surname FROM users WHERE username = @first OR lastname = @second", | ||
192 | param); | ||
195 | IDataReader reader = result.ExecuteReader(); | 193 | IDataReader reader = result.ExecuteReader(); |
196 | 194 | ||
197 | 195 | ||
198 | while (reader.Read()) | 196 | while (reader.Read()) |
199 | { | 197 | { |
200 | AvatarPickerAvatar user = new AvatarPickerAvatar(); | 198 | AvatarPickerAvatar user = new AvatarPickerAvatar(); |
201 | user.AvatarID = new LLUUID((string)reader["UUID"]); | 199 | user.AvatarID = new LLUUID((string) reader["UUID"]); |
202 | user.firstName = (string)reader["username"]; | 200 | user.firstName = (string) reader["username"]; |
203 | user.lastName = (string)reader["surname"]; | 201 | user.lastName = (string) reader["surname"]; |
204 | returnlist.Add(user); | 202 | returnlist.Add(user); |
205 | |||
206 | } | 203 | } |
207 | reader.Close(); | 204 | reader.Close(); |
208 | result.Dispose(); | 205 | result.Dispose(); |
@@ -225,8 +222,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
225 | /// <returns>The sim profile</returns> | 222 | /// <returns>The sim profile</returns> |
226 | public RegionProfileData GetProfileByLLUUID(LLUUID uuid) | 223 | public RegionProfileData GetProfileByLLUUID(LLUUID uuid) |
227 | { | 224 | { |
228 | Dictionary<string, string> param = new Dictionary<string, string>(); | 225 | Dictionary<string, string> param = new Dictionary<string, string>(); |
229 | param["uuid"] = uuid.ToString(); | 226 | param["uuid"] = uuid.ToString(); |
230 | IDbCommand result = database.Query("SELECT * FROM regions WHERE uuid = @uuid", param); | 227 | IDbCommand result = database.Query("SELECT * FROM regions WHERE uuid = @uuid", param); |
231 | IDataReader reader = result.ExecuteReader(); | 228 | IDataReader reader = result.ExecuteReader(); |
232 | 229 | ||
@@ -244,7 +241,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
244 | /// <returns>A dataresponse enum indicating success</returns> | 241 | /// <returns>A dataresponse enum indicating success</returns> |
245 | public DataResponse AddProfile(RegionProfileData profile) | 242 | public DataResponse AddProfile(RegionProfileData profile) |
246 | { | 243 | { |
247 | |||
248 | try | 244 | try |
249 | { | 245 | { |
250 | if (GetProfileByLLUUID(profile.UUID) != null) | 246 | if (GetProfileByLLUUID(profile.UUID) != null) |
@@ -310,4 +306,4 @@ namespace OpenSim.Framework.Data.MSSQL | |||
310 | return null; | 306 | return null; |
311 | } | 307 | } |
312 | } | 308 | } |
313 | } | 309 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLInventoryData.cs b/OpenSim/Framework/Data.MSSQL/MSSQLInventoryData.cs index a6b8819..4b2c7af 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLInventoryData.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLInventoryData.cs | |||
@@ -26,10 +26,9 @@ | |||
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | using System; | 28 | using System; |
29 | using System.IO; | 29 | using System.Collections.Generic; |
30 | using System.Data; | 30 | using System.Data; |
31 | using System.Data.SqlClient; | 31 | using System.Data.SqlClient; |
32 | using System.Collections.Generic; | ||
33 | using libsecondlife; | 32 | using libsecondlife; |
34 | using OpenSim.Framework.Console; | 33 | using OpenSim.Framework.Console; |
35 | 34 | ||
@@ -57,7 +56,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
57 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); | 56 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); |
58 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); | 57 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); |
59 | 58 | ||
60 | database = new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, settingPassword); | 59 | database = |
60 | new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, | ||
61 | settingPassword); | ||
61 | TestTables(); | 62 | TestTables(); |
62 | } | 63 | } |
63 | 64 | ||
@@ -72,7 +73,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
72 | //database.ExecuteResourceSql("UpgradeFoldersTableToVersion2.sql"); | 73 | //database.ExecuteResourceSql("UpgradeFoldersTableToVersion2.sql"); |
73 | return; | 74 | return; |
74 | } | 75 | } |
75 | |||
76 | } | 76 | } |
77 | 77 | ||
78 | private void UpgradeItemsTable(string tableName) | 78 | private void UpgradeItemsTable(string tableName) |
@@ -88,17 +88,17 @@ namespace OpenSim.Framework.Data.MSSQL | |||
88 | 88 | ||
89 | private void TestTables() | 89 | private void TestTables() |
90 | { | 90 | { |
91 | |||
92 | Dictionary<string, string> tableList = new Dictionary<string, string>(); | 91 | Dictionary<string, string> tableList = new Dictionary<string, string>(); |
93 | 92 | ||
94 | tableList["inventoryfolders"] = null; | 93 | tableList["inventoryfolders"] = null; |
95 | tableList["inventoryitems"] = null; | 94 | tableList["inventoryitems"] = null; |
96 | 95 | ||
97 | database.GetTableVersion(tableList); | 96 | database.GetTableVersion(tableList); |
98 | 97 | ||
99 | UpgradeFoldersTable(tableList["inventoryfolders"]); | 98 | UpgradeFoldersTable(tableList["inventoryfolders"]); |
100 | UpgradeItemsTable(tableList["inventoryitems"]); | 99 | UpgradeItemsTable(tableList["inventoryitems"]); |
101 | } | 100 | } |
101 | |||
102 | #endregion | 102 | #endregion |
103 | 103 | ||
104 | /// <summary> | 104 | /// <summary> |
@@ -124,7 +124,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
124 | /// <returns>A string containing the DB provider</returns> | 124 | /// <returns>A string containing the DB provider</returns> |
125 | public string getVersion() | 125 | public string getVersion() |
126 | { | 126 | { |
127 | return database.getVersion(); | 127 | return database.getVersion(); |
128 | } | 128 | } |
129 | 129 | ||
130 | /// <summary> | 130 | /// <summary> |
@@ -143,15 +143,16 @@ namespace OpenSim.Framework.Data.MSSQL | |||
143 | Dictionary<string, string> param = new Dictionary<string, string>(); | 143 | Dictionary<string, string> param = new Dictionary<string, string>(); |
144 | param["parentFolderID"] = folderID.ToString(); | 144 | param["parentFolderID"] = folderID.ToString(); |
145 | 145 | ||
146 | IDbCommand result = database.Query("SELECT * FROM inventoryitems WHERE parentFolderID = @parentFolderID", param); | 146 | IDbCommand result = |
147 | database.Query("SELECT * FROM inventoryitems WHERE parentFolderID = @parentFolderID", param); | ||
147 | IDataReader reader = result.ExecuteReader(); | 148 | IDataReader reader = result.ExecuteReader(); |
148 | 149 | ||
149 | while(reader.Read()) | 150 | while (reader.Read()) |
150 | items.Add(readInventoryItem(reader)); | 151 | items.Add(readInventoryItem(reader)); |
151 | 152 | ||
152 | reader.Close(); | 153 | reader.Close(); |
153 | result.Dispose(); | 154 | result.Dispose(); |
154 | 155 | ||
155 | return items; | 156 | return items; |
156 | } | 157 | } |
157 | } | 158 | } |
@@ -174,16 +175,17 @@ namespace OpenSim.Framework.Data.MSSQL | |||
174 | { | 175 | { |
175 | lock (database) | 176 | lock (database) |
176 | { | 177 | { |
177 | |||
178 | Dictionary<string, string> param = new Dictionary<string, string>(); | 178 | Dictionary<string, string> param = new Dictionary<string, string>(); |
179 | param["uuid"] = user.ToString(); | 179 | param["uuid"] = user.ToString(); |
180 | param["zero"] = LLUUID.Zero.ToString(); | 180 | param["zero"] = LLUUID.Zero.ToString(); |
181 | 181 | ||
182 | IDbCommand result = database.Query("SELECT * FROM inventoryfolders WHERE parentFolderID = @zero AND agentID = @uuid", param); | 182 | IDbCommand result = |
183 | database.Query( | ||
184 | "SELECT * FROM inventoryfolders WHERE parentFolderID = @zero AND agentID = @uuid", param); | ||
183 | IDataReader reader = result.ExecuteReader(); | 185 | IDataReader reader = result.ExecuteReader(); |
184 | 186 | ||
185 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); | 187 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); |
186 | while(reader.Read()) | 188 | while (reader.Read()) |
187 | items.Add(readInventoryFolder(reader)); | 189 | items.Add(readInventoryFolder(reader)); |
188 | 190 | ||
189 | 191 | ||
@@ -212,24 +214,27 @@ namespace OpenSim.Framework.Data.MSSQL | |||
212 | param["uuid"] = user.ToString(); | 214 | param["uuid"] = user.ToString(); |
213 | param["zero"] = LLUUID.Zero.ToString(); | 215 | param["zero"] = LLUUID.Zero.ToString(); |
214 | 216 | ||
215 | IDbCommand result = database.Query("SELECT * FROM inventoryfolders WHERE parentFolderID = @zero AND agentID = @uuid", param); | 217 | IDbCommand result = |
218 | database.Query( | ||
219 | "SELECT * FROM inventoryfolders WHERE parentFolderID = @zero AND agentID = @uuid", param); | ||
216 | IDataReader reader = result.ExecuteReader(); | 220 | IDataReader reader = result.ExecuteReader(); |
217 | 221 | ||
218 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); | 222 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); |
219 | while(reader.Read()) | 223 | while (reader.Read()) |
220 | items.Add(readInventoryFolder(reader)); | 224 | items.Add(readInventoryFolder(reader)); |
221 | 225 | ||
222 | InventoryFolderBase rootFolder = null; | 226 | InventoryFolderBase rootFolder = null; |
223 | 227 | ||
224 | // There should only ever be one root folder for a user. However, if there's more | 228 | // There should only ever be one root folder for a user. However, if there's more |
225 | // than one we'll simply use the first one rather than failing. It would be even | 229 | // than one we'll simply use the first one rather than failing. It would be even |
226 | // nicer to print some message to this effect, but this feels like it's too low a | 230 | // nicer to print some message to this effect, but this feels like it's too low a |
227 | // to put such a message out, and it's too minor right now to spare the time to | 231 | // to put such a message out, and it's too minor right now to spare the time to |
228 | // suitably refactor. | 232 | // suitably refactor. |
229 | if (items.Count > 0) { | 233 | if (items.Count > 0) |
234 | { | ||
230 | rootFolder = items[0]; | 235 | rootFolder = items[0]; |
231 | } | 236 | } |
232 | 237 | ||
233 | reader.Close(); | 238 | reader.Close(); |
234 | result.Dispose(); | 239 | result.Dispose(); |
235 | 240 | ||
@@ -259,12 +264,13 @@ namespace OpenSim.Framework.Data.MSSQL | |||
259 | param["parentFolderID"] = parentID.ToString(); | 264 | param["parentFolderID"] = parentID.ToString(); |
260 | 265 | ||
261 | 266 | ||
262 | IDbCommand result = database.Query("SELECT * FROM inventoryfolders WHERE parentFolderID = @parentFolderID", param); | 267 | IDbCommand result = |
268 | database.Query("SELECT * FROM inventoryfolders WHERE parentFolderID = @parentFolderID", param); | ||
263 | IDataReader reader = result.ExecuteReader(); | 269 | IDataReader reader = result.ExecuteReader(); |
264 | 270 | ||
265 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); | 271 | List<InventoryFolderBase> items = new List<InventoryFolderBase>(); |
266 | 272 | ||
267 | while(reader.Read()) | 273 | while (reader.Read()) |
268 | items.Add(readInventoryFolder(reader)); | 274 | items.Add(readInventoryFolder(reader)); |
269 | 275 | ||
270 | reader.Close(); | 276 | reader.Close(); |
@@ -292,17 +298,17 @@ namespace OpenSim.Framework.Data.MSSQL | |||
292 | { | 298 | { |
293 | InventoryItemBase item = new InventoryItemBase(); | 299 | InventoryItemBase item = new InventoryItemBase(); |
294 | 300 | ||
295 | item.inventoryID = new LLUUID((string)reader["inventoryID"]); | 301 | item.inventoryID = new LLUUID((string) reader["inventoryID"]); |
296 | item.assetID = new LLUUID((string)reader["assetID"]); | 302 | item.assetID = new LLUUID((string) reader["assetID"]); |
297 | item.assetType = (int)reader["assetType"]; | 303 | item.assetType = (int) reader["assetType"]; |
298 | item.parentFolderID = new LLUUID((string)reader["parentFolderID"]); | 304 | item.parentFolderID = new LLUUID((string) reader["parentFolderID"]); |
299 | item.avatarID = new LLUUID((string)reader["avatarID"]); | 305 | item.avatarID = new LLUUID((string) reader["avatarID"]); |
300 | item.inventoryName = (string)reader["inventoryName"]; | 306 | item.inventoryName = (string) reader["inventoryName"]; |
301 | item.inventoryDescription = (string)reader["inventoryDescription"]; | 307 | item.inventoryDescription = (string) reader["inventoryDescription"]; |
302 | item.inventoryNextPermissions = Convert.ToUInt32(reader["inventoryNextPermissions"]); | 308 | item.inventoryNextPermissions = Convert.ToUInt32(reader["inventoryNextPermissions"]); |
303 | item.inventoryCurrentPermissions = Convert.ToUInt32(reader["inventoryCurrentPermissions"]); | 309 | item.inventoryCurrentPermissions = Convert.ToUInt32(reader["inventoryCurrentPermissions"]); |
304 | item.invType = (int)reader["invType"]; | 310 | item.invType = (int) reader["invType"]; |
305 | item.creatorsID = new LLUUID((string)reader["creatorID"]); | 311 | item.creatorsID = new LLUUID((string) reader["creatorID"]); |
306 | item.inventoryBasePermissions = Convert.ToUInt32(reader["inventoryBasePermissions"]); | 312 | item.inventoryBasePermissions = Convert.ToUInt32(reader["inventoryBasePermissions"]); |
307 | item.inventoryEveryOnePermissions = Convert.ToUInt32(reader["inventoryEveryOnePermissions"]); | 313 | item.inventoryEveryOnePermissions = Convert.ToUInt32(reader["inventoryEveryOnePermissions"]); |
308 | return item; | 314 | return item; |
@@ -322,7 +328,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
322 | /// <returns>An inventory item</returns> | 328 | /// <returns>An inventory item</returns> |
323 | public InventoryItemBase getInventoryItem(LLUUID itemID) | 329 | public InventoryItemBase getInventoryItem(LLUUID itemID) |
324 | { | 330 | { |
325 | |||
326 | try | 331 | try |
327 | { | 332 | { |
328 | lock (database) | 333 | lock (database) |
@@ -330,11 +335,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
330 | Dictionary<string, string> param = new Dictionary<string, string>(); | 335 | Dictionary<string, string> param = new Dictionary<string, string>(); |
331 | param["inventoryID"] = itemID.ToString(); | 336 | param["inventoryID"] = itemID.ToString(); |
332 | 337 | ||
333 | IDbCommand result = database.Query("SELECT * FROM inventoryitems WHERE inventoryID = @inventoryID", param); | 338 | IDbCommand result = |
339 | database.Query("SELECT * FROM inventoryitems WHERE inventoryID = @inventoryID", param); | ||
334 | IDataReader reader = result.ExecuteReader(); | 340 | IDataReader reader = result.ExecuteReader(); |
335 | 341 | ||
336 | InventoryItemBase item = null; | 342 | InventoryItemBase item = null; |
337 | if(reader.Read()) | 343 | if (reader.Read()) |
338 | item = readInventoryItem(reader); | 344 | item = readInventoryItem(reader); |
339 | 345 | ||
340 | reader.Close(); | 346 | reader.Close(); |
@@ -361,12 +367,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
361 | try | 367 | try |
362 | { | 368 | { |
363 | InventoryFolderBase folder = new InventoryFolderBase(); | 369 | InventoryFolderBase folder = new InventoryFolderBase(); |
364 | folder.agentID = new LLUUID((string)reader["agentID"]); | 370 | folder.agentID = new LLUUID((string) reader["agentID"]); |
365 | folder.parentID = new LLUUID((string)reader["parentFolderID"]); | 371 | folder.parentID = new LLUUID((string) reader["parentFolderID"]); |
366 | folder.folderID = new LLUUID((string)reader["folderID"]); | 372 | folder.folderID = new LLUUID((string) reader["folderID"]); |
367 | folder.name = (string)reader["folderName"]; | 373 | folder.name = (string) reader["folderName"]; |
368 | folder.type = (short)reader["type"]; | 374 | folder.type = (short) reader["type"]; |
369 | folder.version = (ushort)((int)reader["version"]); | 375 | folder.version = (ushort) ((int) reader["version"]); |
370 | return folder; | 376 | return folder; |
371 | } | 377 | } |
372 | catch (Exception e) | 378 | catch (Exception e) |
@@ -389,7 +395,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
389 | { | 395 | { |
390 | lock (database) | 396 | lock (database) |
391 | { | 397 | { |
392 | Dictionary<string, string> param = new Dictionary<string,string>(); | 398 | Dictionary<string, string> param = new Dictionary<string, string>(); |
393 | param["uuid"] = folderID.ToString(); | 399 | param["uuid"] = folderID.ToString(); |
394 | 400 | ||
395 | IDbCommand result = database.Query("SELECT * FROM inventoryfolders WHERE folderID = @uuid", param); | 401 | IDbCommand result = database.Query("SELECT * FROM inventoryfolders WHERE folderID = @uuid", param); |
@@ -418,8 +424,10 @@ namespace OpenSim.Framework.Data.MSSQL | |||
418 | public void addInventoryItem(InventoryItemBase item) | 424 | public void addInventoryItem(InventoryItemBase item) |
419 | { | 425 | { |
420 | string sql = "INSERT INTO inventoryitems"; | 426 | string sql = "INSERT INTO inventoryitems"; |
421 | sql += "([inventoryID], [assetID], [assetType], [parentFolderID], [avatarID], [inventoryName], [inventoryDescription], [inventoryNextPermissions], [inventoryCurrentPermissions], [invType], [creatorID], [inventoryBasePermissions], [inventoryEveryOnePermissions]) VALUES "; | 427 | sql += |
422 | sql += "(@inventoryID, @assetID, @assetType, @parentFolderID, @avatarID, @inventoryName, @inventoryDescription, @inventoryNextPermissions, @inventoryCurrentPermissions, @invType, @creatorID, @inventoryBasePermissions, @inventoryEveryOnePermissions);"; | 428 | "([inventoryID], [assetID], [assetType], [parentFolderID], [avatarID], [inventoryName], [inventoryDescription], [inventoryNextPermissions], [inventoryCurrentPermissions], [invType], [creatorID], [inventoryBasePermissions], [inventoryEveryOnePermissions]) VALUES "; |
429 | sql += | ||
430 | "(@inventoryID, @assetID, @assetType, @parentFolderID, @avatarID, @inventoryName, @inventoryDescription, @inventoryNextPermissions, @inventoryCurrentPermissions, @invType, @creatorID, @inventoryBasePermissions, @inventoryEveryOnePermissions);"; | ||
423 | 431 | ||
424 | try | 432 | try |
425 | { | 433 | { |
@@ -441,7 +449,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
441 | IDbCommand result = database.Query(sql, param); | 449 | IDbCommand result = database.Query(sql, param); |
442 | result.ExecuteNonQuery(); | 450 | result.ExecuteNonQuery(); |
443 | result.Dispose(); | 451 | result.Dispose(); |
444 | |||
445 | } | 452 | } |
446 | catch (SqlException e) | 453 | catch (SqlException e) |
447 | { | 454 | { |
@@ -454,21 +461,21 @@ namespace OpenSim.Framework.Data.MSSQL | |||
454 | /// </summary> | 461 | /// </summary> |
455 | /// <param name="item">Inventory item to update</param> | 462 | /// <param name="item">Inventory item to update</param> |
456 | public void updateInventoryItem(InventoryItemBase item) | 463 | public void updateInventoryItem(InventoryItemBase item) |
457 | { | 464 | { |
458 | SqlCommand command = new SqlCommand("UPDATE inventoryitems set inventoryID = @inventoryID, " + | 465 | SqlCommand command = new SqlCommand("UPDATE inventoryitems set inventoryID = @inventoryID, " + |
459 | "assetID = @assetID, " + | 466 | "assetID = @assetID, " + |
460 | "assetType = @assetType" + | 467 | "assetType = @assetType" + |
461 | "parentFolderID = @parentFolderID" + | 468 | "parentFolderID = @parentFolderID" + |
462 | "avatarID = @avatarID" + | 469 | "avatarID = @avatarID" + |
463 | "inventoryName = @inventoryName"+ | 470 | "inventoryName = @inventoryName" + |
464 | "inventoryDescription = @inventoryDescription" + | 471 | "inventoryDescription = @inventoryDescription" + |
465 | "inventoryNextPermissions = @inventoryNextPermissions" + | 472 | "inventoryNextPermissions = @inventoryNextPermissions" + |
466 | "inventoryCurrentPermissions = @inventoryCurrentPermissions" + | 473 | "inventoryCurrentPermissions = @inventoryCurrentPermissions" + |
467 | "invType = @invType" + | 474 | "invType = @invType" + |
468 | "creatorID = @creatorID" + | 475 | "creatorID = @creatorID" + |
469 | "inventoryBasePermissions = @inventoryBasePermissions" + | 476 | "inventoryBasePermissions = @inventoryBasePermissions" + |
470 | "inventoryEveryOnePermissions = @inventoryEveryOnePermissions) where " + | 477 | "inventoryEveryOnePermissions = @inventoryEveryOnePermissions) where " + |
471 | "invenoryID = @keyInventoryID;", database.getConnection()); | 478 | "invenoryID = @keyInventoryID;", database.getConnection()); |
472 | SqlParameter param1 = new SqlParameter("@inventoryID", item.inventoryID.ToString()); | 479 | SqlParameter param1 = new SqlParameter("@inventoryID", item.inventoryID.ToString()); |
473 | SqlParameter param2 = new SqlParameter("@assetID", item.assetID); | 480 | SqlParameter param2 = new SqlParameter("@assetID", item.assetID); |
474 | SqlParameter param3 = new SqlParameter("@assetType", item.assetType); | 481 | SqlParameter param3 = new SqlParameter("@assetType", item.assetType); |
@@ -481,7 +488,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
481 | SqlParameter param10 = new SqlParameter("@invType", item.invType); | 488 | SqlParameter param10 = new SqlParameter("@invType", item.invType); |
482 | SqlParameter param11 = new SqlParameter("@creatorID", item.creatorsID); | 489 | SqlParameter param11 = new SqlParameter("@creatorID", item.creatorsID); |
483 | SqlParameter param12 = new SqlParameter("@inventoryBasePermissions", item.inventoryBasePermissions); | 490 | SqlParameter param12 = new SqlParameter("@inventoryBasePermissions", item.inventoryBasePermissions); |
484 | SqlParameter param13 = new SqlParameter("@inventoryEveryOnePermissions", item.inventoryEveryOnePermissions); | 491 | SqlParameter param13 = new SqlParameter("@inventoryEveryOnePermissions", item.inventoryEveryOnePermissions); |
485 | SqlParameter param14 = new SqlParameter("@keyInventoryID", item.inventoryID.ToString()); | 492 | SqlParameter param14 = new SqlParameter("@keyInventoryID", item.inventoryID.ToString()); |
486 | command.Parameters.Add(param1); | 493 | command.Parameters.Add(param1); |
487 | command.Parameters.Add(param2); | 494 | command.Parameters.Add(param2); |
@@ -506,7 +513,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
506 | { | 513 | { |
507 | MainLog.Instance.Error(e.ToString()); | 514 | MainLog.Instance.Error(e.ToString()); |
508 | } | 515 | } |
509 | |||
510 | } | 516 | } |
511 | 517 | ||
512 | /// <summary> | 518 | /// <summary> |
@@ -523,8 +529,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
523 | IDbCommand cmd = database.Query("DELETE FROM inventoryitems WHERE inventoryID=@uuid", param); | 529 | IDbCommand cmd = database.Query("DELETE FROM inventoryitems WHERE inventoryID=@uuid", param); |
524 | cmd.ExecuteNonQuery(); | 530 | cmd.ExecuteNonQuery(); |
525 | cmd.Dispose(); | 531 | cmd.Dispose(); |
526 | |||
527 | |||
528 | } | 532 | } |
529 | catch (SqlException e) | 533 | catch (SqlException e) |
530 | { | 534 | { |
@@ -539,7 +543,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
539 | /// <param name="folder">Folder to create</param> | 543 | /// <param name="folder">Folder to create</param> |
540 | public void addInventoryFolder(InventoryFolderBase folder) | 544 | public void addInventoryFolder(InventoryFolderBase folder) |
541 | { | 545 | { |
542 | string sql = "INSERT INTO inventoryfolders ([folderID], [agentID], [parentFolderID], [folderName], [type], [version]) VALUES "; | 546 | string sql = |
547 | "INSERT INTO inventoryfolders ([folderID], [agentID], [parentFolderID], [folderName], [type], [version]) VALUES "; | ||
543 | sql += "(@folderID, @agentID, @parentFolderID, @folderName, @type, @version);"; | 548 | sql += "(@folderID, @agentID, @parentFolderID, @folderName, @type, @version);"; |
544 | 549 | ||
545 | 550 | ||
@@ -550,9 +555,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
550 | param["folderName"] = folder.name; | 555 | param["folderName"] = folder.name; |
551 | param["type"] = Convert.ToString(folder.type); | 556 | param["type"] = Convert.ToString(folder.type); |
552 | param["version"] = Convert.ToString(folder.version); | 557 | param["version"] = Convert.ToString(folder.version); |
553 | 558 | ||
554 | try | 559 | try |
555 | { | 560 | { |
556 | IDbCommand result = database.Query(sql, param); | 561 | IDbCommand result = database.Query(sql, param); |
557 | result.ExecuteNonQuery(); | 562 | result.ExecuteNonQuery(); |
558 | result.Dispose(); | 563 | result.Dispose(); |
@@ -567,16 +572,15 @@ namespace OpenSim.Framework.Data.MSSQL | |||
567 | /// Updates an inventory folder | 572 | /// Updates an inventory folder |
568 | /// </summary> | 573 | /// </summary> |
569 | /// <param name="folder">Folder to update</param> | 574 | /// <param name="folder">Folder to update</param> |
570 | |||
571 | public void updateInventoryFolder(InventoryFolderBase folder) | 575 | public void updateInventoryFolder(InventoryFolderBase folder) |
572 | { | 576 | { |
573 | SqlCommand command = new SqlCommand("UPDATE inventoryfolders set folderID = @folderID, " + | 577 | SqlCommand command = new SqlCommand("UPDATE inventoryfolders set folderID = @folderID, " + |
574 | "agentID = @agentID, " + | 578 | "agentID = @agentID, " + |
575 | "parentFolderID = @parentFolderID," + | 579 | "parentFolderID = @parentFolderID," + |
576 | "folderName = @folderName," + | 580 | "folderName = @folderName," + |
577 | "type = @type," + | 581 | "type = @type," + |
578 | "version = @version where " + | 582 | "version = @version where " + |
579 | "folderID = @keyFolderID;", database.getConnection()); | 583 | "folderID = @keyFolderID;", database.getConnection()); |
580 | SqlParameter param1 = new SqlParameter("@folderID", folder.folderID.ToString()); | 584 | SqlParameter param1 = new SqlParameter("@folderID", folder.folderID.ToString()); |
581 | SqlParameter param2 = new SqlParameter("@agentID", folder.agentID.ToString()); | 585 | SqlParameter param2 = new SqlParameter("@agentID", folder.agentID.ToString()); |
582 | SqlParameter param3 = new SqlParameter("@parentFolderID", folder.parentID.ToString()); | 586 | SqlParameter param3 = new SqlParameter("@parentFolderID", folder.parentID.ToString()); |
@@ -600,20 +604,17 @@ namespace OpenSim.Framework.Data.MSSQL | |||
600 | { | 604 | { |
601 | MainLog.Instance.Error(e.ToString()); | 605 | MainLog.Instance.Error(e.ToString()); |
602 | } | 606 | } |
603 | |||
604 | |||
605 | } | 607 | } |
606 | 608 | ||
607 | /// <summary> | 609 | /// <summary> |
608 | /// Updates an inventory folder | 610 | /// Updates an inventory folder |
609 | /// </summary> | 611 | /// </summary> |
610 | /// <param name="folder">Folder to update</param> | 612 | /// <param name="folder">Folder to update</param> |
611 | |||
612 | public void moveInventoryFolder(InventoryFolderBase folder) | 613 | public void moveInventoryFolder(InventoryFolderBase folder) |
613 | { | 614 | { |
614 | SqlCommand command = new SqlCommand("UPDATE inventoryfolders set folderID = @folderID, " + | 615 | SqlCommand command = new SqlCommand("UPDATE inventoryfolders set folderID = @folderID, " + |
615 | "parentFolderID = @parentFolderID," + | 616 | "parentFolderID = @parentFolderID," + |
616 | "folderID = @keyFolderID;", database.getConnection()); | 617 | "folderID = @keyFolderID;", database.getConnection()); |
617 | SqlParameter param1 = new SqlParameter("@folderID", folder.folderID.ToString()); | 618 | SqlParameter param1 = new SqlParameter("@folderID", folder.folderID.ToString()); |
618 | SqlParameter param2 = new SqlParameter("@parentFolderID", folder.parentID.ToString()); | 619 | SqlParameter param2 = new SqlParameter("@parentFolderID", folder.parentID.ToString()); |
619 | SqlParameter param3 = new SqlParameter("@keyFolderID", folder.folderID.ToString()); | 620 | SqlParameter param3 = new SqlParameter("@keyFolderID", folder.folderID.ToString()); |
@@ -629,8 +630,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
629 | { | 630 | { |
630 | MainLog.Instance.Error(e.ToString()); | 631 | MainLog.Instance.Error(e.ToString()); |
631 | } | 632 | } |
632 | |||
633 | |||
634 | } | 633 | } |
635 | 634 | ||
636 | /// <summary> | 635 | /// <summary> |
@@ -645,7 +644,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
645 | foreach (InventoryFolderBase f in subfolderList) | 644 | foreach (InventoryFolderBase f in subfolderList) |
646 | folders.Add(f); | 645 | folders.Add(f); |
647 | } | 646 | } |
648 | 647 | ||
649 | /// <summary> | 648 | /// <summary> |
650 | /// Returns all child folders in the hierarchy from the parent folder and down | 649 | /// Returns all child folders in the hierarchy from the parent folder and down |
651 | /// </summary> | 650 | /// </summary> |
@@ -672,7 +671,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
672 | IDbCommand cmd = database.Query("DELETE FROM inventoryfolders WHERE folderID=@folderID", param); | 671 | IDbCommand cmd = database.Query("DELETE FROM inventoryfolders WHERE folderID=@folderID", param); |
673 | cmd.ExecuteNonQuery(); | 672 | cmd.ExecuteNonQuery(); |
674 | cmd.Dispose(); | 673 | cmd.Dispose(); |
675 | |||
676 | } | 674 | } |
677 | catch (SqlException e) | 675 | catch (SqlException e) |
678 | { | 676 | { |
@@ -689,7 +687,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
689 | param["parentFolderID"] = folderID.ToString(); | 687 | param["parentFolderID"] = folderID.ToString(); |
690 | 688 | ||
691 | 689 | ||
692 | IDbCommand cmd = database.Query("DELETE FROM inventoryitems WHERE parentFolderID=@parentFolderID", param); | 690 | IDbCommand cmd = |
691 | database.Query("DELETE FROM inventoryitems WHERE parentFolderID=@parentFolderID", param); | ||
693 | cmd.ExecuteNonQuery(); | 692 | cmd.ExecuteNonQuery(); |
694 | cmd.Dispose(); | 693 | cmd.Dispose(); |
695 | } | 694 | } |
@@ -724,4 +723,4 @@ namespace OpenSim.Framework.Data.MSSQL | |||
724 | } | 723 | } |
725 | } | 724 | } |
726 | } | 725 | } |
727 | } | 726 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLLogData.cs b/OpenSim/Framework/Data.MSSQL/MSSQLLogData.cs index a5b33ec..c3ec7c6 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLLogData.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLLogData.cs | |||
@@ -25,14 +25,12 @@ | |||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | using System; | ||
29 | |||
30 | namespace OpenSim.Framework.Data.MSSQL | 28 | namespace OpenSim.Framework.Data.MSSQL |
31 | { | 29 | { |
32 | /// <summary> | 30 | /// <summary> |
33 | /// An interface to the log database for MySQL | 31 | /// An interface to the log database for MySQL |
34 | /// </summary> | 32 | /// </summary> |
35 | class MSSQLLogData : ILogData | 33 | internal class MSSQLLogData : ILogData |
36 | { | 34 | { |
37 | /// <summary> | 35 | /// <summary> |
38 | /// The database manager | 36 | /// The database manager |
@@ -51,7 +49,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
51 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); | 49 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); |
52 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); | 50 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); |
53 | 51 | ||
54 | database = new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, settingPassword); | 52 | database = |
53 | new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, | ||
54 | settingPassword); | ||
55 | } | 55 | } |
56 | 56 | ||
57 | /// <summary> | 57 | /// <summary> |
@@ -63,7 +63,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
63 | /// <param name="arguments">The arguments passed to the method</param> | 63 | /// <param name="arguments">The arguments passed to the method</param> |
64 | /// <param name="priority">How critical is this?</param> | 64 | /// <param name="priority">How critical is this?</param> |
65 | /// <param name="logMessage">The message to log</param> | 65 | /// <param name="logMessage">The message to log</param> |
66 | public void saveLog(string serverDaemon, string target, string methodCall, string arguments, int priority, string logMessage) | 66 | public void saveLog(string serverDaemon, string target, string methodCall, string arguments, int priority, |
67 | string logMessage) | ||
67 | { | 68 | { |
68 | try | 69 | try |
69 | { | 70 | { |
@@ -101,4 +102,4 @@ namespace OpenSim.Framework.Data.MSSQL | |||
101 | return "0.1"; | 102 | return "0.1"; |
102 | } | 103 | } |
103 | } | 104 | } |
104 | } | 105 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLManager.cs b/OpenSim/Framework/Data.MSSQL/MSSQLManager.cs index b009a56..0dc3338 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLManager.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLManager.cs | |||
@@ -25,6 +25,7 @@ | |||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | |||
28 | using System; | 29 | using System; |
29 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
30 | using System.Data; | 31 | using System.Data; |
@@ -32,7 +33,6 @@ using System.Data.SqlClient; | |||
32 | using System.IO; | 33 | using System.IO; |
33 | using System.Reflection; | 34 | using System.Reflection; |
34 | using libsecondlife; | 35 | using libsecondlife; |
35 | |||
36 | using OpenSim.Framework.Console; | 36 | using OpenSim.Framework.Console; |
37 | 37 | ||
38 | namespace OpenSim.Framework.Data.MSSQL | 38 | namespace OpenSim.Framework.Data.MSSQL |
@@ -40,12 +40,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
40 | /// <summary> | 40 | /// <summary> |
41 | /// A management class for the MS SQL Storage Engine | 41 | /// A management class for the MS SQL Storage Engine |
42 | /// </summary> | 42 | /// </summary> |
43 | class MSSQLManager | 43 | internal class MSSQLManager |
44 | { | 44 | { |
45 | /// <summary> | 45 | /// <summary> |
46 | /// The database connection object | 46 | /// The database connection object |
47 | /// </summary> | 47 | /// </summary> |
48 | IDbConnection dbcon; | 48 | private IDbConnection dbcon; |
49 | 49 | ||
50 | /// <summary> | 50 | /// <summary> |
51 | /// Connection string for ADO.net | 51 | /// Connection string for ADO.net |
@@ -60,12 +60,14 @@ namespace OpenSim.Framework.Data.MSSQL | |||
60 | /// <param name="username">The username logging into the database</param> | 60 | /// <param name="username">The username logging into the database</param> |
61 | /// <param name="password">The password for the user logging in</param> | 61 | /// <param name="password">The password for the user logging in</param> |
62 | /// <param name="cpooling">Whether to use connection pooling or not, can be one of the following: 'yes', 'true', 'no' or 'false', if unsure use 'false'.</param> | 62 | /// <param name="cpooling">Whether to use connection pooling or not, can be one of the following: 'yes', 'true', 'no' or 'false', if unsure use 'false'.</param> |
63 | public MSSQLManager(string dataSource, string initialCatalog, string persistSecurityInfo, string userId, string password) | 63 | public MSSQLManager(string dataSource, string initialCatalog, string persistSecurityInfo, string userId, |
64 | string password) | ||
64 | { | 65 | { |
65 | try | 66 | try |
66 | { | 67 | { |
67 | 68 | connectionString = "Data Source=" + dataSource + ";Initial Catalog=" + initialCatalog + | |
68 | connectionString = "Data Source=" + dataSource + ";Initial Catalog=" + initialCatalog + ";Persist Security Info=" + persistSecurityInfo + ";User ID=" + userId + ";Password=" + password+";"; | 69 | ";Persist Security Info=" + persistSecurityInfo + ";User ID=" + userId + ";Password=" + |
70 | password + ";"; | ||
69 | dbcon = new SqlConnection(connectionString); | 71 | dbcon = new SqlConnection(connectionString); |
70 | TestTables(dbcon); | 72 | TestTables(dbcon); |
71 | dbcon.Open(); | 73 | dbcon.Open(); |
@@ -78,7 +80,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
78 | 80 | ||
79 | private bool TestTables(IDbConnection conn) | 81 | private bool TestTables(IDbConnection conn) |
80 | { | 82 | { |
81 | IDbCommand cmd = this.Query("SELECT * FROM regions", new Dictionary<string, string>()); | 83 | IDbCommand cmd = Query("SELECT * FROM regions", new Dictionary<string, string>()); |
82 | //SqlCommand cmd = (SqlCommand)dbcon.CreateCommand(); | 84 | //SqlCommand cmd = (SqlCommand)dbcon.CreateCommand(); |
83 | //cmd.CommandText = "SELECT * FROM regions"; | 85 | //cmd.CommandText = "SELECT * FROM regions"; |
84 | try | 86 | try |
@@ -90,7 +92,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
90 | } | 92 | } |
91 | catch (Exception) | 93 | catch (Exception) |
92 | { | 94 | { |
93 | MainLog.Instance.Verbose("DATASTORE", "MSSQL Database doesn't exist... creating"); | 95 | MainLog.Instance.Verbose("DATASTORE", "MSSQL Database doesn't exist... creating"); |
94 | InitDB(conn); | 96 | InitDB(conn); |
95 | } | 97 | } |
96 | return true; | 98 | return true; |
@@ -100,66 +102,66 @@ namespace OpenSim.Framework.Data.MSSQL | |||
100 | { | 102 | { |
101 | string createRegions = defineTable(createRegionsTable()); | 103 | string createRegions = defineTable(createRegionsTable()); |
102 | Dictionary<string, string> param = new Dictionary<string, string>(); | 104 | Dictionary<string, string> param = new Dictionary<string, string>(); |
103 | IDbCommand pcmd = this.Query(createRegions, param); | 105 | IDbCommand pcmd = Query(createRegions, param); |
104 | if (conn.State == ConnectionState.Closed) { | 106 | if (conn.State == ConnectionState.Closed) |
107 | { | ||
105 | conn.Open(); | 108 | conn.Open(); |
106 | } | 109 | } |
107 | pcmd.ExecuteNonQuery(); | 110 | pcmd.ExecuteNonQuery(); |
108 | pcmd.Dispose(); | 111 | pcmd.Dispose(); |
109 | 112 | ||
110 | this.ExecuteResourceSql("Mssql-users.sql"); | 113 | ExecuteResourceSql("Mssql-users.sql"); |
111 | this.ExecuteResourceSql("Mssql-agents.sql"); | 114 | ExecuteResourceSql("Mssql-agents.sql"); |
112 | this.ExecuteResourceSql("Mssql-logs.sql"); | 115 | ExecuteResourceSql("Mssql-logs.sql"); |
113 | 116 | ||
114 | conn.Close(); | 117 | conn.Close(); |
115 | |||
116 | } | 118 | } |
117 | 119 | ||
118 | private DataTable createRegionsTable() | 120 | private DataTable createRegionsTable() |
119 | { | 121 | { |
120 | DataTable regions = new DataTable("regions"); | 122 | DataTable regions = new DataTable("regions"); |
121 | 123 | ||
122 | createCol(regions, "regionHandle", typeof(ulong)); | 124 | createCol(regions, "regionHandle", typeof (ulong)); |
123 | createCol(regions, "regionName", typeof(System.String)); | 125 | createCol(regions, "regionName", typeof (String)); |
124 | createCol(regions, "uuid", typeof(System.String)); | 126 | createCol(regions, "uuid", typeof (String)); |
125 | 127 | ||
126 | createCol(regions, "regionRecvKey", typeof(System.String)); | 128 | createCol(regions, "regionRecvKey", typeof (String)); |
127 | createCol(regions, "regionSecret", typeof(System.String)); | 129 | createCol(regions, "regionSecret", typeof (String)); |
128 | createCol(regions, "regionSendKey", typeof(System.String)); | 130 | createCol(regions, "regionSendKey", typeof (String)); |
129 | 131 | ||
130 | createCol(regions, "regionDataURI", typeof(System.String)); | 132 | createCol(regions, "regionDataURI", typeof (String)); |
131 | createCol(regions, "serverIP", typeof(System.String)); | 133 | createCol(regions, "serverIP", typeof (String)); |
132 | createCol(regions, "serverPort", typeof(System.String)); | 134 | createCol(regions, "serverPort", typeof (String)); |
133 | createCol(regions, "serverURI", typeof(System.String)); | 135 | createCol(regions, "serverURI", typeof (String)); |
134 | 136 | ||
135 | 137 | ||
136 | createCol(regions, "locX", typeof(uint)); | 138 | createCol(regions, "locX", typeof (uint)); |
137 | createCol(regions, "locY", typeof(uint)); | 139 | createCol(regions, "locY", typeof (uint)); |
138 | createCol(regions, "locZ", typeof(uint)); | 140 | createCol(regions, "locZ", typeof (uint)); |
139 | 141 | ||
140 | createCol(regions, "eastOverrideHandle", typeof(ulong)); | 142 | createCol(regions, "eastOverrideHandle", typeof (ulong)); |
141 | createCol(regions, "westOverrideHandle", typeof(ulong)); | 143 | createCol(regions, "westOverrideHandle", typeof (ulong)); |
142 | createCol(regions, "southOverrideHandle", typeof(ulong)); | 144 | createCol(regions, "southOverrideHandle", typeof (ulong)); |
143 | createCol(regions, "northOverrideHandle", typeof(ulong)); | 145 | createCol(regions, "northOverrideHandle", typeof (ulong)); |
144 | 146 | ||
145 | createCol(regions, "regionAssetURI", typeof(System.String)); | 147 | createCol(regions, "regionAssetURI", typeof (String)); |
146 | createCol(regions, "regionAssetRecvKey", typeof(System.String)); | 148 | createCol(regions, "regionAssetRecvKey", typeof (String)); |
147 | createCol(regions, "regionAssetSendKey", typeof(System.String)); | 149 | createCol(regions, "regionAssetSendKey", typeof (String)); |
148 | 150 | ||
149 | createCol(regions, "regionUserURI", typeof(System.String)); | 151 | createCol(regions, "regionUserURI", typeof (String)); |
150 | createCol(regions, "regionUserRecvKey", typeof(System.String)); | 152 | createCol(regions, "regionUserRecvKey", typeof (String)); |
151 | createCol(regions, "regionUserSendKey", typeof(System.String)); | 153 | createCol(regions, "regionUserSendKey", typeof (String)); |
152 | 154 | ||
153 | createCol(regions, "regionMapTexture", typeof(System.String)); | 155 | createCol(regions, "regionMapTexture", typeof (String)); |
154 | createCol(regions, "serverHttpPort", typeof(System.String)); | 156 | createCol(regions, "serverHttpPort", typeof (String)); |
155 | createCol(regions, "serverRemotingPort", typeof(uint)); | 157 | createCol(regions, "serverRemotingPort", typeof (uint)); |
156 | 158 | ||
157 | // Add in contraints | 159 | // Add in contraints |
158 | regions.PrimaryKey = new DataColumn[] { regions.Columns["UUID"] }; | 160 | regions.PrimaryKey = new DataColumn[] {regions.Columns["UUID"]}; |
159 | return regions; | 161 | return regions; |
160 | } | 162 | } |
161 | 163 | ||
162 | protected static void createCol(DataTable dt, string name, System.Type type) | 164 | protected static void createCol(DataTable dt, string name, Type type) |
163 | { | 165 | { |
164 | DataColumn col = new DataColumn(name, type); | 166 | DataColumn col = new DataColumn(name, type); |
165 | dt.Columns.Add(col); | 167 | dt.Columns.Add(col); |
@@ -172,10 +174,11 @@ namespace OpenSim.Framework.Data.MSSQL | |||
172 | foreach (DataColumn col in dt.Columns) | 174 | foreach (DataColumn col in dt.Columns) |
173 | { | 175 | { |
174 | if (subsql.Length > 0) | 176 | if (subsql.Length > 0) |
175 | { // a map function would rock so much here | 177 | { |
178 | // a map function would rock so much here | ||
176 | subsql += ",\n"; | 179 | subsql += ",\n"; |
177 | } | 180 | } |
178 | 181 | ||
179 | subsql += col.ColumnName + " " + SqlType(col.DataType); | 182 | subsql += col.ColumnName + " " + SqlType(col.DataType); |
180 | if (col == dt.PrimaryKey[0]) | 183 | if (col == dt.PrimaryKey[0]) |
181 | { | 184 | { |
@@ -192,19 +195,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
192 | // slightly differently. | 195 | // slightly differently. |
193 | private static string SqlType(Type type) | 196 | private static string SqlType(Type type) |
194 | { | 197 | { |
195 | if (type == typeof(System.String)) | 198 | if (type == typeof (String)) |
196 | { | 199 | { |
197 | return "varchar(255)"; | 200 | return "varchar(255)"; |
198 | } | 201 | } |
199 | else if (type == typeof(System.Int32)) | 202 | else if (type == typeof (Int32)) |
200 | { | 203 | { |
201 | return "integer"; | 204 | return "integer"; |
202 | } | 205 | } |
203 | else if (type == typeof(System.Double)) | 206 | else if (type == typeof (Double)) |
204 | { | 207 | { |
205 | return "float"; | 208 | return "float"; |
206 | } | 209 | } |
207 | else if (type == typeof(System.Byte[])) | 210 | else if (type == typeof (Byte[])) |
208 | { | 211 | { |
209 | return "image"; | 212 | return "image"; |
210 | } | 213 | } |
@@ -254,14 +257,14 @@ namespace OpenSim.Framework.Data.MSSQL | |||
254 | /// <returns>A Sql DB Command</returns> | 257 | /// <returns>A Sql DB Command</returns> |
255 | public IDbCommand Query(string sql, Dictionary<string, string> parameters) | 258 | public IDbCommand Query(string sql, Dictionary<string, string> parameters) |
256 | { | 259 | { |
257 | SqlCommand dbcommand = (SqlCommand)dbcon.CreateCommand(); | 260 | SqlCommand dbcommand = (SqlCommand) dbcon.CreateCommand(); |
258 | dbcommand.CommandText = sql; | 261 | dbcommand.CommandText = sql; |
259 | foreach (KeyValuePair<string, string> param in parameters) | 262 | foreach (KeyValuePair<string, string> param in parameters) |
260 | { | 263 | { |
261 | dbcommand.Parameters.AddWithValue(param.Key, param.Value); | 264 | dbcommand.Parameters.AddWithValue(param.Key, param.Value); |
262 | } | 265 | } |
263 | 266 | ||
264 | return (IDbCommand)dbcommand; | 267 | return (IDbCommand) dbcommand; |
265 | } | 268 | } |
266 | 269 | ||
267 | /// <summary> | 270 | /// <summary> |
@@ -277,20 +280,20 @@ namespace OpenSim.Framework.Data.MSSQL | |||
277 | { | 280 | { |
278 | // Region Main | 281 | // Region Main |
279 | regionprofile.regionHandle = Convert.ToUInt64(reader["regionHandle"]); | 282 | regionprofile.regionHandle = Convert.ToUInt64(reader["regionHandle"]); |
280 | regionprofile.regionName = (string)reader["regionName"]; | 283 | regionprofile.regionName = (string) reader["regionName"]; |
281 | regionprofile.UUID = new LLUUID((string)reader["uuid"]); | 284 | regionprofile.UUID = new LLUUID((string) reader["uuid"]); |
282 | 285 | ||
283 | // Secrets | 286 | // Secrets |
284 | regionprofile.regionRecvKey = (string)reader["regionRecvKey"]; | 287 | regionprofile.regionRecvKey = (string) reader["regionRecvKey"]; |
285 | regionprofile.regionSecret = (string)reader["regionSecret"]; | 288 | regionprofile.regionSecret = (string) reader["regionSecret"]; |
286 | regionprofile.regionSendKey = (string)reader["regionSendKey"]; | 289 | regionprofile.regionSendKey = (string) reader["regionSendKey"]; |
287 | 290 | ||
288 | // Region Server | 291 | // Region Server |
289 | regionprofile.regionDataURI = (string)reader["regionDataURI"]; | 292 | regionprofile.regionDataURI = (string) reader["regionDataURI"]; |
290 | regionprofile.regionOnline = false; // Needs to be pinged before this can be set. | 293 | regionprofile.regionOnline = false; // Needs to be pinged before this can be set. |
291 | regionprofile.serverIP = (string)reader["serverIP"]; | 294 | regionprofile.serverIP = (string) reader["serverIP"]; |
292 | regionprofile.serverPort = Convert.ToUInt32(reader["serverPort"]); | 295 | regionprofile.serverPort = Convert.ToUInt32(reader["serverPort"]); |
293 | regionprofile.serverURI = (string)reader["serverURI"]; | 296 | regionprofile.serverURI = (string) reader["serverURI"]; |
294 | regionprofile.httpPort = Convert.ToUInt32(reader["serverHttpPort"]); | 297 | regionprofile.httpPort = Convert.ToUInt32(reader["serverHttpPort"]); |
295 | regionprofile.remotingPort = Convert.ToUInt32(reader["serverRemotingPort"]); | 298 | regionprofile.remotingPort = Convert.ToUInt32(reader["serverRemotingPort"]); |
296 | 299 | ||
@@ -307,14 +310,14 @@ namespace OpenSim.Framework.Data.MSSQL | |||
307 | regionprofile.regionNorthOverrideHandle = Convert.ToUInt64(reader["northOverrideHandle"]); | 310 | regionprofile.regionNorthOverrideHandle = Convert.ToUInt64(reader["northOverrideHandle"]); |
308 | 311 | ||
309 | // Assets | 312 | // Assets |
310 | regionprofile.regionAssetURI = (string)reader["regionAssetURI"]; | 313 | regionprofile.regionAssetURI = (string) reader["regionAssetURI"]; |
311 | regionprofile.regionAssetRecvKey = (string)reader["regionAssetRecvKey"]; | 314 | regionprofile.regionAssetRecvKey = (string) reader["regionAssetRecvKey"]; |
312 | regionprofile.regionAssetSendKey = (string)reader["regionAssetSendKey"]; | 315 | regionprofile.regionAssetSendKey = (string) reader["regionAssetSendKey"]; |
313 | 316 | ||
314 | // Userserver | 317 | // Userserver |
315 | regionprofile.regionUserURI = (string)reader["regionUserURI"]; | 318 | regionprofile.regionUserURI = (string) reader["regionUserURI"]; |
316 | regionprofile.regionUserRecvKey = (string)reader["regionUserRecvKey"]; | 319 | regionprofile.regionUserRecvKey = (string) reader["regionUserRecvKey"]; |
317 | regionprofile.regionUserSendKey = (string)reader["regionUserSendKey"]; | 320 | regionprofile.regionUserSendKey = (string) reader["regionUserSendKey"]; |
318 | 321 | ||
319 | // World Map Addition | 322 | // World Map Addition |
320 | string tempRegionMap = reader["regionMapTexture"].ToString(); | 323 | string tempRegionMap = reader["regionMapTexture"].ToString(); |
@@ -331,7 +334,6 @@ namespace OpenSim.Framework.Data.MSSQL | |||
331 | { | 334 | { |
332 | reader.Close(); | 335 | reader.Close(); |
333 | throw new Exception("No rows to return"); | 336 | throw new Exception("No rows to return"); |
334 | |||
335 | } | 337 | } |
336 | return regionprofile; | 338 | return regionprofile; |
337 | } | 339 | } |
@@ -347,12 +349,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
347 | 349 | ||
348 | if (reader.Read()) | 350 | if (reader.Read()) |
349 | { | 351 | { |
350 | retval.UUID = new LLUUID((string)reader["UUID"]); | 352 | retval.UUID = new LLUUID((string) reader["UUID"]); |
351 | retval.username = (string)reader["username"]; | 353 | retval.username = (string) reader["username"]; |
352 | retval.surname = (string)reader["lastname"]; | 354 | retval.surname = (string) reader["lastname"]; |
353 | 355 | ||
354 | retval.passwordHash = (string)reader["passwordHash"]; | 356 | retval.passwordHash = (string) reader["passwordHash"]; |
355 | retval.passwordSalt = (string)reader["passwordSalt"]; | 357 | retval.passwordSalt = (string) reader["passwordSalt"]; |
356 | 358 | ||
357 | retval.homeRegion = Convert.ToUInt64(reader["homeRegion"].ToString()); | 359 | retval.homeRegion = Convert.ToUInt64(reader["homeRegion"].ToString()); |
358 | retval.homeLocation = new LLVector3( | 360 | retval.homeLocation = new LLVector3( |
@@ -367,18 +369,17 @@ namespace OpenSim.Framework.Data.MSSQL | |||
367 | retval.created = Convert.ToInt32(reader["created"].ToString()); | 369 | retval.created = Convert.ToInt32(reader["created"].ToString()); |
368 | retval.lastLogin = Convert.ToInt32(reader["lastLogin"].ToString()); | 370 | retval.lastLogin = Convert.ToInt32(reader["lastLogin"].ToString()); |
369 | 371 | ||
370 | retval.userInventoryURI = (string)reader["userInventoryURI"]; | 372 | retval.userInventoryURI = (string) reader["userInventoryURI"]; |
371 | retval.userAssetURI = (string)reader["userAssetURI"]; | 373 | retval.userAssetURI = (string) reader["userAssetURI"]; |
372 | 374 | ||
373 | retval.profileCanDoMask = Convert.ToUInt32(reader["profileCanDoMask"].ToString()); | 375 | retval.profileCanDoMask = Convert.ToUInt32(reader["profileCanDoMask"].ToString()); |
374 | retval.profileWantDoMask = Convert.ToUInt32(reader["profileWantDoMask"].ToString()); | 376 | retval.profileWantDoMask = Convert.ToUInt32(reader["profileWantDoMask"].ToString()); |
375 | 377 | ||
376 | retval.profileAboutText = (string)reader["profileAboutText"]; | 378 | retval.profileAboutText = (string) reader["profileAboutText"]; |
377 | retval.profileFirstText = (string)reader["profileFirstText"]; | 379 | retval.profileFirstText = (string) reader["profileFirstText"]; |
378 | |||
379 | retval.profileImage = new LLUUID((string)reader["profileImage"]); | ||
380 | retval.profileFirstImage = new LLUUID((string)reader["profileFirstImage"]); | ||
381 | 380 | ||
381 | retval.profileImage = new LLUUID((string) reader["profileImage"]); | ||
382 | retval.profileFirstImage = new LLUUID((string) reader["profileFirstImage"]); | ||
382 | } | 383 | } |
383 | else | 384 | else |
384 | { | 385 | { |
@@ -399,12 +400,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
399 | if (reader.Read()) | 400 | if (reader.Read()) |
400 | { | 401 | { |
401 | // Agent IDs | 402 | // Agent IDs |
402 | retval.UUID = new LLUUID((string)reader["UUID"]); | 403 | retval.UUID = new LLUUID((string) reader["UUID"]); |
403 | retval.sessionID = new LLUUID((string)reader["sessionID"]); | 404 | retval.sessionID = new LLUUID((string) reader["sessionID"]); |
404 | retval.secureSessionID = new LLUUID((string)reader["secureSessionID"]); | 405 | retval.secureSessionID = new LLUUID((string) reader["secureSessionID"]); |
405 | 406 | ||
406 | // Agent Who? | 407 | // Agent Who? |
407 | retval.agentIP = (string)reader["agentIP"]; | 408 | retval.agentIP = (string) reader["agentIP"]; |
408 | retval.agentPort = Convert.ToUInt32(reader["agentPort"].ToString()); | 409 | retval.agentPort = Convert.ToUInt32(reader["agentPort"].ToString()); |
409 | retval.agentOnline = Convert.ToBoolean(reader["agentOnline"].ToString()); | 410 | retval.agentOnline = Convert.ToBoolean(reader["agentOnline"].ToString()); |
410 | 411 | ||
@@ -413,9 +414,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
413 | retval.logoutTime = Convert.ToInt32(reader["logoutTime"].ToString()); | 414 | retval.logoutTime = Convert.ToInt32(reader["logoutTime"].ToString()); |
414 | 415 | ||
415 | // Current position | 416 | // Current position |
416 | retval.currentRegion = (string)reader["currentRegion"]; | 417 | retval.currentRegion = (string) reader["currentRegion"]; |
417 | retval.currentHandle = Convert.ToUInt64(reader["currentHandle"].ToString()); | 418 | retval.currentHandle = Convert.ToUInt64(reader["currentHandle"].ToString()); |
418 | LLVector3.TryParse((string)reader["currentPos"], out retval.currentPos); | 419 | LLVector3.TryParse((string) reader["currentPos"], out retval.currentPos); |
419 | } | 420 | } |
420 | else | 421 | else |
421 | { | 422 | { |
@@ -426,20 +427,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
426 | 427 | ||
427 | public AssetBase getAssetRow(IDataReader reader) | 428 | public AssetBase getAssetRow(IDataReader reader) |
428 | { | 429 | { |
429 | AssetBase asset = new AssetBase(); | 430 | AssetBase asset = new AssetBase(); |
430 | if (reader.Read()) | 431 | if (reader.Read()) |
431 | { | 432 | { |
432 | // Region Main | 433 | // Region Main |
433 | 434 | ||
434 | asset = new AssetBase(); | 435 | asset = new AssetBase(); |
435 | asset.Data = (byte[])reader["data"]; | 436 | asset.Data = (byte[]) reader["data"]; |
436 | asset.Description = (string)reader["description"]; | 437 | asset.Description = (string) reader["description"]; |
437 | asset.FullID = new LLUUID((string)reader["id"]); | 438 | asset.FullID = new LLUUID((string) reader["id"]); |
438 | asset.InvType = Convert.ToSByte(reader["invType"]); | 439 | asset.InvType = Convert.ToSByte(reader["invType"]); |
439 | asset.Local = Convert.ToBoolean(reader["local"]); // ((sbyte)reader["local"]) != 0 ? true : false; | 440 | asset.Local = Convert.ToBoolean(reader["local"]); // ((sbyte)reader["local"]) != 0 ? true : false; |
440 | asset.Name = (string)reader["name"]; | 441 | asset.Name = (string) reader["name"]; |
441 | asset.Type = Convert.ToSByte(reader["assetType"]); | 442 | asset.Type = Convert.ToSByte(reader["assetType"]); |
442 | |||
443 | } | 443 | } |
444 | else | 444 | else |
445 | { | 445 | { |
@@ -455,15 +455,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
455 | /// <returns>Successful?</returns> | 455 | /// <returns>Successful?</returns> |
456 | public bool insertRegionRow(RegionProfileData profile) | 456 | public bool insertRegionRow(RegionProfileData profile) |
457 | { | 457 | { |
458 | |||
459 | //Insert new region | 458 | //Insert new region |
460 | string sql = "INSERT INTO regions ([regionHandle], [regionName], [uuid], [regionRecvKey], [regionSecret], [regionSendKey], [regionDataURI], "; | 459 | string sql = |
461 | sql += "[serverIP], [serverPort], [serverURI], [locX], [locY], [locZ], [eastOverrideHandle], [westOverrideHandle], [southOverrideHandle], [northOverrideHandle], [regionAssetURI], [regionAssetRecvKey], "; | 460 | "INSERT INTO regions ([regionHandle], [regionName], [uuid], [regionRecvKey], [regionSecret], [regionSendKey], [regionDataURI], "; |
462 | sql += "[regionAssetSendKey], [regionUserURI], [regionUserRecvKey], [regionUserSendKey], [regionMapTexture], [serverHttpPort], [serverRemotingPort]) VALUES "; | 461 | sql += |
462 | "[serverIP], [serverPort], [serverURI], [locX], [locY], [locZ], [eastOverrideHandle], [westOverrideHandle], [southOverrideHandle], [northOverrideHandle], [regionAssetURI], [regionAssetRecvKey], "; | ||
463 | sql += | ||
464 | "[regionAssetSendKey], [regionUserURI], [regionUserRecvKey], [regionUserSendKey], [regionMapTexture], [serverHttpPort], [serverRemotingPort]) VALUES "; | ||
463 | 465 | ||
464 | sql += "(@regionHandle, @regionName, @uuid, @regionRecvKey, @regionSecret, @regionSendKey, @regionDataURI, "; | 466 | sql += "(@regionHandle, @regionName, @uuid, @regionRecvKey, @regionSecret, @regionSendKey, @regionDataURI, "; |
465 | sql += "@serverIP, @serverPort, @serverURI, @locX, @locY, @locZ, @eastOverrideHandle, @westOverrideHandle, @southOverrideHandle, @northOverrideHandle, @regionAssetURI, @regionAssetRecvKey, "; | 467 | sql += |
466 | sql += "@regionAssetSendKey, @regionUserURI, @regionUserRecvKey, @regionUserSendKey, @regionMapTexture, @serverHttpPort, @serverRemotingPort);"; | 468 | "@serverIP, @serverPort, @serverURI, @locX, @locY, @locZ, @eastOverrideHandle, @westOverrideHandle, @southOverrideHandle, @northOverrideHandle, @regionAssetURI, @regionAssetRecvKey, "; |
469 | sql += | ||
470 | "@regionAssetSendKey, @regionUserURI, @regionUserRecvKey, @regionUserSendKey, @regionMapTexture, @serverHttpPort, @serverRemotingPort);"; | ||
467 | 471 | ||
468 | Dictionary<string, string> parameters = new Dictionary<string, string>(); | 472 | Dictionary<string, string> parameters = new Dictionary<string, string>(); |
469 | 473 | ||
@@ -498,9 +502,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
498 | bool returnval = false; | 502 | bool returnval = false; |
499 | 503 | ||
500 | try | 504 | try |
501 | { | 505 | { |
502 | IDbCommand result = Query(sql, parameters); | 506 | IDbCommand result = Query(sql, parameters); |
503 | 507 | ||
504 | if (result.ExecuteNonQuery() == 1) | 508 | if (result.ExecuteNonQuery() == 1) |
505 | returnval = true; | 509 | returnval = true; |
506 | 510 | ||
@@ -509,15 +513,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
509 | catch (Exception e) | 513 | catch (Exception e) |
510 | { | 514 | { |
511 | MainLog.Instance.Error("MSSQLManager : " + e.ToString()); | 515 | MainLog.Instance.Error("MSSQLManager : " + e.ToString()); |
512 | |||
513 | } | 516 | } |
514 | 517 | ||
515 | return returnval; | 518 | return returnval; |
516 | |||
517 | } | 519 | } |
518 | 520 | ||
519 | 521 | ||
520 | |||
521 | /// <summary> | 522 | /// <summary> |
522 | /// Inserts a new row into the log database | 523 | /// Inserts a new row into the log database |
523 | /// </summary> | 524 | /// </summary> |
@@ -528,7 +529,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
528 | /// <param name="priority">How critical is this?</param> | 529 | /// <param name="priority">How critical is this?</param> |
529 | /// <param name="logMessage">Extra message info</param> | 530 | /// <param name="logMessage">Extra message info</param> |
530 | /// <returns>Saved successfully?</returns> | 531 | /// <returns>Saved successfully?</returns> |
531 | public bool insertLogRow(string serverDaemon, string target, string methodCall, string arguments, int priority, string logMessage) | 532 | public bool insertLogRow(string serverDaemon, string target, string methodCall, string arguments, int priority, |
533 | string logMessage) | ||
532 | { | 534 | { |
533 | string sql = "INSERT INTO logs ([target], [server], [method], [arguments], [priority], [message]) VALUES "; | 535 | string sql = "INSERT INTO logs ([target], [server], [method], [arguments], [priority], [message]) VALUES "; |
534 | sql += "(@target, @server, @method, @arguments, @priority, @message);"; | 536 | sql += "(@target, @server, @method, @arguments, @priority, @message);"; |
@@ -588,19 +590,26 @@ namespace OpenSim.Framework.Data.MSSQL | |||
588 | /// <param name="profileImage">UUID for profile image</param> | 590 | /// <param name="profileImage">UUID for profile image</param> |
589 | /// <param name="firstImage">UUID for firstlife image</param> | 591 | /// <param name="firstImage">UUID for firstlife image</param> |
590 | /// <returns>Success?</returns> | 592 | /// <returns>Success?</returns> |
591 | public bool insertUserRow(libsecondlife.LLUUID uuid, string username, string lastname, string passwordHash, string passwordSalt, UInt64 homeRegion, float homeLocX, float homeLocY, float homeLocZ, | 593 | public bool insertUserRow(LLUUID uuid, string username, string lastname, string passwordHash, |
592 | float homeLookAtX, float homeLookAtY, float homeLookAtZ, int created, int lastlogin, string inventoryURI, string assetURI, uint canDoMask, uint wantDoMask, string aboutText, string firstText, | 594 | string passwordSalt, UInt64 homeRegion, float homeLocX, float homeLocY, float homeLocZ, |
593 | libsecondlife.LLUUID profileImage, libsecondlife.LLUUID firstImage) | 595 | float homeLookAtX, float homeLookAtY, float homeLookAtZ, int created, int lastlogin, |
596 | string inventoryURI, string assetURI, uint canDoMask, uint wantDoMask, | ||
597 | string aboutText, string firstText, | ||
598 | LLUUID profileImage, LLUUID firstImage) | ||
594 | { | 599 | { |
595 | string sql = "INSERT INTO users "; | 600 | string sql = "INSERT INTO users "; |
596 | sql += "([UUID], [username], [lastname], [passwordHash], [passwordSalt], [homeRegion], "; | 601 | sql += "([UUID], [username], [lastname], [passwordHash], [passwordSalt], [homeRegion], "; |
597 | sql += "[homeLocationX], [homeLocationY], [homeLocationZ], [homeLookAtX], [homeLookAtY], [homeLookAtZ], [created], "; | 602 | sql += |
598 | sql += "[lastLogin], [userInventoryURI], [userAssetURI], [profileCanDoMask], [profileWantDoMask], [profileAboutText], "; | 603 | "[homeLocationX], [homeLocationY], [homeLocationZ], [homeLookAtX], [homeLookAtY], [homeLookAtZ], [created], "; |
604 | sql += | ||
605 | "[lastLogin], [userInventoryURI], [userAssetURI], [profileCanDoMask], [profileWantDoMask], [profileAboutText], "; | ||
599 | sql += "[profileFirstText], [profileImage], [profileFirstImage]) VALUES "; | 606 | sql += "[profileFirstText], [profileImage], [profileFirstImage]) VALUES "; |
600 | 607 | ||
601 | sql += "(@UUID, @username, @lastname, @passwordHash, @passwordSalt, @homeRegion, "; | 608 | sql += "(@UUID, @username, @lastname, @passwordHash, @passwordSalt, @homeRegion, "; |
602 | sql += "@homeLocationX, @homeLocationY, @homeLocationZ, @homeLookAtX, @homeLookAtY, @homeLookAtZ, @created, "; | 609 | sql += |
603 | sql += "@lastLogin, @userInventoryURI, @userAssetURI, @profileCanDoMask, @profileWantDoMask, @profileAboutText, "; | 610 | "@homeLocationX, @homeLocationY, @homeLocationZ, @homeLookAtX, @homeLookAtY, @homeLookAtZ, @created, "; |
611 | sql += | ||
612 | "@lastLogin, @userInventoryURI, @userAssetURI, @profileCanDoMask, @profileWantDoMask, @profileAboutText, "; | ||
604 | sql += "@profileFirstText, @profileImage, @profileFirstImage);"; | 613 | sql += "@profileFirstText, @profileImage, @profileFirstImage);"; |
605 | 614 | ||
606 | Dictionary<string, string> parameters = new Dictionary<string, string>(); | 615 | Dictionary<string, string> parameters = new Dictionary<string, string>(); |
@@ -624,13 +633,13 @@ namespace OpenSim.Framework.Data.MSSQL | |||
624 | parameters["profileWantDoMask"] = "0"; | 633 | parameters["profileWantDoMask"] = "0"; |
625 | parameters["profileAboutText"] = ""; | 634 | parameters["profileAboutText"] = ""; |
626 | parameters["profileFirstText"] = ""; | 635 | parameters["profileFirstText"] = ""; |
627 | parameters["profileImage"] = libsecondlife.LLUUID.Zero.ToString(); | 636 | parameters["profileImage"] = LLUUID.Zero.ToString(); |
628 | parameters["profileFirstImage"] = libsecondlife.LLUUID.Zero.ToString(); | 637 | parameters["profileFirstImage"] = LLUUID.Zero.ToString(); |
629 | 638 | ||
630 | bool returnval = false; | 639 | bool returnval = false; |
631 | 640 | ||
632 | try | 641 | try |
633 | { | 642 | { |
634 | IDbCommand result = Query(sql, parameters); | 643 | IDbCommand result = Query(sql, parameters); |
635 | 644 | ||
636 | if (result.ExecuteNonQuery() == 1) | 645 | if (result.ExecuteNonQuery() == 1) |
@@ -655,8 +664,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
655 | { | 664 | { |
656 | try | 665 | try |
657 | { | 666 | { |
658 | 667 | SqlCommand cmd = new SqlCommand(getResourceString(name), (SqlConnection) dbcon); | |
659 | SqlCommand cmd = new SqlCommand(getResourceString(name), (SqlConnection)dbcon); | ||
660 | cmd.ExecuteNonQuery(); | 668 | cmd.ExecuteNonQuery(); |
661 | cmd.Dispose(); | 669 | cmd.Dispose(); |
662 | } | 670 | } |
@@ -668,7 +676,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
668 | 676 | ||
669 | public SqlConnection getConnection() | 677 | public SqlConnection getConnection() |
670 | { | 678 | { |
671 | return (SqlConnection)dbcon; | 679 | return (SqlConnection) dbcon; |
672 | } | 680 | } |
673 | 681 | ||
674 | /// <summary> | 682 | /// <summary> |
@@ -681,14 +689,15 @@ namespace OpenSim.Framework.Data.MSSQL | |||
681 | { | 689 | { |
682 | Dictionary<string, string> param = new Dictionary<string, string>(); | 690 | Dictionary<string, string> param = new Dictionary<string, string>(); |
683 | param["dbname"] = dbcon.Database; | 691 | param["dbname"] = dbcon.Database; |
684 | IDbCommand tablesCmd = this.Query("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_CATALOG=@dbname", param); | 692 | IDbCommand tablesCmd = |
693 | Query("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_CATALOG=@dbname", param); | ||
685 | using (IDataReader tables = tablesCmd.ExecuteReader()) | 694 | using (IDataReader tables = tablesCmd.ExecuteReader()) |
686 | { | 695 | { |
687 | while (tables.Read()) | 696 | while (tables.Read()) |
688 | { | 697 | { |
689 | try | 698 | try |
690 | { | 699 | { |
691 | string tableName = (string)tables["TABLE_NAME"]; | 700 | string tableName = (string) tables["TABLE_NAME"]; |
692 | if (tableList.ContainsKey(tableName)) | 701 | if (tableList.ContainsKey(tableName)) |
693 | tableList[tableName] = tableName; | 702 | tableList[tableName] = tableName; |
694 | } | 703 | } |
@@ -704,7 +713,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
704 | 713 | ||
705 | private string getResourceString(string name) | 714 | private string getResourceString(string name) |
706 | { | 715 | { |
707 | Assembly assem = this.GetType().Assembly; | 716 | Assembly assem = GetType().Assembly; |
708 | string[] names = assem.GetManifestResourceNames(); | 717 | string[] names = assem.GetManifestResourceNames(); |
709 | 718 | ||
710 | foreach (string s in names) | 719 | foreach (string s in names) |
@@ -726,16 +735,14 @@ namespace OpenSim.Framework.Data.MSSQL | |||
726 | /// <returns>A string containing the DB provider</returns> | 735 | /// <returns>A string containing the DB provider</returns> |
727 | public string getVersion() | 736 | public string getVersion() |
728 | { | 737 | { |
729 | System.Reflection.Module module = this.GetType().Module; | 738 | Module module = GetType().Module; |
730 | string dllName = module.Assembly.ManifestModule.Name; | 739 | string dllName = module.Assembly.ManifestModule.Name; |
731 | Version dllVersion = module.Assembly.GetName().Version; | 740 | Version dllVersion = module.Assembly.GetName().Version; |
732 | 741 | ||
733 | 742 | ||
734 | return string.Format("{0}.{1}.{2}.{3}", dllVersion.Major, dllVersion.Minor, dllVersion.Build, dllVersion.Revision); | 743 | return |
744 | string.Format("{0}.{1}.{2}.{3}", dllVersion.Major, dllVersion.Minor, dllVersion.Build, | ||
745 | dllVersion.Revision); | ||
735 | } | 746 | } |
736 | |||
737 | } | 747 | } |
738 | 748 | } \ No newline at end of file | |
739 | |||
740 | |||
741 | } | ||
diff --git a/OpenSim/Framework/Data.MSSQL/MSSQLUserData.cs b/OpenSim/Framework/Data.MSSQL/MSSQLUserData.cs index eac9826..01ef559 100644 --- a/OpenSim/Framework/Data.MSSQL/MSSQLUserData.cs +++ b/OpenSim/Framework/Data.MSSQL/MSSQLUserData.cs | |||
@@ -37,7 +37,7 @@ namespace OpenSim.Framework.Data.MSSQL | |||
37 | /// <summary> | 37 | /// <summary> |
38 | /// A database interface class to a user profile storage system | 38 | /// A database interface class to a user profile storage system |
39 | /// </summary> | 39 | /// </summary> |
40 | class MSSQLUserData : IUserData | 40 | internal class MSSQLUserData : IUserData |
41 | { | 41 | { |
42 | /// <summary> | 42 | /// <summary> |
43 | /// Database manager for MySQL | 43 | /// Database manager for MySQL |
@@ -58,7 +58,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
58 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); | 58 | string settingUserId = GridDataMySqlFile.ParseFileReadValue("user_id"); |
59 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); | 59 | string settingPassword = GridDataMySqlFile.ParseFileReadValue("password"); |
60 | 60 | ||
61 | database = new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, settingPassword); | 61 | database = |
62 | new MSSQLManager(settingDataSource, settingInitialCatalog, settingPersistSecurityInfo, settingUserId, | ||
63 | settingPassword); | ||
62 | } | 64 | } |
63 | 65 | ||
64 | /// <summary> | 66 | /// <summary> |
@@ -77,11 +79,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
77 | param["first"] = user; | 79 | param["first"] = user; |
78 | param["second"] = last; | 80 | param["second"] = last; |
79 | 81 | ||
80 | IDbCommand result = database.Query("SELECT * FROM users WHERE username = @first AND lastname = @second", param); | 82 | IDbCommand result = |
83 | database.Query("SELECT * FROM users WHERE username = @first AND lastname = @second", param); | ||
81 | IDataReader reader = result.ExecuteReader(); | 84 | IDataReader reader = result.ExecuteReader(); |
82 | 85 | ||
83 | UserProfileData row = database.readUserRow(reader); | 86 | UserProfileData row = database.readUserRow(reader); |
84 | 87 | ||
85 | reader.Close(); | 88 | reader.Close(); |
86 | result.Dispose(); | 89 | result.Dispose(); |
87 | 90 | ||
@@ -96,9 +99,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
96 | } | 99 | } |
97 | } | 100 | } |
98 | 101 | ||
99 | public List<OpenSim.Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query) | 102 | public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query) |
100 | { | 103 | { |
101 | List<OpenSim.Framework.AvatarPickerAvatar> returnlist = new List<OpenSim.Framework.AvatarPickerAvatar>(); | 104 | List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>(); |
102 | string[] querysplit; | 105 | string[] querysplit; |
103 | querysplit = query.Split(' '); | 106 | querysplit = query.Split(' '); |
104 | if (querysplit.Length == 2) | 107 | if (querysplit.Length == 2) |
@@ -112,18 +115,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
112 | param["second"] = querysplit[1]; | 115 | param["second"] = querysplit[1]; |
113 | 116 | ||
114 | IDbCommand result = | 117 | IDbCommand result = |
115 | database.Query("SELECT UUID,username,surname FROM users WHERE username = @first AND lastname = @second", param); | 118 | database.Query( |
119 | "SELECT UUID,username,surname FROM users WHERE username = @first AND lastname = @second", | ||
120 | param); | ||
116 | IDataReader reader = result.ExecuteReader(); | 121 | IDataReader reader = result.ExecuteReader(); |
117 | 122 | ||
118 | 123 | ||
119 | while (reader.Read()) | 124 | while (reader.Read()) |
120 | { | 125 | { |
121 | OpenSim.Framework.AvatarPickerAvatar user = new OpenSim.Framework.AvatarPickerAvatar(); | 126 | Framework.AvatarPickerAvatar user = new Framework.AvatarPickerAvatar(); |
122 | user.AvatarID = new LLUUID((string)reader["UUID"]); | 127 | user.AvatarID = new LLUUID((string) reader["UUID"]); |
123 | user.firstName = (string)reader["username"]; | 128 | user.firstName = (string) reader["username"]; |
124 | user.lastName = (string)reader["surname"]; | 129 | user.lastName = (string) reader["surname"]; |
125 | returnlist.Add(user); | 130 | returnlist.Add(user); |
126 | |||
127 | } | 131 | } |
128 | reader.Close(); | 132 | reader.Close(); |
129 | result.Dispose(); | 133 | result.Dispose(); |
@@ -135,13 +139,9 @@ namespace OpenSim.Framework.Data.MSSQL | |||
135 | MainLog.Instance.Error(e.ToString()); | 139 | MainLog.Instance.Error(e.ToString()); |
136 | return returnlist; | 140 | return returnlist; |
137 | } | 141 | } |
138 | |||
139 | |||
140 | |||
141 | } | 142 | } |
142 | else if (querysplit.Length == 1) | 143 | else if (querysplit.Length == 1) |
143 | { | 144 | { |
144 | |||
145 | try | 145 | try |
146 | { | 146 | { |
147 | lock (database) | 147 | lock (database) |
@@ -151,18 +151,19 @@ namespace OpenSim.Framework.Data.MSSQL | |||
151 | param["second"] = querysplit[1]; | 151 | param["second"] = querysplit[1]; |
152 | 152 | ||
153 | IDbCommand result = | 153 | IDbCommand result = |
154 | database.Query("SELECT UUID,username,surname FROM users WHERE username = @first OR lastname = @second", param); | 154 | database.Query( |
155 | "SELECT UUID,username,surname FROM users WHERE username = @first OR lastname = @second", | ||
156 | param); | ||
155 | IDataReader reader = result.ExecuteReader(); | 157 | IDataReader reader = result.ExecuteReader(); |
156 | 158 | ||
157 | 159 | ||
158 | while (reader.Read()) | 160 | while (reader.Read()) |
159 | { | 161 | { |
160 | OpenSim.Framework.AvatarPickerAvatar user = new OpenSim.Framework.AvatarPickerAvatar(); | 162 | Framework.AvatarPickerAvatar user = new Framework.AvatarPickerAvatar(); |
161 | user.AvatarID = new LLUUID((string)reader["UUID"]); | 163 | user.AvatarID = new LLUUID((string) reader["UUID"]); |
162 | user.firstName = (string)reader["username"]; | 164 | user.firstName = (string) reader["username"]; |
163 | user.lastName = (string)reader["surname"]; | 165 | user.lastName = (string) reader["surname"]; |
164 | returnlist.Add(user); | 166 | returnlist.Add(user); |
165 | |||
166 | } | 167 | } |
167 | reader.Close(); | 168 | reader.Close(); |
168 | result.Dispose(); | 169 | result.Dispose(); |
@@ -268,21 +269,25 @@ namespace OpenSim.Framework.Data.MSSQL | |||
268 | /// <param name="user">The user profile to create</param> | 269 | /// <param name="user">The user profile to create</param> |
269 | public void AddNewUserProfile(UserProfileData user) | 270 | public void AddNewUserProfile(UserProfileData user) |
270 | { | 271 | { |
271 | try | 272 | try |
272 | { | 273 | { |
273 | lock (database) | 274 | lock (database) |
274 | { | 275 | { |
275 | database.insertUserRow(user.UUID, user.username, user.surname, user.passwordHash, user.passwordSalt, user.homeRegion, user.homeLocation.X, user.homeLocation.Y, user.homeLocation.Z, | 276 | database.insertUserRow(user.UUID, user.username, user.surname, user.passwordHash, user.passwordSalt, |
276 | user.homeLookAt.X, user.homeLookAt.Y, user.homeLookAt.Z, user.created, user.lastLogin, user.userInventoryURI, user.userAssetURI, user.profileCanDoMask, user.profileWantDoMask, | 277 | user.homeRegion, user.homeLocation.X, user.homeLocation.Y, |
277 | user.profileAboutText, user.profileFirstText, user.profileImage, user.profileFirstImage); | 278 | user.homeLocation.Z, |
278 | } | 279 | user.homeLookAt.X, user.homeLookAt.Y, user.homeLookAt.Z, user.created, |
279 | } | 280 | user.lastLogin, user.userInventoryURI, user.userAssetURI, |
280 | catch (Exception e) | 281 | user.profileCanDoMask, user.profileWantDoMask, |
281 | { | 282 | user.profileAboutText, user.profileFirstText, user.profileImage, |
282 | database.Reconnect(); | 283 | user.profileFirstImage); |
283 | MainLog.Instance.Error(e.ToString()); | 284 | } |
284 | } | 285 | } |
285 | 286 | catch (Exception e) | |
287 | { | ||
288 | database.Reconnect(); | ||
289 | MainLog.Instance.Error(e.ToString()); | ||
290 | } | ||
286 | } | 291 | } |
287 | 292 | ||
288 | /// <summary> | 293 | /// <summary> |
@@ -293,34 +298,33 @@ namespace OpenSim.Framework.Data.MSSQL | |||
293 | { | 298 | { |
294 | // Do nothing. | 299 | // Do nothing. |
295 | } | 300 | } |
296 | 301 | ||
297 | 302 | ||
298 | public bool UpdateUserProfile(UserProfileData user) | 303 | public bool UpdateUserProfile(UserProfileData user) |
299 | { | 304 | { |
300 | |||
301 | SqlCommand command = new SqlCommand("UPDATE users set UUID = @uuid, " + | 305 | SqlCommand command = new SqlCommand("UPDATE users set UUID = @uuid, " + |
302 | "username = @username, " + | 306 | "username = @username, " + |
303 | "lastname = @lastname," + | 307 | "lastname = @lastname," + |
304 | "passwordHash = @passwordHash," + | 308 | "passwordHash = @passwordHash," + |
305 | "passwordSalt = @passwordSalt," + | 309 | "passwordSalt = @passwordSalt," + |
306 | "homeRegion = @homeRegion," + | 310 | "homeRegion = @homeRegion," + |
307 | "homeLocationX = @homeLocationX," + | 311 | "homeLocationX = @homeLocationX," + |
308 | "homeLocationY = @homeLocationY," + | 312 | "homeLocationY = @homeLocationY," + |
309 | "homeLocationZ = @homeLocationZ," + | 313 | "homeLocationZ = @homeLocationZ," + |
310 | "homeLookAtX = @homeLookAtX," + | 314 | "homeLookAtX = @homeLookAtX," + |
311 | "homeLookAtY = @homeLookAtY," + | 315 | "homeLookAtY = @homeLookAtY," + |
312 | "homeLookAtZ = @homeLookAtZ," + | 316 | "homeLookAtZ = @homeLookAtZ," + |
313 | "created = @created," + | 317 | "created = @created," + |
314 | "lastLogin = @lastLogin," + | 318 | "lastLogin = @lastLogin," + |
315 | "userInventoryURI = @userInventoryURI," + | 319 | "userInventoryURI = @userInventoryURI," + |
316 | "userAssetURI = @userAssetURI," + | 320 | "userAssetURI = @userAssetURI," + |
317 | "profileCanDoMask = @profileCanDoMask," + | 321 | "profileCanDoMask = @profileCanDoMask," + |
318 | "profileWantDoMask = @profileWantDoMask," + | 322 | "profileWantDoMask = @profileWantDoMask," + |
319 | "profileAboutText = @profileAboutText," + | 323 | "profileAboutText = @profileAboutText," + |
320 | "profileFirstText = @profileFirstText," + | 324 | "profileFirstText = @profileFirstText," + |
321 | "profileImage = @profileImage," + | 325 | "profileImage = @profileImage," + |
322 | "profileFirstImage = @profileFirstImage where " + | 326 | "profileFirstImage = @profileFirstImage where " + |
323 | "UUID = @keyUUUID;", database.getConnection()); | 327 | "UUID = @keyUUUID;", database.getConnection()); |
324 | SqlParameter param1 = new SqlParameter("@uuid", user.UUID.ToString()); | 328 | SqlParameter param1 = new SqlParameter("@uuid", user.UUID.ToString()); |
325 | SqlParameter param2 = new SqlParameter("@username", user.username); | 329 | SqlParameter param2 = new SqlParameter("@username", user.username); |
326 | SqlParameter param3 = new SqlParameter("@lastname", user.surname); | 330 | SqlParameter param3 = new SqlParameter("@lastname", user.surname); |
@@ -341,8 +345,8 @@ namespace OpenSim.Framework.Data.MSSQL | |||
341 | SqlParameter param18 = new SqlParameter("@profileWantDoMask", Convert.ToInt32(user.profileWantDoMask)); | 345 | SqlParameter param18 = new SqlParameter("@profileWantDoMask", Convert.ToInt32(user.profileWantDoMask)); |
342 | SqlParameter param19 = new SqlParameter("@profileAboutText", user.profileAboutText); | 346 | SqlParameter param19 = new SqlParameter("@profileAboutText", user.profileAboutText); |
343 | SqlParameter param20 = new SqlParameter("@profileFirstText", user.profileFirstText); | 347 | SqlParameter param20 = new SqlParameter("@profileFirstText", user.profileFirstText); |
344 | SqlParameter param21 = new SqlParameter("@profileImage", libsecondlife.LLUUID.Zero.ToString()); | 348 | SqlParameter param21 = new SqlParameter("@profileImage", LLUUID.Zero.ToString()); |
345 | SqlParameter param22 = new SqlParameter("@profileFirstImage", libsecondlife.LLUUID.Zero.ToString()); | 349 | SqlParameter param22 = new SqlParameter("@profileFirstImage", LLUUID.Zero.ToString()); |
346 | SqlParameter param23 = new SqlParameter("@keyUUUID", user.UUID.ToString()); | 350 | SqlParameter param23 = new SqlParameter("@keyUUUID", user.UUID.ToString()); |
347 | command.Parameters.Add(param1); | 351 | command.Parameters.Add(param1); |
348 | command.Parameters.Add(param2); | 352 | command.Parameters.Add(param2); |
@@ -370,9 +374,12 @@ namespace OpenSim.Framework.Data.MSSQL | |||
370 | try | 374 | try |
371 | { | 375 | { |
372 | int affected = command.ExecuteNonQuery(); | 376 | int affected = command.ExecuteNonQuery(); |
373 | if (affected != 0) { | 377 | if (affected != 0) |
378 | { | ||
374 | return true; | 379 | return true; |
375 | } else { | 380 | } |
381 | else | ||
382 | { | ||
376 | return false; | 383 | return false; |
377 | } | 384 | } |
378 | } | 385 | } |
@@ -433,6 +440,5 @@ namespace OpenSim.Framework.Data.MSSQL | |||
433 | public void runQuery(string query) | 440 | public void runQuery(string query) |
434 | { | 441 | { |
435 | } | 442 | } |
436 | |||
437 | } | 443 | } |
438 | } | 444 | } \ No newline at end of file |