diff options
Diffstat (limited to 'OpenSim/Data')
-rw-r--r-- | OpenSim/Data/AssetDataBase.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/IAssetData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/IUserAccountData.cs | 1 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLAvatarData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLGenericTableHandler.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLGridUserData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLManager.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLPresenceData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLUserAccountData.cs | 5 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLXInventoryData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLSimulationData.cs | 30 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLUserAccountData.cs | 41 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/Resources/RegionStore.migrations | 2 | ||||
-rw-r--r-- | OpenSim/Data/Null/NullUserAccountData.cs | 5 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteUserAccountData.cs | 5 |
18 files changed, 83 insertions, 40 deletions
diff --git a/OpenSim/Data/AssetDataBase.cs b/OpenSim/Data/AssetDataBase.cs index e1a810c..b4ae913 100644 --- a/OpenSim/Data/AssetDataBase.cs +++ b/OpenSim/Data/AssetDataBase.cs | |||
@@ -38,7 +38,7 @@ namespace OpenSim.Data | |||
38 | { | 38 | { |
39 | public abstract AssetBase GetAsset(UUID uuid); | 39 | public abstract AssetBase GetAsset(UUID uuid); |
40 | 40 | ||
41 | public abstract void StoreAsset(AssetBase asset); | 41 | public abstract bool StoreAsset(AssetBase asset); |
42 | public abstract bool ExistsAsset(UUID uuid); | 42 | public abstract bool ExistsAsset(UUID uuid); |
43 | 43 | ||
44 | public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count); | 44 | public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count); |
diff --git a/OpenSim/Data/IAssetData.cs b/OpenSim/Data/IAssetData.cs index f31b215c..0c8eadd 100644 --- a/OpenSim/Data/IAssetData.cs +++ b/OpenSim/Data/IAssetData.cs | |||
@@ -34,7 +34,7 @@ namespace OpenSim.Data | |||
34 | public interface IAssetDataPlugin : IPlugin | 34 | public interface IAssetDataPlugin : IPlugin |
35 | { | 35 | { |
36 | AssetBase GetAsset(UUID uuid); | 36 | AssetBase GetAsset(UUID uuid); |
37 | void StoreAsset(AssetBase asset); | 37 | bool StoreAsset(AssetBase asset); |
38 | bool ExistsAsset(UUID uuid); | 38 | bool ExistsAsset(UUID uuid); |
39 | List<AssetMetadata> FetchAssetMetadataSet(int start, int count); | 39 | List<AssetMetadata> FetchAssetMetadataSet(int start, int count); |
40 | void Initialise(string connect); | 40 | void Initialise(string connect); |
diff --git a/OpenSim/Data/IUserAccountData.cs b/OpenSim/Data/IUserAccountData.cs index 906ba6c..bc7eda7 100644 --- a/OpenSim/Data/IUserAccountData.cs +++ b/OpenSim/Data/IUserAccountData.cs | |||
@@ -50,5 +50,6 @@ namespace OpenSim.Data | |||
50 | bool Store(UserAccountData data); | 50 | bool Store(UserAccountData data); |
51 | bool Delete(string field, string val); | 51 | bool Delete(string field, string val); |
52 | UserAccountData[] GetUsers(UUID scopeID, string query); | 52 | UserAccountData[] GetUsers(UUID scopeID, string query); |
53 | UserAccountData[] GetUsersWhere(UUID scopeID, string where); | ||
53 | } | 54 | } |
54 | } | 55 | } |
diff --git a/OpenSim/Data/MSSQL/MSSQLAssetData.cs b/OpenSim/Data/MSSQL/MSSQLAssetData.cs index c7488d8..c882555 100644 --- a/OpenSim/Data/MSSQL/MSSQLAssetData.cs +++ b/OpenSim/Data/MSSQL/MSSQLAssetData.cs | |||
@@ -143,7 +143,7 @@ namespace OpenSim.Data.MSSQL | |||
143 | /// Create asset in m_database | 143 | /// Create asset in m_database |
144 | /// </summary> | 144 | /// </summary> |
145 | /// <param name="asset">the asset</param> | 145 | /// <param name="asset">the asset</param> |
146 | override public void StoreAsset(AssetBase asset) | 146 | override public bool StoreAsset(AssetBase asset) |
147 | { | 147 | { |
148 | 148 | ||
149 | string sql = | 149 | string sql = |
@@ -192,10 +192,12 @@ namespace OpenSim.Data.MSSQL | |||
192 | try | 192 | try |
193 | { | 193 | { |
194 | command.ExecuteNonQuery(); | 194 | command.ExecuteNonQuery(); |
195 | return true; | ||
195 | } | 196 | } |
196 | catch(Exception e) | 197 | catch(Exception e) |
197 | { | 198 | { |
198 | m_log.Error("[ASSET DB]: Error storing item :" + e.Message); | 199 | m_log.Error("[ASSET DB]: Error storing item :" + e.Message); |
200 | return false; | ||
199 | } | 201 | } |
200 | } | 202 | } |
201 | } | 203 | } |
diff --git a/OpenSim/Data/MSSQL/MSSQLAvatarData.cs b/OpenSim/Data/MSSQL/MSSQLAvatarData.cs index 301b424..49a6b09 100644 --- a/OpenSim/Data/MSSQL/MSSQLAvatarData.cs +++ b/OpenSim/Data/MSSQL/MSSQLAvatarData.cs | |||
@@ -43,7 +43,7 @@ namespace OpenSim.Data.MSSQL | |||
43 | public class MSSQLAvatarData : MSSQLGenericTableHandler<AvatarBaseData>, | 43 | public class MSSQLAvatarData : MSSQLGenericTableHandler<AvatarBaseData>, |
44 | IAvatarData | 44 | IAvatarData |
45 | { | 45 | { |
46 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 46 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
47 | 47 | ||
48 | public MSSQLAvatarData(string connectionString, string realm) : | 48 | public MSSQLAvatarData(string connectionString, string realm) : |
49 | base(connectionString, realm, "Avatar") | 49 | base(connectionString, realm, "Avatar") |
diff --git a/OpenSim/Data/MSSQL/MSSQLGenericTableHandler.cs b/OpenSim/Data/MSSQL/MSSQLGenericTableHandler.cs index 4145d95..8f471c4 100644 --- a/OpenSim/Data/MSSQL/MSSQLGenericTableHandler.cs +++ b/OpenSim/Data/MSSQL/MSSQLGenericTableHandler.cs | |||
@@ -40,8 +40,8 @@ namespace OpenSim.Data.MSSQL | |||
40 | { | 40 | { |
41 | public class MSSQLGenericTableHandler<T> where T : class, new() | 41 | public class MSSQLGenericTableHandler<T> where T : class, new() |
42 | { | 42 | { |
43 | // private static readonly ILog m_log = | 43 | private static readonly ILog m_log = |
44 | // LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 44 | LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
45 | 45 | ||
46 | protected string m_ConnectionString; | 46 | protected string m_ConnectionString; |
47 | protected MSSQLManager m_database; //used for parameter type translation | 47 | protected MSSQLManager m_database; //used for parameter type translation |
diff --git a/OpenSim/Data/MSSQL/MSSQLGridUserData.cs b/OpenSim/Data/MSSQL/MSSQLGridUserData.cs index 9e215f9..1870273 100644 --- a/OpenSim/Data/MSSQL/MSSQLGridUserData.cs +++ b/OpenSim/Data/MSSQL/MSSQLGridUserData.cs | |||
@@ -43,7 +43,7 @@ namespace OpenSim.Data.MSSQL | |||
43 | public class MSSQLGridUserData : MSSQLGenericTableHandler<GridUserData>, | 43 | public class MSSQLGridUserData : MSSQLGenericTableHandler<GridUserData>, |
44 | IGridUserData | 44 | IGridUserData |
45 | { | 45 | { |
46 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 46 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
47 | 47 | ||
48 | public MSSQLGridUserData(string connectionString, string realm) : | 48 | public MSSQLGridUserData(string connectionString, string realm) : |
49 | base(connectionString, realm, "GridUserStore") | 49 | base(connectionString, realm, "GridUserStore") |
diff --git a/OpenSim/Data/MSSQL/MSSQLManager.cs b/OpenSim/Data/MSSQL/MSSQLManager.cs index cf963e3..575fd21 100644 --- a/OpenSim/Data/MSSQL/MSSQLManager.cs +++ b/OpenSim/Data/MSSQL/MSSQLManager.cs | |||
@@ -41,7 +41,7 @@ namespace OpenSim.Data.MSSQL | |||
41 | /// </summary> | 41 | /// </summary> |
42 | public class MSSQLManager | 42 | public class MSSQLManager |
43 | { | 43 | { |
44 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 44 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
45 | 45 | ||
46 | /// <summary> | 46 | /// <summary> |
47 | /// Connection string for ADO.net | 47 | /// Connection string for ADO.net |
@@ -180,6 +180,8 @@ namespace OpenSim.Data.MSSQL | |||
180 | return parameter; | 180 | return parameter; |
181 | } | 181 | } |
182 | 182 | ||
183 | private static readonly Dictionary<string, string> emptyDictionary = new Dictionary<string, string>(); | ||
184 | |||
183 | /// <summary> | 185 | /// <summary> |
184 | /// Checks if we need to do some migrations to the database | 186 | /// Checks if we need to do some migrations to the database |
185 | /// </summary> | 187 | /// </summary> |
diff --git a/OpenSim/Data/MSSQL/MSSQLPresenceData.cs b/OpenSim/Data/MSSQL/MSSQLPresenceData.cs index 8068d23..e7b3d9c 100644 --- a/OpenSim/Data/MSSQL/MSSQLPresenceData.cs +++ b/OpenSim/Data/MSSQL/MSSQLPresenceData.cs | |||
@@ -43,7 +43,7 @@ namespace OpenSim.Data.MSSQL | |||
43 | public class MSSQLPresenceData : MSSQLGenericTableHandler<PresenceData>, | 43 | public class MSSQLPresenceData : MSSQLGenericTableHandler<PresenceData>, |
44 | IPresenceData | 44 | IPresenceData |
45 | { | 45 | { |
46 | // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 46 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
47 | 47 | ||
48 | public MSSQLPresenceData(string connectionString, string realm) : | 48 | public MSSQLPresenceData(string connectionString, string realm) : |
49 | base(connectionString, realm, "Presence") | 49 | base(connectionString, realm, "Presence") |
diff --git a/OpenSim/Data/MSSQL/MSSQLUserAccountData.cs b/OpenSim/Data/MSSQL/MSSQLUserAccountData.cs index e7c8dc5..f24b441 100644 --- a/OpenSim/Data/MSSQL/MSSQLUserAccountData.cs +++ b/OpenSim/Data/MSSQL/MSSQLUserAccountData.cs | |||
@@ -238,5 +238,10 @@ namespace OpenSim.Data.MSSQL | |||
238 | return DoQuery(cmd); | 238 | return DoQuery(cmd); |
239 | } | 239 | } |
240 | } | 240 | } |
241 | |||
242 | public UserAccountData[] GetUsersWhere(UUID scopeID, string where) | ||
243 | { | ||
244 | return null; | ||
245 | } | ||
241 | } | 246 | } |
242 | } | 247 | } |
diff --git a/OpenSim/Data/MSSQL/MSSQLXInventoryData.cs b/OpenSim/Data/MSSQL/MSSQLXInventoryData.cs index 10b0f29..1f6994d 100644 --- a/OpenSim/Data/MSSQL/MSSQLXInventoryData.cs +++ b/OpenSim/Data/MSSQL/MSSQLXInventoryData.cs | |||
@@ -40,8 +40,8 @@ namespace OpenSim.Data.MSSQL | |||
40 | { | 40 | { |
41 | public class MSSQLXInventoryData : IXInventoryData | 41 | public class MSSQLXInventoryData : IXInventoryData |
42 | { | 42 | { |
43 | // private static readonly ILog m_log = LogManager.GetLogger( | 43 | private static readonly ILog m_log = LogManager.GetLogger( |
44 | // MethodBase.GetCurrentMethod().DeclaringType); | 44 | MethodBase.GetCurrentMethod().DeclaringType); |
45 | 45 | ||
46 | private MSSQLGenericTableHandler<XInventoryFolder> m_Folders; | 46 | private MSSQLGenericTableHandler<XInventoryFolder> m_Folders; |
47 | private MSSQLItemHandler m_Items; | 47 | private MSSQLItemHandler m_Items; |
diff --git a/OpenSim/Data/MySQL/MySQLAssetData.cs b/OpenSim/Data/MySQL/MySQLAssetData.cs index e740232..94e2da4 100644 --- a/OpenSim/Data/MySQL/MySQLAssetData.cs +++ b/OpenSim/Data/MySQL/MySQLAssetData.cs | |||
@@ -155,7 +155,7 @@ namespace OpenSim.Data.MySQL | |||
155 | /// </summary> | 155 | /// </summary> |
156 | /// <param name="asset">Asset UUID to create</param> | 156 | /// <param name="asset">Asset UUID to create</param> |
157 | /// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks> | 157 | /// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks> |
158 | override public void StoreAsset(AssetBase asset) | 158 | override public bool StoreAsset(AssetBase asset) |
159 | { | 159 | { |
160 | lock (m_dbLock) | 160 | lock (m_dbLock) |
161 | { | 161 | { |
@@ -203,12 +203,14 @@ namespace OpenSim.Data.MySQL | |||
203 | cmd.Parameters.AddWithValue("?data", asset.Data); | 203 | cmd.Parameters.AddWithValue("?data", asset.Data); |
204 | cmd.ExecuteNonQuery(); | 204 | cmd.ExecuteNonQuery(); |
205 | cmd.Dispose(); | 205 | cmd.Dispose(); |
206 | return true; | ||
206 | } | 207 | } |
207 | } | 208 | } |
208 | catch (Exception e) | 209 | catch (Exception e) |
209 | { | 210 | { |
210 | m_log.ErrorFormat("[ASSET DB]: MySQL failure creating asset {0} with name \"{1}\". Error: {2}", | 211 | m_log.ErrorFormat("[ASSET DB]: MySQL failure creating asset {0} with name \"{1}\". Error: {2}", |
211 | asset.FullID, asset.Name, e.Message); | 212 | asset.FullID, asset.Name, e.Message); |
213 | return false; | ||
212 | } | 214 | } |
213 | } | 215 | } |
214 | } | 216 | } |
diff --git a/OpenSim/Data/MySQL/MySQLSimulationData.cs b/OpenSim/Data/MySQL/MySQLSimulationData.cs index e14d775..3306968 100644 --- a/OpenSim/Data/MySQL/MySQLSimulationData.cs +++ b/OpenSim/Data/MySQL/MySQLSimulationData.cs | |||
@@ -66,7 +66,7 @@ namespace OpenSim.Data.MySQL | |||
66 | Initialise(connectionString); | 66 | Initialise(connectionString); |
67 | } | 67 | } |
68 | 68 | ||
69 | public void Initialise(string connectionString) | 69 | public virtual void Initialise(string connectionString) |
70 | { | 70 | { |
71 | m_connectionString = connectionString; | 71 | m_connectionString = connectionString; |
72 | 72 | ||
@@ -130,7 +130,7 @@ namespace OpenSim.Data.MySQL | |||
130 | 130 | ||
131 | public void Dispose() {} | 131 | public void Dispose() {} |
132 | 132 | ||
133 | public void StoreObject(SceneObjectGroup obj, UUID regionUUID) | 133 | public virtual void StoreObject(SceneObjectGroup obj, UUID regionUUID) |
134 | { | 134 | { |
135 | uint flags = obj.RootPart.GetEffectiveObjectFlags(); | 135 | uint flags = obj.RootPart.GetEffectiveObjectFlags(); |
136 | 136 | ||
@@ -258,7 +258,7 @@ namespace OpenSim.Data.MySQL | |||
258 | } | 258 | } |
259 | } | 259 | } |
260 | 260 | ||
261 | public void RemoveObject(UUID obj, UUID regionUUID) | 261 | public virtual void RemoveObject(UUID obj, UUID regionUUID) |
262 | { | 262 | { |
263 | // m_log.DebugFormat("[REGION DB]: Deleting scene object {0} from {1} in database", obj, regionUUID); | 263 | // m_log.DebugFormat("[REGION DB]: Deleting scene object {0} from {1} in database", obj, regionUUID); |
264 | 264 | ||
@@ -407,7 +407,7 @@ namespace OpenSim.Data.MySQL | |||
407 | } | 407 | } |
408 | } | 408 | } |
409 | 409 | ||
410 | public List<SceneObjectGroup> LoadObjects(UUID regionID) | 410 | public virtual List<SceneObjectGroup> LoadObjects(UUID regionID) |
411 | { | 411 | { |
412 | const int ROWS_PER_QUERY = 5000; | 412 | const int ROWS_PER_QUERY = 5000; |
413 | 413 | ||
@@ -576,7 +576,7 @@ namespace OpenSim.Data.MySQL | |||
576 | } | 576 | } |
577 | } | 577 | } |
578 | 578 | ||
579 | public void StoreTerrain(double[,] ter, UUID regionID) | 579 | public virtual void StoreTerrain(double[,] ter, UUID regionID) |
580 | { | 580 | { |
581 | m_log.Info("[REGION DB]: Storing terrain"); | 581 | m_log.Info("[REGION DB]: Storing terrain"); |
582 | 582 | ||
@@ -605,7 +605,7 @@ namespace OpenSim.Data.MySQL | |||
605 | } | 605 | } |
606 | } | 606 | } |
607 | 607 | ||
608 | public double[,] LoadTerrain(UUID regionID) | 608 | public virtual double[,] LoadTerrain(UUID regionID) |
609 | { | 609 | { |
610 | double[,] terrain = null; | 610 | double[,] terrain = null; |
611 | 611 | ||
@@ -655,7 +655,7 @@ namespace OpenSim.Data.MySQL | |||
655 | return terrain; | 655 | return terrain; |
656 | } | 656 | } |
657 | 657 | ||
658 | public void RemoveLandObject(UUID globalID) | 658 | public virtual void RemoveLandObject(UUID globalID) |
659 | { | 659 | { |
660 | lock (m_dbLock) | 660 | lock (m_dbLock) |
661 | { | 661 | { |
@@ -674,7 +674,7 @@ namespace OpenSim.Data.MySQL | |||
674 | } | 674 | } |
675 | } | 675 | } |
676 | 676 | ||
677 | public void StoreLandObject(ILandObject parcel) | 677 | public virtual void StoreLandObject(ILandObject parcel) |
678 | { | 678 | { |
679 | lock (m_dbLock) | 679 | lock (m_dbLock) |
680 | { | 680 | { |
@@ -731,7 +731,7 @@ namespace OpenSim.Data.MySQL | |||
731 | } | 731 | } |
732 | } | 732 | } |
733 | 733 | ||
734 | public RegionLightShareData LoadRegionWindlightSettings(UUID regionUUID) | 734 | public virtual RegionLightShareData LoadRegionWindlightSettings(UUID regionUUID) |
735 | { | 735 | { |
736 | RegionLightShareData nWP = new RegionLightShareData(); | 736 | RegionLightShareData nWP = new RegionLightShareData(); |
737 | nWP.OnSave += StoreRegionWindlightSettings; | 737 | nWP.OnSave += StoreRegionWindlightSettings; |
@@ -828,7 +828,7 @@ namespace OpenSim.Data.MySQL | |||
828 | return nWP; | 828 | return nWP; |
829 | } | 829 | } |
830 | 830 | ||
831 | public RegionSettings LoadRegionSettings(UUID regionUUID) | 831 | public virtual RegionSettings LoadRegionSettings(UUID regionUUID) |
832 | { | 832 | { |
833 | RegionSettings rs = null; | 833 | RegionSettings rs = null; |
834 | 834 | ||
@@ -866,7 +866,7 @@ namespace OpenSim.Data.MySQL | |||
866 | return rs; | 866 | return rs; |
867 | } | 867 | } |
868 | 868 | ||
869 | public void StoreRegionWindlightSettings(RegionLightShareData wl) | 869 | public virtual void StoreRegionWindlightSettings(RegionLightShareData wl) |
870 | { | 870 | { |
871 | using (MySqlConnection dbcon = new MySqlConnection(m_connectionString)) | 871 | using (MySqlConnection dbcon = new MySqlConnection(m_connectionString)) |
872 | { | 872 | { |
@@ -969,7 +969,7 @@ namespace OpenSim.Data.MySQL | |||
969 | } | 969 | } |
970 | } | 970 | } |
971 | 971 | ||
972 | public void RemoveRegionWindlightSettings(UUID regionID) | 972 | public virtual void RemoveRegionWindlightSettings(UUID regionID) |
973 | { | 973 | { |
974 | using (MySqlConnection dbcon = new MySqlConnection(m_connectionString)) | 974 | using (MySqlConnection dbcon = new MySqlConnection(m_connectionString)) |
975 | { | 975 | { |
@@ -984,7 +984,7 @@ namespace OpenSim.Data.MySQL | |||
984 | } | 984 | } |
985 | } | 985 | } |
986 | 986 | ||
987 | public void StoreRegionSettings(RegionSettings rs) | 987 | public virtual void StoreRegionSettings(RegionSettings rs) |
988 | { | 988 | { |
989 | lock (m_dbLock) | 989 | lock (m_dbLock) |
990 | { | 990 | { |
@@ -1036,7 +1036,7 @@ namespace OpenSim.Data.MySQL | |||
1036 | } | 1036 | } |
1037 | } | 1037 | } |
1038 | 1038 | ||
1039 | public List<LandData> LoadLandObjects(UUID regionUUID) | 1039 | public virtual List<LandData> LoadLandObjects(UUID regionUUID) |
1040 | { | 1040 | { |
1041 | List<LandData> landData = new List<LandData>(); | 1041 | List<LandData> landData = new List<LandData>(); |
1042 | 1042 | ||
@@ -1802,7 +1802,7 @@ namespace OpenSim.Data.MySQL | |||
1802 | cmd.Parameters.AddWithValue("Media", null == s.Media ? null : s.Media.ToXml()); | 1802 | cmd.Parameters.AddWithValue("Media", null == s.Media ? null : s.Media.ToXml()); |
1803 | } | 1803 | } |
1804 | 1804 | ||
1805 | public void StorePrimInventory(UUID primID, ICollection<TaskInventoryItem> items) | 1805 | public virtual void StorePrimInventory(UUID primID, ICollection<TaskInventoryItem> items) |
1806 | { | 1806 | { |
1807 | lock (m_dbLock) | 1807 | lock (m_dbLock) |
1808 | { | 1808 | { |
diff --git a/OpenSim/Data/MySQL/MySQLUserAccountData.cs b/OpenSim/Data/MySQL/MySQLUserAccountData.cs index aa69d68..a621d84 100644 --- a/OpenSim/Data/MySQL/MySQLUserAccountData.cs +++ b/OpenSim/Data/MySQL/MySQLUserAccountData.cs | |||
@@ -46,17 +46,21 @@ namespace OpenSim.Data.MySQL | |||
46 | { | 46 | { |
47 | string[] words = query.Split(new char[] {' '}); | 47 | string[] words = query.Split(new char[] {' '}); |
48 | 48 | ||
49 | bool valid = false; | ||
50 | |||
49 | for (int i = 0 ; i < words.Length ; i++) | 51 | for (int i = 0 ; i < words.Length ; i++) |
50 | { | 52 | { |
51 | if (words[i].Length < 3) | 53 | if (words[i].Length > 2) |
52 | { | 54 | valid = true; |
53 | if (i != words.Length - 1) | 55 | // if (words[i].Length < 3) |
54 | Array.Copy(words, i + 1, words, i, words.Length - i - 1); | 56 | // { |
55 | Array.Resize(ref words, words.Length - 1); | 57 | // if (i != words.Length - 1) |
56 | } | 58 | // Array.Copy(words, i + 1, words, i, words.Length - i - 1); |
59 | // Array.Resize(ref words, words.Length - 1); | ||
60 | // } | ||
57 | } | 61 | } |
58 | 62 | ||
59 | if (words.Length == 0) | 63 | if ((!valid) || words.Length == 0) |
60 | return new UserAccountData[0]; | 64 | return new UserAccountData[0]; |
61 | 65 | ||
62 | if (words.Length > 2) | 66 | if (words.Length > 2) |
@@ -67,17 +71,32 @@ namespace OpenSim.Data.MySQL | |||
67 | if (words.Length == 1) | 71 | if (words.Length == 1) |
68 | { | 72 | { |
69 | cmd.CommandText = String.Format("select * from {0} where (ScopeID=?ScopeID or ScopeID='00000000-0000-0000-0000-000000000000') and (FirstName like ?search or LastName like ?search)", m_Realm); | 73 | cmd.CommandText = String.Format("select * from {0} where (ScopeID=?ScopeID or ScopeID='00000000-0000-0000-0000-000000000000') and (FirstName like ?search or LastName like ?search)", m_Realm); |
70 | cmd.Parameters.AddWithValue("?search", "%" + words[0] + "%"); | 74 | cmd.Parameters.AddWithValue("?search", words[0] + "%"); |
71 | cmd.Parameters.AddWithValue("?ScopeID", scopeID.ToString()); | 75 | cmd.Parameters.AddWithValue("?ScopeID", scopeID.ToString()); |
72 | } | 76 | } |
73 | else | 77 | else |
74 | { | 78 | { |
75 | cmd.CommandText = String.Format("select * from {0} where (ScopeID=?ScopeID or ScopeID='00000000-0000-0000-0000-000000000000') and (FirstName like ?searchFirst or LastName like ?searchLast)", m_Realm); | 79 | cmd.CommandText = String.Format("select * from {0} where (ScopeID=?ScopeID or ScopeID='00000000-0000-0000-0000-000000000000') and (FirstName like ?searchFirst and LastName like ?searchLast)", m_Realm); |
76 | cmd.Parameters.AddWithValue("?searchFirst", "%" + words[0] + "%"); | 80 | cmd.Parameters.AddWithValue("?searchFirst", words[0] + "%"); |
77 | cmd.Parameters.AddWithValue("?searchLast", "%" + words[1] + "%"); | 81 | cmd.Parameters.AddWithValue("?searchLast", words[1] + "%"); |
82 | cmd.Parameters.AddWithValue("?ScopeID", scopeID.ToString()); | ||
83 | } | ||
84 | |||
85 | return DoQuery(cmd); | ||
86 | } | ||
87 | |||
88 | public UserAccountData[] GetUsersWhere(UUID scopeID, string where) | ||
89 | { | ||
90 | MySqlCommand cmd = new MySqlCommand(); | ||
91 | |||
92 | if (scopeID != UUID.Zero) | ||
93 | { | ||
94 | where = "(ScopeID=?ScopeID or ScopeID='00000000-0000-0000-0000-000000000000') and (" + where + ")"; | ||
78 | cmd.Parameters.AddWithValue("?ScopeID", scopeID.ToString()); | 95 | cmd.Parameters.AddWithValue("?ScopeID", scopeID.ToString()); |
79 | } | 96 | } |
80 | 97 | ||
98 | cmd.CommandText = String.Format("select * from {0} where " + where, m_Realm); | ||
99 | |||
81 | return DoQuery(cmd); | 100 | return DoQuery(cmd); |
82 | } | 101 | } |
83 | } | 102 | } |
diff --git a/OpenSim/Data/MySQL/Resources/RegionStore.migrations b/OpenSim/Data/MySQL/Resources/RegionStore.migrations index ba8d538..645f4e8 100644 --- a/OpenSim/Data/MySQL/Resources/RegionStore.migrations +++ b/OpenSim/Data/MySQL/Resources/RegionStore.migrations | |||
@@ -717,7 +717,7 @@ ALTER TABLE regionsettings ADD COLUMN loaded_creation_datetime int unsigned NOT | |||
717 | 717 | ||
718 | COMMIT; | 718 | COMMIT; |
719 | 719 | ||
720 | :VERSION 32 | 720 | :VERSION 32 #--------------------- |
721 | 721 | ||
722 | BEGIN; | 722 | BEGIN; |
723 | CREATE TABLE `regionwindlight` ( | 723 | CREATE TABLE `regionwindlight` ( |
diff --git a/OpenSim/Data/Null/NullUserAccountData.cs b/OpenSim/Data/Null/NullUserAccountData.cs index ec54dba..241616b 100644 --- a/OpenSim/Data/Null/NullUserAccountData.cs +++ b/OpenSim/Data/Null/NullUserAccountData.cs | |||
@@ -193,5 +193,10 @@ namespace OpenSim.Data.Null | |||
193 | 193 | ||
194 | return false; | 194 | return false; |
195 | } | 195 | } |
196 | |||
197 | public UserAccountData[] GetUsersWhere(UUID scopeID, string where) | ||
198 | { | ||
199 | return null; | ||
200 | } | ||
196 | } | 201 | } |
197 | } | 202 | } |
diff --git a/OpenSim/Data/SQLite/SQLiteAssetData.cs b/OpenSim/Data/SQLite/SQLiteAssetData.cs index 5b71897..9a4eb76 100644 --- a/OpenSim/Data/SQLite/SQLiteAssetData.cs +++ b/OpenSim/Data/SQLite/SQLiteAssetData.cs | |||
@@ -124,7 +124,7 @@ namespace OpenSim.Data.SQLite | |||
124 | /// Create an asset | 124 | /// Create an asset |
125 | /// </summary> | 125 | /// </summary> |
126 | /// <param name="asset">Asset Base</param> | 126 | /// <param name="asset">Asset Base</param> |
127 | override public void StoreAsset(AssetBase asset) | 127 | override public bool StoreAsset(AssetBase asset) |
128 | { | 128 | { |
129 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); | 129 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); |
130 | if (ExistsAsset(asset.FullID)) | 130 | if (ExistsAsset(asset.FullID)) |
@@ -146,6 +146,7 @@ namespace OpenSim.Data.SQLite | |||
146 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 146 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
147 | 147 | ||
148 | cmd.ExecuteNonQuery(); | 148 | cmd.ExecuteNonQuery(); |
149 | return true; | ||
149 | } | 150 | } |
150 | } | 151 | } |
151 | } | 152 | } |
@@ -166,6 +167,7 @@ namespace OpenSim.Data.SQLite | |||
166 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 167 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
167 | 168 | ||
168 | cmd.ExecuteNonQuery(); | 169 | cmd.ExecuteNonQuery(); |
170 | return true; | ||
169 | } | 171 | } |
170 | } | 172 | } |
171 | } | 173 | } |
diff --git a/OpenSim/Data/SQLite/SQLiteUserAccountData.cs b/OpenSim/Data/SQLite/SQLiteUserAccountData.cs index 7a5de50..4d580c0 100644 --- a/OpenSim/Data/SQLite/SQLiteUserAccountData.cs +++ b/OpenSim/Data/SQLite/SQLiteUserAccountData.cs | |||
@@ -81,5 +81,10 @@ namespace OpenSim.Data.SQLite | |||
81 | 81 | ||
82 | return DoQuery(cmd); | 82 | return DoQuery(cmd); |
83 | } | 83 | } |
84 | |||
85 | public UserAccountData[] GetUsersWhere(UUID scopeID, string where) | ||
86 | { | ||
87 | return null; | ||
88 | } | ||
84 | } | 89 | } |
85 | } | 90 | } |