diff options
* Added two new packet handler implementations for inventory ops. This is starting to work! - but can't be activated incrementally, the flip needs to be global for all inventory ops.
* Added a base inventory connector that does common processing of inventory among all reference connector implementations. E.g. AddItem requires additional processing before being forwarded to service.
* Added if (m_Enabled) upon RemoveRegion
Diffstat (limited to 'OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs | 52 |
1 files changed, 28 insertions, 24 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs index 98e30ce..6efe903 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs | |||
@@ -41,7 +41,7 @@ using OpenMetaverse; | |||
41 | 41 | ||
42 | namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | 42 | namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory |
43 | { | 43 | { |
44 | public class LocalInventoryServicesConnector : InventoryCache, ISharedRegionModule, IInventoryService | 44 | public class LocalInventoryServicesConnector : BaseInventoryConnector, ISharedRegionModule, IInventoryService |
45 | { | 45 | { |
46 | private static readonly ILog m_log = | 46 | private static readonly ILog m_log = |
47 | LogManager.GetLogger( | 47 | LogManager.GetLogger( |
@@ -124,7 +124,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
124 | { | 124 | { |
125 | } | 125 | } |
126 | 126 | ||
127 | public override void AddRegion(Scene scene) | 127 | public void AddRegion(Scene scene) |
128 | { | 128 | { |
129 | if (!m_Enabled) | 129 | if (!m_Enabled) |
130 | return; | 130 | return; |
@@ -141,12 +141,15 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
141 | // "[INVENTORY CONNECTOR]: Registering IInventoryService to scene {0}", scene.RegionInfo.RegionName); | 141 | // "[INVENTORY CONNECTOR]: Registering IInventoryService to scene {0}", scene.RegionInfo.RegionName); |
142 | 142 | ||
143 | scene.RegisterModuleInterface<IInventoryService>(this); | 143 | scene.RegisterModuleInterface<IInventoryService>(this); |
144 | base.AddRegion(scene); | 144 | m_cache.AddRegion(scene); |
145 | } | 145 | } |
146 | 146 | ||
147 | public override void RemoveRegion(Scene scene) | 147 | public void RemoveRegion(Scene scene) |
148 | { | 148 | { |
149 | base.RemoveRegion(scene); | 149 | if (!m_Enabled) |
150 | return; | ||
151 | |||
152 | m_cache.RemoveRegion(scene); | ||
150 | } | 153 | } |
151 | 154 | ||
152 | public void RegionLoaded(Scene scene) | 155 | public void RegionLoaded(Scene scene) |
@@ -160,22 +163,22 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
160 | 163 | ||
161 | #region IInventoryService | 164 | #region IInventoryService |
162 | 165 | ||
163 | public bool CreateUserInventory(UUID user) | 166 | public override bool CreateUserInventory(UUID user) |
164 | { | 167 | { |
165 | return m_InventoryService.CreateUserInventory(user); | 168 | return m_InventoryService.CreateUserInventory(user); |
166 | } | 169 | } |
167 | 170 | ||
168 | public List<InventoryFolderBase> GetInventorySkeleton(UUID userId) | 171 | public override List<InventoryFolderBase> GetInventorySkeleton(UUID userId) |
169 | { | 172 | { |
170 | return m_InventoryService.GetInventorySkeleton(userId); | 173 | return m_InventoryService.GetInventorySkeleton(userId); |
171 | } | 174 | } |
172 | 175 | ||
173 | public InventoryCollection GetUserInventory(UUID id) | 176 | public override InventoryCollection GetUserInventory(UUID id) |
174 | { | 177 | { |
175 | return m_InventoryService.GetUserInventory(id); | 178 | return m_InventoryService.GetUserInventory(id); |
176 | } | 179 | } |
177 | 180 | ||
178 | public void GetUserInventory(UUID userID, InventoryReceiptCallback callback) | 181 | public override void GetUserInventory(UUID userID, InventoryReceiptCallback callback) |
179 | { | 182 | { |
180 | m_InventoryService.GetUserInventory(userID, callback); | 183 | m_InventoryService.GetUserInventory(userID, callback); |
181 | } | 184 | } |
@@ -207,13 +210,13 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
207 | return new Dictionary<AssetType, InventoryFolderBase>(); | 210 | return new Dictionary<AssetType, InventoryFolderBase>(); |
208 | } | 211 | } |
209 | 212 | ||
210 | public InventoryCollection GetFolderContent(UUID userID, UUID folderID) | 213 | public override InventoryCollection GetFolderContent(UUID userID, UUID folderID) |
211 | { | 214 | { |
212 | return m_InventoryService.GetFolderContent(userID, folderID); | 215 | return m_InventoryService.GetFolderContent(userID, folderID); |
213 | } | 216 | } |
214 | 217 | ||
215 | 218 | ||
216 | public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID) | 219 | public override List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID) |
217 | { | 220 | { |
218 | return m_InventoryService.GetFolderItems(userID, folderID); | 221 | return m_InventoryService.GetFolderItems(userID, folderID); |
219 | } | 222 | } |
@@ -223,7 +226,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
223 | /// </summary> | 226 | /// </summary> |
224 | /// <param name="folder"></param> | 227 | /// <param name="folder"></param> |
225 | /// <returns>true if the folder was successfully added</returns> | 228 | /// <returns>true if the folder was successfully added</returns> |
226 | public bool AddFolder(InventoryFolderBase folder) | 229 | public override bool AddFolder(InventoryFolderBase folder) |
227 | { | 230 | { |
228 | return m_InventoryService.AddFolder(folder); | 231 | return m_InventoryService.AddFolder(folder); |
229 | } | 232 | } |
@@ -233,7 +236,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
233 | /// </summary> | 236 | /// </summary> |
234 | /// <param name="folder"></param> | 237 | /// <param name="folder"></param> |
235 | /// <returns>true if the folder was successfully updated</returns> | 238 | /// <returns>true if the folder was successfully updated</returns> |
236 | public bool UpdateFolder(InventoryFolderBase folder) | 239 | public override bool UpdateFolder(InventoryFolderBase folder) |
237 | { | 240 | { |
238 | return m_InventoryService.UpdateFolder(folder); | 241 | return m_InventoryService.UpdateFolder(folder); |
239 | } | 242 | } |
@@ -243,7 +246,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
243 | /// </summary> | 246 | /// </summary> |
244 | /// <param name="folder">A folder containing the details of the new location</param> | 247 | /// <param name="folder">A folder containing the details of the new location</param> |
245 | /// <returns>true if the folder was successfully moved</returns> | 248 | /// <returns>true if the folder was successfully moved</returns> |
246 | public bool MoveFolder(InventoryFolderBase folder) | 249 | public override bool MoveFolder(InventoryFolderBase folder) |
247 | { | 250 | { |
248 | return m_InventoryService.MoveFolder(folder); | 251 | return m_InventoryService.MoveFolder(folder); |
249 | } | 252 | } |
@@ -253,17 +256,18 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
253 | /// </summary> | 256 | /// </summary> |
254 | /// <param name="folder"></param> | 257 | /// <param name="folder"></param> |
255 | /// <returns>true if the folder was successfully purged</returns> | 258 | /// <returns>true if the folder was successfully purged</returns> |
256 | public bool PurgeFolder(InventoryFolderBase folder) | 259 | public override bool PurgeFolder(InventoryFolderBase folder) |
257 | { | 260 | { |
258 | return m_InventoryService.PurgeFolder(folder); | 261 | return m_InventoryService.PurgeFolder(folder); |
259 | } | 262 | } |
260 | 263 | ||
261 | /// <summary> | 264 | /// <summary> |
262 | /// Add a new item to the user's inventory | 265 | /// Add a new item to the user's inventory, plain |
266 | /// Called by base class AddItem | ||
263 | /// </summary> | 267 | /// </summary> |
264 | /// <param name="item"></param> | 268 | /// <param name="item"></param> |
265 | /// <returns>true if the item was successfully added</returns> | 269 | /// <returns>true if the item was successfully added</returns> |
266 | public bool AddItem(InventoryItemBase item) | 270 | protected override bool AddItemPlain(InventoryItemBase item) |
267 | { | 271 | { |
268 | return m_InventoryService.AddItem(item); | 272 | return m_InventoryService.AddItem(item); |
269 | } | 273 | } |
@@ -273,7 +277,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
273 | /// </summary> | 277 | /// </summary> |
274 | /// <param name="item"></param> | 278 | /// <param name="item"></param> |
275 | /// <returns>true if the item was successfully updated</returns> | 279 | /// <returns>true if the item was successfully updated</returns> |
276 | public bool UpdateItem(InventoryItemBase item) | 280 | public override bool UpdateItem(InventoryItemBase item) |
277 | { | 281 | { |
278 | return m_InventoryService.UpdateItem(item); | 282 | return m_InventoryService.UpdateItem(item); |
279 | } | 283 | } |
@@ -283,17 +287,17 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
283 | /// </summary> | 287 | /// </summary> |
284 | /// <param name="item"></param> | 288 | /// <param name="item"></param> |
285 | /// <returns>true if the item was successfully deleted</returns> | 289 | /// <returns>true if the item was successfully deleted</returns> |
286 | public bool DeleteItem(InventoryItemBase item) | 290 | public override bool DeleteItem(InventoryItemBase item) |
287 | { | 291 | { |
288 | return m_InventoryService.DeleteItem(item); | 292 | return m_InventoryService.DeleteItem(item); |
289 | } | 293 | } |
290 | 294 | ||
291 | public InventoryItemBase QueryItem(InventoryItemBase item) | 295 | public override InventoryItemBase QueryItem(InventoryItemBase item) |
292 | { | 296 | { |
293 | return m_InventoryService.QueryItem(item); | 297 | return m_InventoryService.QueryItem(item); |
294 | } | 298 | } |
295 | 299 | ||
296 | public InventoryFolderBase QueryFolder(InventoryFolderBase folder) | 300 | public override InventoryFolderBase QueryFolder(InventoryFolderBase folder) |
297 | { | 301 | { |
298 | return m_InventoryService.QueryFolder(folder); | 302 | return m_InventoryService.QueryFolder(folder); |
299 | } | 303 | } |
@@ -303,7 +307,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
303 | /// </summary> | 307 | /// </summary> |
304 | /// <param name="userID"></param> | 308 | /// <param name="userID"></param> |
305 | /// <returns></returns> | 309 | /// <returns></returns> |
306 | public bool HasInventoryForUser(UUID userID) | 310 | public override bool HasInventoryForUser(UUID userID) |
307 | { | 311 | { |
308 | return m_InventoryService.HasInventoryForUser(userID); | 312 | return m_InventoryService.HasInventoryForUser(userID); |
309 | } | 313 | } |
@@ -313,12 +317,12 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory | |||
313 | /// </summary> | 317 | /// </summary> |
314 | /// <param name="userID"></param> | 318 | /// <param name="userID"></param> |
315 | /// <returns>null if no root folder was found</returns> | 319 | /// <returns>null if no root folder was found</returns> |
316 | public InventoryFolderBase GetRootFolder(UUID userID) | 320 | public override InventoryFolderBase GetRootFolder(UUID userID) |
317 | { | 321 | { |
318 | return m_InventoryService.GetRootFolder(userID); | 322 | return m_InventoryService.GetRootFolder(userID); |
319 | } | 323 | } |
320 | 324 | ||
321 | public List<InventoryItemBase> GetActiveGestures(UUID userId) | 325 | public override List<InventoryItemBase> GetActiveGestures(UUID userId) |
322 | { | 326 | { |
323 | return m_InventoryService.GetActiveGestures(userId); | 327 | return m_InventoryService.GetActiveGestures(userId); |
324 | } | 328 | } |