aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/InventoryService/LibraryService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services/InventoryService/LibraryService.cs')
-rw-r--r--OpenSim/Services/InventoryService/LibraryService.cs37
1 files changed, 26 insertions, 11 deletions
diff --git a/OpenSim/Services/InventoryService/LibraryService.cs b/OpenSim/Services/InventoryService/LibraryService.cs
index b46add3..383f311 100644
--- a/OpenSim/Services/InventoryService/LibraryService.cs
+++ b/OpenSim/Services/InventoryService/LibraryService.cs
@@ -93,6 +93,26 @@ namespace OpenSim.Services.InventoryService
93 LoadLibraries(pLibrariesLocation); 93 LoadLibraries(pLibrariesLocation);
94 } 94 }
95 95
96 public InventoryItemBase CreateItem(UUID inventoryID, UUID assetID, string name, string description,
97 int assetType, int invType, UUID parentFolderID)
98 {
99 InventoryItemBase item = new InventoryItemBase();
100 item.Owner = libOwner;
101 item.CreatorId = libOwner.ToString();
102 item.ID = inventoryID;
103 item.AssetID = assetID;
104 item.Description = description;
105 item.Name = name;
106 item.AssetType = assetType;
107 item.InvType = invType;
108 item.Folder = parentFolderID;
109 item.BasePermissions = 0x7FFFFFFF;
110 item.EveryOnePermissions = 0x7FFFFFFF;
111 item.CurrentPermissions = 0x7FFFFFFF;
112 item.NextPermissions = 0x7FFFFFFF;
113 return item;
114 }
115
96 /// <summary> 116 /// <summary>
97 /// Use the asset set information at path to load assets 117 /// Use the asset set information at path to load assets
98 /// </summary> 118 /// </summary>
@@ -173,27 +193,22 @@ namespace OpenSim.Services.InventoryService
173 item.Description = config.GetString("description", item.Name); 193 item.Description = config.GetString("description", item.Name);
174 item.InvType = config.GetInt("inventoryType", 0); 194 item.InvType = config.GetInt("inventoryType", 0);
175 item.AssetType = config.GetInt("assetType", item.InvType); 195 item.AssetType = config.GetInt("assetType", item.InvType);
176 item.CurrentPermissions = (uint)PermissionMask.All; 196 item.CurrentPermissions = (uint)config.GetLong("currentPermissions", 0x7FFFFFFF);
177 item.NextPermissions = (uint)PermissionMask.All; 197 item.NextPermissions = (uint)config.GetLong("nextPermissions", 0x7FFFFFFF);
178 item.EveryOnePermissions = (uint)PermissionMask.All; 198 item.EveryOnePermissions = (uint)config.GetLong("everyonePermissions", 0x7FFFFFFF);
179// item.EveryOnePermissions = (uint)PermissionMask.All - (uint)PermissionMask.Modify; 199 item.BasePermissions = (uint)config.GetLong("basePermissions", 0x7FFFFFFF);
180 item.BasePermissions = (uint)PermissionMask.All; 200 item.Flags = (uint)config.GetInt("flags", 0);
181 201
182 if (libraryFolders.ContainsKey(item.Folder)) 202 if (libraryFolders.ContainsKey(item.Folder))
183 { 203 {
184 InventoryFolderImpl parentFolder = libraryFolders[item.Folder]; 204 InventoryFolderImpl parentFolder = libraryFolders[item.Folder];
185
186 try 205 try
187 { 206 {
188// m_log.DebugFormat(
189// "[LIBRARY INVENTORY]: Adding item {0} {1}, OwnerPermissions {2:X} to {3}",
190// item.Name, item.ID, item.CurrentPermissions, item.Folder);
191
192 parentFolder.Items.Add(item.ID, item); 207 parentFolder.Items.Add(item.ID, item);
193 } 208 }
194 catch (Exception) 209 catch (Exception)
195 { 210 {
196 m_log.WarnFormat("[LIBRARY INVENTORY]: Item {1} [{0}] not added, duplicate item", item.ID, item.Name); 211 m_log.WarnFormat("[LIBRARY INVENTORY] Item {1} [{0}] not added, duplicate item", item.ID, item.Name);
197 } 212 }
198 } 213 }
199 else 214 else