Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Async: only notify watchers once when Future::setFinished() is called ↵ | Dan Vrátil | 2015-02-20 |
| | | | | multiple times | ||
* | Async: allow appending existing Job objects to the Job chain | Dan Vrátil | 2015-02-20 |
| | | | | | | | | | | | | Now it's possible to do something like Job<int, int> job = createSomeJob(); auto main = Async::start<int>(....).then(job); Previously the 'job' would have to be wrapped in a ThenTask-like lambda (which is what we still do internally), but with this new syntax it's possible to append another job chain to existing chain easilly. This syntax is available for all task types. | ||
* | Async: allow Async::start() to have input value | Dan Vrátil | 2015-02-20 |
| | | | | | The initial value can be passed in as argument to Job::exec(), or by another job in case of job chaining. | ||
* | Async: beautification | Dan Vrátil | 2015-02-09 |
| | |||
* | Async: move public API implementation | Dan Vrátil | 2015-02-09 |
| | |||
* | Async: Move Async::PrevOut to Async::detail::prevOut | Dan Vrátil | 2015-02-09 |
| | |||
* | Async: improve error handling | Dan Vrátil | 2015-02-09 |
| | | | | | | All jobs and executors now accept ErrorHandler argument which will be invoked on error. Error handling itself has been moved to Executor::exec(), so that we don't have to copy-paste the error handling code into every Executor implementation. | ||
* | Async: introduce sync executors | Dan Vrátil | 2015-02-09 |
| | | | | | | | | | Sync executors don't pass Async::Future into the user-provided tasks, but instead work with return values of the task methods, wrapping them into the Async::Future internally. Sync tasks are of course possible since forever, but not the API for those tasks is much cleaner, for users don't have to deal with "future" in synchronous tasks, for instance when synchronously processing results of an async task before passing the data to another async task. | ||
* | note on branching model for dev | Aaron Seigo | 2015-02-09 |
| | |||
* | catch unqlite impl up to current Storage API | Aaron Seigo | 2015-02-09 |
| | |||
* | void const -> const void | Aaron Seigo | 2015-02-09 |
| | | | | | equivalent syntax, but follows the standard idiom we use throughout the code .. const char *, not char const * (e.g.) | ||
* | Async: don't leak Executors | Dan Vrátil | 2015-02-07 |
| | | | | | | We now hold executors in shared pointers. We cannot easilly delete them, as they are referenced from two objects (the Job they belong to, and the next job), and the lifetime of the jobs is unclear. | ||
* | AsyncTest: block until innerJob finishes to prevent crash | Dan Vrátil | 2015-02-07 |
| | | | | | | | innerJob.exec() starts an async job, so once exec() returns, the innerJob will go out of scope and will be deleted, which however does not prevent the QTimer from invoking it's lambda slot, which will crash when dereferencing a deleted Future. | ||
* | Async: mark our future as finished after returning from error handler | Dan Vrátil | 2015-02-07 |
| | | | | | | Error handlers don't have access to the future, so they can't mark it as finished, so we do it after the error handler is run. This ensures that FutureWatchers will finish. | ||
* | Async: remove unused FutureWatchers | Dan Vrátil | 2015-02-02 |
| | |||
* | Added JOBAPI todo's. | Christian Mollekopf | 2015-02-02 |
| | | | | Work for dvratil. | ||
* | clenup | Christian Mollekopf | 2015-01-30 |
| | |||
* | Shutdown command for synchronizers, used by the dummyresourcetest. | Christian Mollekopf | 2015-01-30 |
| | | | | | Otherwise the synchronizer keeps a Storage object alive, while the tests deletes the db. This causes subsequent writes to fail in the next test. | ||
* | Open the database readonly in readonly mode. | Christian Mollekopf | 2015-01-30 |
| | |||
* | DummyResourceBenchmark | Christian Mollekopf | 2015-01-27 |
| | |||
* | introduce a set of isInternalKey functions to hide this impl detail | Aaron Seigo | 2015-01-27 |
| | |||
* | can not delete this as it is an opaque data structure | Aaron Seigo | 2015-01-27 |
| | | | | instead, use the lmdb api | ||
* | fix build | Aaron Seigo | 2015-01-27 |
| | |||
* | Don't enlessly block in the eventloop. | Christian Mollekopf | 2015-01-27 |
| | | | | | The job currently finishes synchronously. If we just use the eventloop in waitForFinished that's automatically handled for us. | ||
* | Avoid shutting down the synchronizer all the time. | Christian Mollekopf | 2015-01-25 |
| | |||
* | debug output | Christian Mollekopf | 2015-01-25 |
| | |||
* | Stop using Akonadi2::Console. | Christian Mollekopf | 2015-01-25 |
| | | | | We need a decent loggin framework. | ||
* | Propagate errors for commands. | Christian Mollekopf | 2015-01-25 |
| | |||
* | Call callbacks after the resource crashed. | Christian Mollekopf | 2015-01-25 |
| | |||
* | debug output, fixed dummyresourcetest | Christian Mollekopf | 2015-01-25 |
| | |||
* | A way to ensure all messages have been processed. | Christian Mollekopf | 2015-01-25 |
| | | | | | As queries become reactive this should become less important. We can then just wait until all results become available. For tests it is in either case useful though. | ||
* | Uid index + query using that index. | Christian Mollekopf | 2015-01-24 |
| | | | | ...and a couple of other fixes. | ||
* | An index implementation. | Christian Mollekopf | 2015-01-21 |
| | |||
* | Create buffer with values from domain object | Christian Mollekopf | 2015-01-21 |
| | |||
* | Storage: support for duplicates. | Christian Mollekopf | 2015-01-20 |
| | |||
* | fixed build | Christian Mollekopf | 2015-01-20 |
| | |||
* | Async: comments, default error job implementation. | Christian Mollekopf | 2015-01-19 |
| | |||
* | Fixed sync, detect errors during sync, wait until sync items are processed ↵ | Christian Mollekopf | 2015-01-19 |
| | | | | until signalling completion. | ||
* | Async: Error continuation. | Christian Mollekopf | 2015-01-19 |
| | |||
* | debug output | Christian Mollekopf | 2015-01-19 |
| | |||
* | Fixed pipeline. | Christian Mollekopf | 2015-01-19 |
| | | | | Steps are now finally processed as they should be and a job tracks the processing progress. | ||
* | Fixed Async::Future. | Christian Mollekopf | 2015-01-19 |
| | | | | | The future is copied an the finished boolean has to be in the shared part, otherwise the original copy never receives the updated value. | ||
* | Use jobs in queries, sync works again. | Christian Mollekopf | 2015-01-18 |
| | |||
* | Use jobs to track progress of write commands. | Christian Mollekopf | 2015-01-18 |
| | |||
* | missing includes | Christian Mollekopf | 2015-01-16 |
| | |||
* | Asynchronously go through messagequeues | Christian Mollekopf | 2015-01-16 |
| | |||
* | Messagequeuetest | Christian Mollekopf | 2015-01-16 |
| | |||
* | Async test for nested jobs. | Christian Mollekopf | 2015-01-16 |
| | |||
* | Fixed storage removal. | Christian Mollekopf | 2015-01-16 |
| | | | | We have to remove any open environments as well. | ||
* | Async message queue processing. | Christian Mollekopf | 2015-01-15 |
| | | | | The Job/Future in Pipeline::newEntity for some reason crashes with async pipeline processing. |