summaryrefslogtreecommitdiff
path: root/telepathy-logger/log-walker.c
Commit message (Collapse)AuthorAgeFilesLines
* stop using tp_account_manager_get_valid_accounts()Guillaume Desmottes2013-09-251-1/+1
| | | | | | | | The code example in log-walker.c was wrong as get_valid_accounts() is (transfer container). dup_valid_accounts() is (transfer full) so it's correct now. https://bugs.freedesktop.org/show_bug.cgi?id=69797
* version 0.8.0telepathy-logger-0.8.0Debarshi Ray2013-01-211-8/+8
|
* log-walker: Add since tags to docstringsDebarshi Ray2013-01-211-0/+16
|
* log-walker: Use a queue instead of a mutex for serializing operationsDebarshi Ray2013-01-101-37/+70
| | | | | | | | | | | | Earlier we were using threads to implement the asynchronous get_events and rewind methods, so we used a mutex to serialize them. However, now get_events has been moved to a single threaded model, so using a mutex will lead to undefined behaviour. Instead we use a queue to store incoming operations (ie. get_events or rewind) and they are executed one after the other. Fixes: https://bugs.freedesktop.org/54270
* log-walker: Use the op_res for carrying async contextNicolas Dufresne2013-01-101-26/+36
| | | | | | As a result we don't need the wrapper callback for fill_cache. Fixes: https://bugs.freedesktop.org/54270
* log-walker: Use _take_error instead of _set_from_error / _error_freeNicolas Dufresne2013-01-091-8/+2
| | | | Fixes: https://bugs.freedesktop.org/54270
* log-walker: Use complete_in_idle() instead of idle_add()Nicolas Dufresne2013-01-091-22/+6
| | | | Fixes: https://bugs.freedesktop.org/54270
* log-walker: Streamline the history codeDebarshi Ray2013-01-091-16/+11
| | | | Purely cosmetic. No changes in functionality.
* log-walker: Run the filter synchronously in the walkerDebarshi Ray2013-01-091-6/+101
| | | | | | | | | | This ensures that the TplLogEventFilter is always run from the same thread which invoked the walker. This is implemented by keeping track of skipped events in the history instead of silently ignoring them within the LogIters. This has the nice side effect that we do not need to run the filter while rewinding. Fixes: https://bugs.freedesktop.org/54270
* log-walker: Rework get_eventsDebarshi Ray2013-01-091-71/+174
| | | | | | | | | | | | | ... so that only the caches are filled asynchronously and the rest of the work does not involve the use of a separate thread. This is the first step towards ensuring that we do not run the TplLogEventFilter from a separate thread. NB: This does not solve the actual problem. The TplLogEventFilter is still invoked from a separate thread. However this refactoring lets us move in that direction. Fixes: https://bugs.freedesktop.org/54270
* log-walker: Don't leak the GList nodeDebarshi Ray2012-08-301-1/+1
|
* log-walker: Add an example explaining how to use the APIDebarshi Ray2012-08-291-0/+135
| | | | Fixes: https://bugs.freedesktop.org/41772
* Rename is_begin into is_startNicolas Dufresne2012-08-291-9/+9
|
* log-walker: Implement rewindDebarshi Ray2012-08-281-0/+57
| | | | Fixes: https://bugs.freedesktop.org/41772
* log-walker: Add rewind skeletonDebarshi Ray2012-08-281-0/+98
| | | | Fixes: https://bugs.freedesktop.org/41772
* log-walker: Keep a list of (iter, count) tuplesDebarshi Ray2012-08-281-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | This represents the order in which events were handed over to the user from each iterator. Lets say we have 10 events numbered from 0 to 9, with 0 being the oldest and 9 the latest event, and we have 3 iterators Ia, Ib and Ic. If they were returned in batches of 5 as: +-----+--------+ |event|iterator| +-----+--------+ | 5 | Ia | | 6 | Ib | | 7 | Ia | | 8 | Ia | | 9 | Ic | + - - + - -- - + | 0 | Ic | | 1 | Ic | | 2 | Ib | | 3 | Ib | | 4 | Ia | +-----+--------+ Then the list would be: (Ic, 2), (Ib, 2), (Ia, 2), (Ib, 1), (Ia, 2), (Ic, 1) Fixes: https://bugs.freedesktop.org/41772
* log-walker: Treat the internal state as a critical sectionDebarshi Ray2012-08-281-2/+32
| | | | | | | Since the TplLogWalker API is asynchronous, we do not want multiple overlapping calls to stamp on each others' toes. Fixes: https://bugs.freedesktop.org/41772
* log-walker: Add is_begin and is_end methods, and use them in get_eventsDebarshi Ray2012-08-281-2/+52
| | | | Fixes: https://bugs.freedesktop.org/41772
* log-walker: Implement get_eventsDebarshi Ray2012-08-281-1/+78
| | | | Fixes: https://bugs.freedesktop.org/41772
* log-walker: Add get_events skeletonDebarshi Ray2012-08-281-0/+143
| | | | Fixes: https://bugs.freedesktop.org/41772
* Add TplLogWalker skeletonDebarshi Ray2012-08-281-0/+110
Fixes: https://bugs.freedesktop.org/41772