Commit Graph

48 Commits (d64ddb54caacc3d07448d4bf4a90edd3d148cc4f)

Author SHA1 Message Date
Rider Linden d64ddb54ca MAINT-5820: Add a success/failure result to HTTP body parse method and react to that rather than an "undefined" LLSD 2015-11-03 14:22:42 -08:00
Rider Linden bbb9d4f21b MAINT-5732: Change to the way event polling handles error conditions and cancel calls.
Refactor any remaining LLCore::HTTPHandlers to use boost::shared_ptr
Started minor refactor in the materials manager into coroutines (unfinished)
2015-10-14 17:46:24 -07:00
Rider Linden 1356be0fe9 MAINT-5691: Browser was using deprecated outbox display type AND not correctly returning error body to application.
LLCore:HTTP now will provide and LLSD translation of the message body when possible in the case of an error HTTP result
VMM alert boxes now use type="alertmodal" rather than "outbox"
2015-10-07 16:09:08 -07:00
Rider Linden edd23c42fa MAINT-5693: Consolidated the avatar appearance request into a coroutine. If the request fails because of a stale COF, then rerequest with the corrected one. 2015-10-06 14:17:37 -07:00
Rider Linden 75c6549fde Set consistent terminology for yield/wait -> suspend for coroutines. 2015-09-18 11:39:22 -07:00
Rider Linden 97236a42ca MAINT-5507: Remove HTTPClient and related cruft. 2015-09-14 11:15:23 -07:00
Rider Linden 6a204b1bdd MAINT-5575: Finished converting experience cache to singleton
MAINT-4952: Coverted VMM to coroutines
2015-09-10 16:48:01 -07:00
Rider Linden 248d61fe0e MAINT-5500: Finish converting the AIS responders to the new coroutine model, Cleaned up dead an unused code.
MAINT-4952: Added COPY and MOVE methods to Core:Http adapter
2015-08-12 16:32:49 -07:00
Rider Linden 96d04a050b Added patchAndYield to httputil adapter
Converted All AISv3 commands (except copyLibrary) to coro model.
2015-07-30 16:13:56 -07:00
Nat Goodspeed f1be78f7e2 MAINT-5351: Finish messy merge restoring 'selfless' changes. 2015-07-11 08:06:15 -04:00
Nat Goodspeed 391d9a367b Merge restore of more selfless changes 2015-07-10 19:34:20 -04:00
Nat Goodspeed efa9a0f99c Backed out changeset bab1000e1b2d: restore 'selfless' changes 2015-07-10 19:30:10 -04:00
Nat Goodspeed 9809f59fa9 Merge restore of selfless changes 2015-07-10 16:54:05 -04:00
Nat Goodspeed 6f9f89ee71 Backed out changeset 6e1fa9518747: reapply 'selfless' changes 2015-07-10 16:47:07 -04:00
Rider Linden 75b12d79e1 Enforcing constness of refs 2015-07-08 14:49:08 -07:00
Rider Linden ef3d1d642e Replace ref parameter with value 2015-07-08 13:41:07 -07:00
Rider Linden fe5567639d Change HttpOptions::ptr_t to be shared_ptr<> rather than intrusive. 2015-07-08 12:09:36 -07:00
Rider Linden 1138c57f9a Convert LLCore::HttpHeaders to use shared_ptr<> rather than an intrusive_ptr<> for refrence counting. 2015-07-08 10:01:27 -07:00
Rider Linden 247eb0c9c3 Backout selfles merge 738255dbbfd679d9e615baab3398e5e345bbb3c5 2015-07-07 19:41:27 +01:00
Rider Linden 4c1d47d4ae Backed out selfless merge 2015-07-07 19:31:34 +01:00
Nat Goodspeed f90023fc0b MAINT-5357: Introduce and populate llcoro:: namespace.
To date, the coroutine helper functions in lleventcoro.h have been in the
global namespace. Migrate them into llcoro namespace, and fix references.
Specifically, LLVoidListener => llcoro::VoidListener, and voidlistener(),
postAndWait(), both waitForEventOn(), postAndWait2(), errorException() and
errorLog() have been moved into llcoro.
Also migrate new LLCoros::get_self() and Suspending to llcoro:: namespace.
While at it, I realized that -- having converted several lleventcoro.h
functions from templates (for arbitrary 'self' parameter type) to ordinary
functions, having moved them from lleventcoro.h to lleventcoro.cpp, we can now
migrate their helpers from lleventcoro.h to lleventcoro.cpp as well. This
eliminates the need for the LLEventDetail namespace; the relevant helpers are
now in an anonymous namespace in the .cpp file: listenerNameForCoro(),
storeToLLSDPath(), WaitForEventOnHelper and wfeoh().
2015-07-02 17:00:32 -04:00
Nat Goodspeed b262ded7e0 MAINT-5351: Remove 'self' parameter from coroutine functions.
lleventcoro_test.cpp runs clean (as modified for new API), and all the rest
builds clean, but the resulting viewer is as yet untested.
2015-07-01 18:33:29 -04:00
Nat Goodspeed 80d17b2dd9 MAINT-4952: Use IntrusivePtr for BufferArray,HttpHeaders,HttpOptions.
Specifically, change the ptr_t typedefs for these LLCore classes to use
IntrusivePtr rather than directly using boost::intrusive_ptr. This allows us
to use a simple ptr_t(raw ptr) constructor rather than having to remember to
code ptr_t(raw ptr, false) everywhere. In fact, the latter form is now invalid:
remove the now-extraneous 'false' constructor parameters.
2015-06-29 17:19:51 -04:00
Rider Linden 08ef748cba Added file upload interface to core HTTP utils. 2015-06-25 15:47:56 -07:00
Rider Linden cf4fec954c Added a way to pass a policy Id to the coroadapter.
Changed language, appearance, and maturity to conform to use the adapter rather than the SDHandler
2015-06-08 17:29:01 -07:00
Rider Linden d0d58c41b4 Default headers added.
Group manager finished conversion.
Outfit folders coverted.
2015-06-04 17:36:24 -07:00
Rider Linden 83543e556c Memory leak (extra ref) in webprofile
Viewer media routines to coroutine.
Post with raw respons in llcorehttputil
LLCore::Http added headers only option (applies only on get)
2015-05-27 17:15:01 -07:00
Rider Linden f7fa3b5f56 Floater IM Session to trivial coroutine.
Changed debugging output from core utitl to string.
2015-05-22 10:59:43 -07:00
Rider Linden c437a9c4ec Webprofile converted to coroutine.
Added JSON->LLSD converter
Added corohandler for JSON data
2015-05-20 17:37:27 -07:00
Rider Linden a4741cecb2 Changed Avatar picker to use coroutine for find.
Fixed a stray reference (&) on URL that had crept into some coroutine definitions.
2015-05-18 16:18:07 -07:00
Rider Linden f26fb73dd8 Address Nat's concerns about the const_cast<> and modification of a binary object wrapped in an LLSD object. 2015-05-15 12:51:18 -07:00
Rider Linden 21701459ee Converted the Server release notes URL,
classified and click tracker,
Avatar hover height
Pass the http_results on successfull call back style completion as well.
2015-05-14 15:47:36 -07:00
Rider Linden 9ec050a067 Make generic callback version of trivial GET/PUT methods. Make message use these methods. 2015-05-14 10:33:46 -07:00
Rider Linden 723834737d Added trivial case GET and POST to the CoreHTTP Utils
converted llfloaterregioninfo to use coroutine's and new LLCore::HTTP
2015-05-12 14:32:43 -07:00
Rider Linden 3e004ce66e Updated feature manager downloader to coroutine.
Added "raw" coroutine handler (returns raw result as LLSD::Binary) and split out the guts of the get, put, etc methods.
Moved getStatusFromLLSD from HttpCoroHandler into HttpCorutineAdapter
2015-05-11 16:52:02 -07:00
Rider Linden cd55655592 Crash logger changes to LLCore::Http 2015-04-30 13:12:09 -07:00
Rider Linden c4bcc83336 Facebook conversion. 2015-04-16 17:01:10 -07:00
Rider Linden d0c85b6dd9 Adding support for DELETE, PATCH and COPY 2015-04-10 17:23:58 -07:00
Rider Linden e28a5b6ead Added LL_WARNS_IF to llerror.h
If the coro is given something other than a map from the http then move the return into a body section.
Changed windlight to use a coroutine and the new LLCore::Http libarary.
Extra comments into Event Polling.
2015-04-09 16:46:41 -07:00
Rider Linden 93382ee0c0 Moved some LLEventPolling internal classes to a named namespace
Canceling outstanding polling transactions
2015-04-08 14:29:37 -07:00
Rider Linden 1c91c8a106 Adding weak pointer support.
Event polling as a coroutine. (incomplete)
Groundwork for canceling HttpCoroutineAdapter yields.
2015-04-08 10:17:34 -07:00
Rider Linden 8a76284e48 Results from code review with Nat. Consolidate some of the coroutine/http code into a single adapter. 2015-04-07 10:30:10 -07:00
Rider Linden 17641c8427 Added a class to automate pumping the HttpRequest on the mainloop.
Converted AccountingCostManager to use the new LLCore::Http library and coroutines.
2015-04-03 14:23:31 -07:00
Rider Linden edc1439bd6 Added AvatarNameCache as coroutine, with LLCore::HttpHandler to respond correctly to Event Pumps.
Added get/setRequestURL() to LLCore::HttpResponse
Removed URI from the HttpSDHandler.
2015-04-01 16:37:00 -07:00
Rider Linden 9d676ce5b9 Clean up and use policies for Material transfer. 2015-03-20 13:16:25 -07:00
Rider Linden 6b8c814df3 Adding new HTTP handling for material manager. 2015-03-19 17:01:21 -07:00
Monty Brandenberg f71c6c745b Cleanup pass. Documentation. Get older llcorehttp-using
code to use utils for any LLSD interfaces.
2014-09-09 15:36:35 -04:00
Monty Brandenberg bbf9de9c67 Bring better error handling to inventory item and folder fetching.
First, introduced some LLSD-based interfaces to the llcorehttp code
using utils classes (in llcorehttputil).  I've kept LLSD out of
the llcorehttp library up to now and will continue to do that.
Functions provide a requestPost based on LLSD body and conversion
utils for HttpResponse-to-LLSD and HttpResponse-to-string
conversions.  Inventory fetch operations now do more thorough
error checking including 200-with-error status checking.  Still
do retry forever on folders though I don't like that.
2014-08-26 18:33:14 -04:00