diff --git a/OpenSim/Framework/TaskInventoryItem.cs b/OpenSim/Framework/TaskInventoryItem.cs new file mode 100644 index 0000000000..e1eac790a8 --- /dev/null +++ b/OpenSim/Framework/TaskInventoryItem.cs @@ -0,0 +1,101 @@ +/* +* Copyright (c) Contributors, http://opensimulator.org/ +* See CONTRIBUTORS.TXT for a full list of copyright holders. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of the OpenSim Project nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +*/ + +using libsecondlife; + +namespace OpenSim.Framework +{ + public class TaskInventoryItem + { + /// + /// XXX This should really be factored out into some constants class. + /// + private const uint FULL_MASK_PERMISSIONS_GENERAL = 2147483647; + + /// + /// Inventory types + /// + public static string[] InvTypes = new string[] + { + "texture", + "sound", + "", + "", + "", + "", + "", + "", + "", + "", + "lsl_text", + "" + }; + + /// + /// Asset types + /// + public static string[] Types = new string[] + { + "texture", + "sound", + "", + "", + "", + "", + "", + "", + "", + "", + "lsltext", + "" + }; + + public LLUUID item_id = LLUUID.Zero; + public LLUUID parent_id = LLUUID.Zero; //parent folder id + + public uint base_mask = FULL_MASK_PERMISSIONS_GENERAL; + public uint owner_mask = FULL_MASK_PERMISSIONS_GENERAL; + public uint group_mask = FULL_MASK_PERMISSIONS_GENERAL; + public uint everyone_mask = FULL_MASK_PERMISSIONS_GENERAL; + public uint next_owner_mask = FULL_MASK_PERMISSIONS_GENERAL; + public LLUUID creator_id = LLUUID.Zero; + public LLUUID owner_id = LLUUID.Zero; + public LLUUID last_owner_id = LLUUID.Zero; + public LLUUID group_id = LLUUID.Zero; + + public LLUUID asset_id = LLUUID.Zero; + public string type = ""; + public string inv_type = ""; + public uint flags = 0; + public string name = ""; + public string desc = ""; + public uint creation_date = 0; + + public LLUUID ParentPartID = LLUUID.Zero; + } +} diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index 4bbc2edf9c..a9b3fe98c6 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs @@ -1178,15 +1178,15 @@ namespace OpenSim.Region.Environment.Scenes SceneObjectPart part = GetChildPart(localID); if (part != null) { - SceneObjectPart.TaskInventoryItem taskItem = new SceneObjectPart.TaskInventoryItem(); + TaskInventoryItem taskItem = new TaskInventoryItem(); taskItem.item_id = item.inventoryID; taskItem.asset_id = item.assetID; taskItem.name = item.inventoryName; taskItem.desc = item.inventoryDescription; taskItem.owner_id = item.avatarID; taskItem.creator_id = item.creatorsID; - taskItem.type = SceneObjectPart.TaskInventoryItem.Types[item.assetType]; - taskItem.inv_type = SceneObjectPart.TaskInventoryItem.Types[item.invType]; + taskItem.type = TaskInventoryItem.Types[item.assetType]; + taskItem.inv_type = TaskInventoryItem.Types[item.invType]; part.AddInventoryItem(taskItem); return true; } @@ -1200,15 +1200,15 @@ namespace OpenSim.Region.Environment.Scenes SceneObjectPart part = GetChildPart(localID); if (part != null) { - SceneObjectPart.TaskInventoryItem taskItem = new SceneObjectPart.TaskInventoryItem(); + TaskInventoryItem taskItem = new TaskInventoryItem(); taskItem.item_id = copyItemID; taskItem.asset_id = item.assetID; taskItem.name = item.inventoryName; taskItem.desc = item.inventoryDescription; taskItem.owner_id = new LLUUID(item.avatarID.ToString()); taskItem.creator_id = new LLUUID(item.creatorsID.ToString()); - taskItem.type = SceneObjectPart.TaskInventoryItem.Types[item.assetType]; - taskItem.inv_type = SceneObjectPart.TaskInventoryItem.InvTypes[item.invType]; + taskItem.type = TaskInventoryItem.Types[item.assetType]; + taskItem.inv_type = TaskInventoryItem.InvTypes[item.invType]; part.AddInventoryItem(taskItem); return true; } diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs index 2ddcf7be9f..b07b43cdc0 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs @@ -1736,73 +1736,5 @@ namespace OpenSim.Region.Environment.Scenes { } } - - public class TaskInventoryItem - { - /// - /// Inventory types - /// - public static string[] InvTypes = new string[] - { - "texture", - "sound", - "", - "", - "", - "", - "", - "", - "", - "", - "lsl_text", - "" - }; - - /// - /// Asset types - /// - public static string[] Types = new string[] - { - "texture", - "sound", - "", - "", - "", - "", - "", - "", - "", - "", - "lsltext", - "" - }; - - public LLUUID item_id = LLUUID.Zero; - public LLUUID parent_id = LLUUID.Zero; //parent folder id - - public uint base_mask = FULL_MASK_PERMISSIONS_GENERAL; - public uint owner_mask = FULL_MASK_PERMISSIONS_GENERAL; - public uint group_mask = FULL_MASK_PERMISSIONS_GENERAL; - public uint everyone_mask = FULL_MASK_PERMISSIONS_GENERAL; - public uint next_owner_mask = FULL_MASK_PERMISSIONS_GENERAL; - public LLUUID creator_id = LLUUID.Zero; - public LLUUID owner_id = LLUUID.Zero; - public LLUUID last_owner_id = LLUUID.Zero; - public LLUUID group_id = LLUUID.Zero; - - public LLUUID asset_id = LLUUID.Zero; - public string type = ""; - public string inv_type = ""; - public uint flags = 0; - public string name = ""; - public string desc = ""; - public uint creation_date = 0; - - public LLUUID ParentPartID = LLUUID.Zero; - - public TaskInventoryItem() - { - } - } } } diff --git a/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs b/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs index 8bad7300ac..b99b819817 100644 --- a/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs +++ b/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs @@ -340,11 +340,11 @@ namespace OpenSim.DataStore.MonoSqlite String sql = String.Format("primID = '{0}'", prim.UUID.ToString()); DataRow[] dbItemRows = dbItems.Select(sql); - IList inventory = new List(); + IList inventory = new List(); foreach (DataRow row in dbItemRows) { - SceneObjectPart.TaskInventoryItem item = buildItem(row); + TaskInventoryItem item = buildItem(row); inventory.Add(item); MainLog.Instance.Verbose("DATASTORE", "Restored item {0}, {1}", item.name, item.item_id); @@ -897,9 +897,9 @@ namespace OpenSim.DataStore.MonoSqlite /// /// /// - private SceneObjectPart.TaskInventoryItem buildItem(DataRow row) + private TaskInventoryItem buildItem(DataRow row) { - SceneObjectPart.TaskInventoryItem taskItem = new SceneObjectPart.TaskInventoryItem(); + TaskInventoryItem taskItem = new TaskInventoryItem(); taskItem.item_id = new LLUUID((String)row["itemID"]); taskItem.ParentPartID = new LLUUID((String)row["primID"]); @@ -1069,7 +1069,7 @@ namespace OpenSim.DataStore.MonoSqlite row["SitTargetOrientZ"] = sitTargetOrient.Z; } - private void fillItemRow(DataRow row, SceneObjectPart.TaskInventoryItem taskItem) + private void fillItemRow(DataRow row, TaskInventoryItem taskItem) { row["itemID"] = taskItem.item_id; row["primID"] = taskItem.ParentPartID; @@ -1271,7 +1271,7 @@ namespace OpenSim.DataStore.MonoSqlite /// /// /// - private void addPrimInventory(LLUUID primID, IDictionary items) + private void addPrimInventory(LLUUID primID, IDictionary items) { MainLog.Instance.Verbose("DATASTORE", "Entered addPrimInventory with prim ID {0}", primID); @@ -1283,8 +1283,8 @@ namespace OpenSim.DataStore.MonoSqlite // Build structures for manipulation purposes IDictionary dbItemsToRemove = new Dictionary(); - ICollection itemsToAdd - = new List(); + ICollection itemsToAdd + = new List(); foreach (DataRow row in dbItemRows) { @@ -1319,7 +1319,7 @@ namespace OpenSim.DataStore.MonoSqlite } // Insert items not already present - foreach (SceneObjectPart.TaskInventoryItem newItem in itemsToAdd) + foreach (TaskInventoryItem newItem in itemsToAdd) { MainLog.Instance.Verbose( "DATASTORE",