aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/MySQL
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2012-11-15 04:01:30 +0000
committerJustin Clark-Casey (justincc)2012-11-15 04:01:30 +0000
commit350cd58e5e52b88651035bcba19010807bff7870 (patch)
tree46363304a9196e43729241cd0a88a4aefba04bad /OpenSim/Data/MySQL
parentImprove inventory folder version updating for mssql database plugin. (diff)
downloadopensim-SC-350cd58e5e52b88651035bcba19010807bff7870.zip
opensim-SC-350cd58e5e52b88651035bcba19010807bff7870.tar.gz
opensim-SC-350cd58e5e52b88651035bcba19010807bff7870.tar.bz2
opensim-SC-350cd58e5e52b88651035bcba19010807bff7870.tar.xz
refactor: move common inventory folder version update code to parent class in mysql, mssql and sqlite database plugins
Diffstat (limited to 'OpenSim/Data/MySQL')
-rw-r--r--OpenSim/Data/MySQL/MySQLXInventoryData.cs51
1 files changed, 9 insertions, 42 deletions
diff --git a/OpenSim/Data/MySQL/MySQLXInventoryData.cs b/OpenSim/Data/MySQL/MySQLXInventoryData.cs
index 7a3b5b4..c74033e 100644
--- a/OpenSim/Data/MySQL/MySQLXInventoryData.cs
+++ b/OpenSim/Data/MySQL/MySQLXInventoryData.cs
@@ -122,7 +122,7 @@ namespace OpenSim.Data.MySQL
122 } 122 }
123 } 123 }
124 124
125 public class MySqlItemHandler : MySQLGenericTableHandler<XInventoryItem> 125 public class MySqlItemHandler : MySqlInventoryHandler<XInventoryItem>
126 { 126 {
127// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 127// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
128 128
@@ -241,47 +241,9 @@ namespace OpenSim.Data.MySQL
241 241
242 return true; 242 return true;
243 } 243 }
244
245 private bool IncrementFolderVersion(UUID folderID)
246 {
247 return IncrementFolderVersion(folderID.ToString());
248 }
249
250 private bool IncrementFolderVersion(string folderID)
251 {
252// m_log.DebugFormat("[MYSQL ITEM HANDLER]: Incrementing version on folder {0}", folderID);
253// Util.PrintCallStack();
254
255 using (MySqlConnection dbcon = new MySqlConnection(m_connectionString))
256 {
257 dbcon.Open();
258
259 using (MySqlCommand cmd = new MySqlCommand())
260 {
261 cmd.Connection = dbcon;
262
263 cmd.CommandText = String.Format("update inventoryfolders set version=version+1 where folderID = ?folderID");
264 cmd.Parameters.AddWithValue("?folderID", folderID);
265
266 try
267 {
268 cmd.ExecuteNonQuery();
269 }
270 catch (Exception)
271 {
272 return false;
273 }
274 cmd.Dispose();
275 }
276
277 dbcon.Close();
278 }
279
280 return true;
281 }
282 } 244 }
283 245
284 public class MySqlFolderHandler : MySQLGenericTableHandler<XInventoryFolder> 246 public class MySqlFolderHandler : MySqlInventoryHandler<XInventoryFolder>
285 { 247 {
286// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 248// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
287 249
@@ -326,13 +288,18 @@ namespace OpenSim.Data.MySQL
326 288
327 return true; 289 return true;
328 } 290 }
291 }
292
293 public class MySqlInventoryHandler<T> : MySQLGenericTableHandler<T> where T: class, new()
294 {
295 public MySqlInventoryHandler(string c, string t, string m) : base(c, t, m) {}
329 296
330 private bool IncrementFolderVersion(UUID folderID) 297 protected bool IncrementFolderVersion(UUID folderID)
331 { 298 {
332 return IncrementFolderVersion(folderID.ToString()); 299 return IncrementFolderVersion(folderID.ToString());
333 } 300 }
334 301
335 private bool IncrementFolderVersion(string folderID) 302 protected bool IncrementFolderVersion(string folderID)
336 { 303 {
337// m_log.DebugFormat("[MYSQL FOLDER HANDLER]: Incrementing version on folder {0}", folderID); 304// m_log.DebugFormat("[MYSQL FOLDER HANDLER]: Incrementing version on folder {0}", folderID);
338// Util.PrintCallStack(); 305// Util.PrintCallStack();