Commit Graph

73 Commits

Author SHA1 Message Date
Jim Radford
d072a615ee * Clarify documentation in InventoryManager
* Allow the destination folder for InventoryItems offered to be set in the callback, will use the Default folder for the type of asset being sent if not set
* Couple minor fixups in PacketDecoder for the BinaryBucket field in the ImprovedInstantMessage packet
* Remove GroupTitle field from EventQueue decoder for the AgentGroupDataUpdateMessage, this is something opensim hacked in but its not used by the client so we'll just ignore it
* Added copyright header to TerrainCompressor.cs

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3216 52acb1d6-8a22-11de-b505-999d5b087335
2009-11-07 14:57:56 +00:00
Jim Radford
6182ba84cd LIBOMV-686 Implements new event patterns based on the Microsoft Framework Design Guidelines in InventoryManager (Not every delegate is converted yet)
LIBOMV-734 Thanks to Douglas R. Miles for converting the events in EstateManager over to new patterns
LIBOMV-735 Removes redundant LoggedIn event from NetworkManager, when LoginProgress Status == Success you can reliably send packets to a simulator. If you send before this event is raised, an exception will be thrown and your application will crash, previously your request would just get sent to the bitbucket without any notice, Thanks lkalif for the help getting this bug fixed correctly

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3187 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-29 09:39:43 +00:00
Jim Radford
95a87c7857 LIBOMV-686 Convert NetworkManager events/delegates to new patterns
* Remove INetworkManager interface (it was not being used for anything)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3182 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-28 08:01:52 +00:00
Jim Radford
ba491c6a63 LIBOMV-686 Implements new event patterns based on the Microsoft Framework Design Guidelines in AgentManager
* Many other code cleanups and example updates
* BREAKING - this is a major shift in the way events are internally handled.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3145 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-16 02:53:53 +00:00
Latif Khalifa
8b7570e314 * Always call RequestFetchInventory after successful inventory uploads
in order to keep Store synced. This removes .NET 3.5 specific dependency.
* BakeIndexToTextureIndex is now read-only, and specified size
  (hopefully this will keep it updated should number of bakes change)
* Missing doc param in AssetManager


