Commit Graph

36 Commits (bd008a170898e69beeb8bc0481b4bfd94de86c55)

Author SHA1 Message Date
andreykproductengine 779b5627c5 DRTVWR-493 LLAvatarNameCache to singletone 2019-07-03 20:06:47 +03:00
andreykproductengine 605160d501 MAINT-7118 Swapping legacy people API with new cache 2017-02-15 20:40:03 +02:00
Oz Linden 9be58e915a merge with 4.0.3-release 2016-04-04 15:53:09 -04:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Rider Linden fe8dec32db Merge 2015-04-13 09:37:09 -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
Oz Linden 66bc510786 detect xml errors in parsing xml files and remove those files 2015-04-02 21:43:34 -04: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
Brad Payne (Vir Linden) d9e3a2948a merge 2014-03-12 17:24:07 -04:00
Mnikolenko ProductEngine aaf6c7954d MAINT-3374 FIXED Don't show username after display name if this setting is disabled. 2013-11-06 11:42:48 +02:00
Brad Payne (Vir Linden) a04a706c1b merge 2013-05-21 16:18:48 -04:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Don Kjer 662d67e3b5 Merging LLCURL::Responder changes with CHUI changes. Fixed gcc 4.6 compile failures 2013-03-13 08:46:59 +00:00
Don Kjer f945415210 Large changes to the LLCurl::Responder API, as well as pulling in some changes to common libraries from the server codebase:
* Additional error checking in http handlers.
* Uniform log spam for http errors.
* Switch to using constants for http heads and status codes.
* Fixed bugs in incorrectly checking if parsing LLSD xml resulted in an error.
* Reduced spam regarding LLSD parsing errors in the default completedRaw http handler.  It should not longer be necessary to short-circuit completedRaw to avoid spam.
* Ported over a few bug fixes from the server code.
* Switch mode http status codes to use S32 instead of U32.
* Ported LLSD::asStringRef from server code; avoids copying strings all over the place.
* Ported server change to LLSD::asBinary; this always returns a reference now instead of copying the entire binary blob.
* Ported server pretty notation format (and pretty binary format) to llsd serialization.

* The new LLCurl::Responder API no longer has two error handlers to choose from.  Overriding the following methods have been deprecated:
** error - use httpFailure
** errorWithContent - use httpFailure
** result - use httpSuccess
** completed - use httpCompleted
** completedHeader - no longer necessary; call getResponseHeaders() from a completion method to obtain these headers.

* In order to 'catch' a completed http request, override one of these methods:
** httpSuccess - Called for any 2xx status code.
** httpFailure - Called for any non-2xx status code.
** httpComplete - Called for all status codes.  Default implementation is to call either httpSuccess or httpFailure.
* It is recommended to keep these methods protected/private in order to avoid triggering of these methods without using a 'push' method (see below).

* Uniform error handling should followed whenever possible by calling a variant of this during httpFailure:
** llwarns << dumpResponse() << llendl;
* Be sure to include LOG_CLASS(your_class_name) in your class in order for the log entry to give more context.

* In order to 'push' a result into the responder, you should no longer call error, errorWithContent, result, or completed.
* Nor should you directly call httpSuccess/Failure/Completed (unless passing a message up to a parent class).
* Instead, you can set the internal content of a responder and trigger a corresponding method using the following methods:
** successResult - Sets results and calls httpSuccess
** failureResult - Sets results and calls httpFailure
** completedResult - Sets results and calls httpCompleted

* To obtain information about a the response from a reponder method, use the following getters:
** getStatus - HTTP status code
** getReason - Reason string
** getContent - Content (Parsed body LLSD)
** getResponseHeaders - Response Headers (LLSD map)
** getHTTPMethod - HTTP method of the request
** getURL - URL of the request

* It is still possible to override completeRaw if you want to manipulate data directly out of LLPumpIO.

* See indra/llmessage/llcurl.h for more information.
2013-03-13 06:26:25 +00:00
Merov Linden bb322a1ccc CHUI-580 : Fixed : Clean up the use of display name. Allow the use of the legacy protocol in settings.xml 2012-12-07 00:10:50 -08:00
Merov Linden 3a49beed0e CHUI-580 : WIP : Change the display name cache system, deprecating the old protocol and using the cap (People API) whenever available. Still has occurence of Resident as last name to clean up. 2012-12-05 20:25:46 -08:00
Kelly Washington 5646e564e5 MAINT-1897 Poor performance viewing large group member lists
* Split avatar name requests up among multiple frames to prevent overloading
  the nameserver and having requests time out.
