From 69817b4d6a08d3f9866796c50a0d0fb0d28ded77 Mon Sep 17 00:00:00 2001 From: MW Date: Sat, 30 May 2009 12:51:28 +0000 Subject: Added a AvatarCreationModule to the user server. This handles the "cloning" of a existing avatar's inventory to another avatar's inventory (the base method will also create the inventory for a new avatar if the avatar doesn't alreayd have any inventory). The code also sets the target avatar as wearing whatever the template avatar was wearing (including attachments). The idea is to allow the use of this to give new avatars a more interesting avatar (and inventory set) than the current default. I have include a console command that will clone the inventory from one existing user (template avatar) to another existing avatar (target avatar). The format of the command is : "clone avatar " (to use this console command on new accounts, the "create user" command will need to be used first) While the code was designed for hooking up to a remote call from a web interface, I have left the hookup code out of this commit, as I believe most use cases will want to handle it differently. Also added a "trusted handler" to the inventory server to allow the user server to create new folders in a user's inventory. All this is in the old UGAIM servers so will need porting to the new servers. --- OpenSim/Grid/InventoryServer/Main.cs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'OpenSim/Grid/InventoryServer/Main.cs') diff --git a/OpenSim/Grid/InventoryServer/Main.cs b/OpenSim/Grid/InventoryServer/Main.cs index 7560383..537661e 100644 --- a/OpenSim/Grid/InventoryServer/Main.cs +++ b/OpenSim/Grid/InventoryServer/Main.cs @@ -136,6 +136,10 @@ namespace OpenSim.Grid.InventoryServer "POST", "/NewFolder/", m_inventoryService.AddFolder, m_inventoryService.CheckAuthSession)); m_httpServer.AddStreamHandler( + new RestDeserialiseTrustedHandler( + "POST", "/CreateFolder/", m_inventoryService.AddFolder, m_inventoryService.CheckTrustSource)); + + m_httpServer.AddStreamHandler( new RestDeserialiseSecureHandler( "POST", "/NewItem/", m_inventoryService.AddItem, m_inventoryService.CheckAuthSession)); -- cgit v1.1