Commit Graph

30 Commits (6f9f89ee71751a0e88bbda91fef1a575a5a68ed9)

Author SHA1 Message Date
Nat Goodspeed 6f9f89ee71 Backed out changeset 6e1fa9518747: reapply 'selfless' changes 2015-07-10 16:47:07 -04: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