2012-11-12 14:10:02 -08:00
Todd Stinson 7cbbdbd896 PATH-849: CRASHFIX This should fix the crash caused by LLPathfindingObject::handleAvatarNameFetch being called after the corresponding LLPathfindingObject has been deleted. 2012-08-13 16:55:51 -07:00
Oz Linden e106678422 DN-202: Make avatar name caching more aggressive and error handling more uniform
Add logging (mostly at DEBUG level)
2011-01-16 21:41:08 -05:00
Leyla Farazha a923da7fc7 DEV-52931 Toggling "View Display Names" doesn't take effect right away in the Friends list 2010-09-13 14:59:31 -07:00
Aimee Linden e45b3c6884 Correct license on newly exported files to LGPL. 2010-09-04 19:35:27 +01:00
James Cook c0257c7fff DEV-49633 fixed, use Cache-Control max-age for display name expiration
We have no C++ libraries for parsing RFC 1123 dates, so parsing "Expires"
headers is risky.  max-age delta-seconds is easier to parse and equivalent
for this use.  Also added unit tests for max-age parsing.  Pair-programmed
with Huseby.
2010-05-06 16:29:51 -07:00
James Cook 56f5a6909d Menu item to disable display names for testing works again
Start up cache in not-running state on viewer.  Set cache running when
idle() is called.  Explicitly refresh name tags when toggled.
Reviewed with Simon
2010-04-27 13:54:40 -07:00
James Cook 98f5fc5ff0 DEV-47529 Turn off display names if no capability from simulator, and
Display name update broadcasts entire new name record to nearby viewers
Display name update directly inserts new name into sim cache
indra.xml has display_names_enabled setting to control cap
Synchronized viewer and server versions of avatar name cache
Reviewed with Ambroff
2010-04-22 14:13:45 -07:00
James Cook 61d79980d8 Starting to implement running switch and 503 error handling 2010-04-22 10:24:17 -07:00
James Cook d373dc8782 Viewer asks login.cgi if the grid supports display names
If not, turns off display names.  Cleaned up name cache reset code.
Alphabetized login auth param requests for easier merges going forward.
2010-04-19 17:09:37 -07:00
James Cook 4218819951 DEV-47529 Viewer looks up display names via a sim cap
Squire asked me to route display name lookups via a simulator capability
using HTTP GET.  This buys us authentication until the data services team
can implement a public-facing authenticating web service for People API.
2010-04-15 16:22:15 -07:00
James Cook 0b36c41812 DEV-47529 Add expiration to display name cache for viewer
Also synchronize LLAvatarNameCache with server version
TODO: Get expiration time from web service
2010-04-08 15:43:00 -07:00
James Cook d2f9e34598 Part DEV-47695 route display name changes via sim for rebroadcast to
nearby avatars for name tag updates and to update cached display name
for LSL nonblocking functions
2010-03-23 11:41:33 -07:00
James Cook 639b234762 Partial support for Set Name returning error msg from service 2010-03-18 17:19:57 -07:00
James Cook f3e0e9a526 Hack to refresh name tags when I change my display name.
Also fixes a crash when turning on display names.
2010-02-24 14:31:46 -08:00
James Cook 4fafec91fb Add asynchronous display name lookup with callback 2010-02-24 11:03:27 -08:00
James Cook 3791745054 Simple button to change your display name
Talks to web service so other people can see the change, but for now
they need to relog or toggle display names on/off to clear their
cache.
2010-02-22 16:41:56 -08:00
James Cook ee81adb01b Preference to set what fields name tags display, and
first attempt at "use display names" menu item which
doesn't work yet
2010-02-18 18:46:41 -08:00
James Cook 55bfb4435e Look up display names via a web service
Also removed unused LLComboBox globals to reduce llappviewer.cpp
include file burden.
Review pending
2010-02-17 16:55:58 -08:00
James Cook c2373fb5a6 Created stub LLAvatarNameCache for display name lookup, as
well as LLAvatarName base data object.
Reviewed with Kelly.
2010-02-11 16:39:15 -08:00