git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3092 52acb1d6-8a22-11de-b505-999d5b087335
2009-08-19 07:25:30 +00:00
John Hurliman
aa28d07115 Fixed documentation for RequestRezFromInventory() and changed overloads to request CreateSelected flag by default
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3036 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-31 01:28:24 +00:00
John Hurliman
6557e50c2e * Improved notecard generation with embedded items
* Added InventoryManager.EncryptAssetID() helper
* Added Permissions.HasPermissions() helper

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3032 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-29 17:29:36 +00:00
John Hurliman
820d447672 * Labeled magic number for transfer timeouts in AssetManager and changed the value from 5 to 15 seconds
* Fixed [LIBOMV-649] by implementing the CAPS path for copying an item from a notecard. UDP fallback was left in

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3031 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-27 19:54:08 +00:00
Latif Khalifa
c90dd9e8cd LIBOMV-638: Allow setting permission of newly created inventory in RequestCreateItemFromAsset()
TODO: update examples to take advantage of this new feature

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3002 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-18 15:55:23 +00:00
Latif Khalifa
31d313cdd4 * LIBOMV-632: Implement uploading gestures
* Generalize notecard uploaded callback so it can be used with other
  similiar inventory asset uploaders

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2988 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-15 22:11:48 +00:00
John Hurliman
d1715e40a5 * Adds InventoryItem.TransactionID for updating inventory items with a new AssetID
* Finished InventoryManager.ParseTaskInventory()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2978 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-11 23:22:41 +00:00
Latif Khalifa
37fa087021 * Close input stream if deserialization of inventory cache fails
* Decode proper type of embedded item on the notecard
* Added LastOwnerID to InventoryItem and use it when encoding/decoding assets

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2976 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-11 14:50:45 +00:00
Jim Radford
75dfeb8342 * Updates Message system to support all known message types and variants used for updating assets which are uploaded using the temporary uploader capabilities
* Adds a ton of inline documentation so the classes and fields are easier to understand

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2975 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-11 08:16:43 +00:00
John Hurliman
000c0ab577 Added InventoryObject.AttachPoint getter/setter to match InventoryObject.ItemFlags
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2972 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-11 00:26:51 +00:00
John Hurliman
268ab32fef * Better error message fetching from failed notecard uploads
* createnotecard command will now add a link to the embedded item at the end of the note (still broken with "Invalid asset type.")

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2966 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-10 20:20:49 +00:00
John Hurliman
46fe89d0a9 Notecard upload failure now passes the server-returned error message to the callback. "Incorrect asset type." is the error I'm seeing
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2965 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-10 19:36:59 +00:00
John Hurliman
9ff8cdca27 * Fixed StatusCode.InsufficientPermissiosn typo
* Added an overload to AssetManager.RequestAsset() that lets you specify the SourceType
* Modified notecard serialization so embedded items should match the SL viewer serialization byte for byte
* Notecard upload CAP failures will pass along the WebException error message to the callback in case of a failure now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2961 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-10 16:23:26 +00:00
John Hurliman
7cd73c1d28 * More AbortXfer cleanup
* Fixed a crash from a failed notecard upload

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2951 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-09 22:24:04 +00:00
Latif Khalifa
5b54b7a6a4 LIBOMV-610: Mark nodes NeedsUpdate that have version mismatch when restoring from cache
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2931 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-28 16:13:58 +00:00
Robin Cornelius
f08754921d LIBOMV-610, Implement version checking when restoring cached inventory folders and clean up the code responsible for inventory reconstruction
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2913 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-27 20:51:14 +00:00
Latif Khalifa
7fedc628f3 LIBOMV-593 Inventory store was not properly updated when item or folder is moved
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2887 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-15 17:45:34 +00:00
Latif Khalifa
1331993148 LIBOMV-592 Properly initialize InventoryFolder when created by UUID
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2884 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-15 13:11:55 +00:00
Latif Khalifa
4465673985 LIBOMV-590 Implemented full asset notecard decoding
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2883 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-14 11:28:31 +00:00
Jim Radford
066b5ae91b LIBOMV-501 Cleaning up some compile time warnings
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2843 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-03 20:42:44 +00:00
Jim Radford
f3633d6f1e LIBOMV-540 Adds eventqueue message handler for ScriptRunningReply event message in InventoryManager new event: OnScriptRunning, new callback: ScriptRunningCallback (Untested)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2760 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-13 23:53:16 +00:00
Jim Radford
f2dbbb00b6 LIBOMV-540 Adds parameter to CopyScriptToTask method which allows the scripts running state to be set.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2758 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-13 21:27:38 +00:00
Jim Radford
168df79f12 LIBOMV-540 Adds method to InventoryManager to change the request the running status of a script contained in a Task inventory
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2756 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-13 20:35:47 +00:00
Jim Radford
9088bb0f6e LIBOMV-540 Adds method to InventoryManager to change the running state of a script.
* Switches RequestUpdateScriptAgentInventory method to use IMessage system
* Fixes a couple minor typos in InventoryManager

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2751 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-13 17:10:44 +00:00
Jim Radford
90825a5042 LIBOMV-539 Patch from Douglas Miles - Implements example TestClient command to upload a script to inventory + corrects capability name
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2748 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-12 11:58:12 +00:00
Jim Radford
6b0eb9a34d LIBOMV-535 implements RezRestoreToWorld packet functionality in InventoryManager. New Method: RequestRestoreRezFromInventory which places an inventory item back at its previous simulator position from inventory.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2740 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-10 09:31:07 +00:00
Jim Radford
10be14ad3b LIBOMV-291 Adds new method to InventoryManager to update an existing script in an agents inventory. Thanks Angelo Biondi for the patch
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2725 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-09 02:23:39 +00:00
John Hurliman
a7ba753336 Fixes [LIBOMV-518], wrong args were being passed to CreateItemFromAssetResponse the second time around
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2703 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-07 18:09:58 +00:00
John Hurliman
c5409af63f * [LIBOMV-506] Complete rewrite of CapsBase to use HttpWebRequest instead of our homebrewed WebRequest hack. We lose the upload progress callback but gain IOCP thread instead of System.Thread usage and Keep-Alive support
* Content-Types described in http://tools.ietf.org/html/draft-hamrick-llsd-00 are used for CAPS requests. This *may* be incompatible with the current SL grid, needs testing
* Modified CapsClient requests to require OSDFormat enum and timeout values

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2680 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-01 06:04:32 +00:00
Jim Radford
c9944b8aaf LIBOMV-183 Adds SaveAssetIntoInventoryHandler delegate and OnSaveAssetToInventory event to InventoryManager to allow client to deal with packet after logoutreply handler is fired.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2645 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-23 09:54:52 +00:00
John Hurliman
f918d41133 * Disable WinGridProxy filters until the proxy is running
* Rename CapsClient.StartRequest() to CapsClient.BeginGetResponse() to match HttpWebRequest
* Adding the blocking method CapsClient.GetResponse()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2611 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-16 16:25:47 +00:00
John Hurliman
f48c9922e9 * Added OpenMetaverse.Messages.Linden and OpenMetaverse.Messages.Simian namespaces to hold LLSD serialized messages. The dawn of a new era for libomv!
* Changing LLSD JSON serialization to match the draft at http://tools.ietf.org/html/draft-hamrick-llsd-00 (first breaking change since 0.6.0)
* Moving some enums out to OpenMetaverseTypes.dll
* Adding conversion methods to go to and from the newly moved enums
* Moved Parcel enums out to the main namespace

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2588 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-09 01:17:40 +00:00
John Hurliman
e615e15b73 More cleanup of the login structs and removing the now unnecessary ILoginProxy
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2587 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-08 21:26:06 +00:00
John Hurliman
1d49d4facb * Swapped out CookComputing.XmlRpcV2.dll for good ol' XMLRPC.dll
* Set another async thread in CapsBase to background to help libomv shutdown times
* Returned the login data structures to libomv types

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2586 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-08 21:02:58 +00:00
Jim Radford
2db5f0c493 LIBOMV-481 Re-Implements XML-RPC Logins, New Settings to switch between LLSD or XML-RPC logins, defaults to XML-RPC Please post any new login issues to http://jira.openmv.org/browse/LIBOMV-481
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2583 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-08 01:55:59 +00:00
Jim Radford
5e7fabef26 LIBOMV-480 Fixes Preprocessor directive in InventoryManager removed during previous commit.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2582 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-06 07:48:20 +00:00
Jim Radford
b52d412425 LIBOMV-480 Adds CopyScriptToTask method to InventoryManager which places a script contained in the agents inventory to the task inventory of a primitive being simulated. Patch courtesy of Reghu Kumar.R
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2581 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-06 07:24:02 +00:00
John Hurliman
cad2f351ca Updated documentation for InventoryItemFlags and removed references to (the now redundant) ObjectType enum. jradford will delete ObjectType soon
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2504 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-19 00:52:03 +00:00
John Hurliman
c20afbbf80 * Added InventoryItemFlags, which is actually only the upper half of the Flags field for inventory items. Stores slam bits, permission override flags, and other things we don't use at all right now
[Simian]
* Initial task inventory support. Move, remove, and RezScript are not supported yet
* SimulationObject Frozen and RotationAxis properties now point to the root prim in the linkset

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2503 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-19 00:25:03 +00:00
John Hurliman
3ad7551a4a * Added Utils.EmptyBytes which is equal to new byte[0] and replaced all references of new byte[0] to Utils.EmptyBytes
* Added a CRC32 implementation to OpenMetaverseTypes.dll
* Added ToBytes() functions to most of the OMV types for writing bytes into an existing byte array

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2470 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 01:32:02 +00:00
John Hurliman
12375d40e9 * Added a server-side flag, ChatType.RegionSay
* AppearanceManager.AddAttachments() now uses the attachment point specified in the inventory item
* Completed the PrimFlags enum by filling in placeholders and inventing our own server-side flags (do not use the placeholder values, they will change)
* Added DoubleDictionary.FindValue()
* Added a random number function, SwapWords(), and SHA1/MD5 hash string functions to Utils

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2461 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-02 22:49:25 +00:00
Robin Cornelius
993763515e Import Serialization support for InventoryNodes and things derived from InventoryBase, to allow serialization of inventory to and from disk
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2458 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-26 20:41:39 +00:00
Jim Radford
93910e094b LIBOMV-432 When requesting a copy item from a notecard, an ItemCopiedCallback is fired but it always uses the id 0 unlike the other standard inventory calls, which return a user specified unique ID.
LIBOMV-433 Patch attached that implements an AddToOutfit command that just adds the list (wearable) of InventoryBaseItems to the current appearance. 
Thanks to Robin Cornelius for the patches!

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2414 52acb1d6-8a22-11de-b505-999d5b087335
2009-01-14 11:24:54 +00:00
e9ca2fef01 * Fixed some null reference exceptions in Primitive OSD de/serialization
* Changed RequestRezFromInventory to accept the InventoryItem base type and allow rezzing of InventoryAttachments (non-breaking change)
* Implemented OnLogin event for LoginStatus.ConnectingToLogin
* Added public LogText() method to LocalChat GUI element


git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2402 52acb1d6-8a22-11de-b505-999d5b087335
2009-01-02 21:25:21 +00:00
John Hurliman
364c2c26d9 * Moved all capabilities code to the new library, OpenMetaverse.Http
* OpenMetaverse.Http contains a CAPS client + server, event queue client + server, SSL certificate generation (root CA, server certs, client certs), and client certificate authentication
* HttpServer.dll and Mono.Security.dll are new dependencies for OpenMetaverse.Http.dll

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2400 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-29 20:44:28 +00:00
John Hurliman
8e84377b22 * Removing EnUsCulture from Helpers as it already exists in Utils
* Removing Helpers.NewLine as it already exists in Environment.NewLine

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2360 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-17 23:37:02 +00:00