Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Introduced Log::Context | Christian Mollekopf | 2016-12-22 |
| | | | | | | | To have hierarchical debug output we have to pass around something at run-time, there is no reasonable alternative. Log::Context provides the identifier to do just that and largely replaces the debug component idea. | ||
* | Mailtransporttest | Christian Mollekopf | 2016-12-22 |
| | |||
* | Get mailtransport to work with kolab container. | Christian Mollekopf | 2016-12-19 |
| | |||
* | Don't try to fetch flags on initial sync. | Christian Mollekopf | 2016-12-16 |
| | |||
* | The directory was just not existing because no file was in it. | Christian Mollekopf | 2016-12-15 |
| | |||
* | Don't set capabilities as property on creation. | Christian Mollekopf | 2016-12-15 |
| | | | | | | Instead we make it part of the plugin. This ensure we also have access to the proper capabilities when creating a resource via sinksh. | ||
* | Move the BLOB property handling to the entitystore. | Christian Mollekopf | 2016-12-09 |
| | | | | | | This is really part of the storage, and will help us to cleanly implement features like moving properties into a temporary place when reading in a clean way as well. | ||
* | Wrap references in a Reerence type. | Christian Mollekopf | 2016-12-08 |
| | | | | | | | | This allows us to make sure that references are not taken out of context (the resource). Because we need to use the type-specific accessors more we also ran into a problem that we cannot "downcast" a reference with the change recording still working, for that we have the cast<T>() operator now. | ||
* | Move mail to sent folder after sending it | Christian Mollekopf | 2016-12-06 |
| | |||
* | Fixed maildirresource | Christian Mollekopf | 2016-12-06 |
| | |||
* | Wrap blob properties in type so we can distinguish it from other properties. | Christian Mollekopf | 2016-12-06 |
| | | | | | | When moving an entity to another resource we have to move the blob properties to a temporary directory first, and that requires that we are able to distinguish blob properties from the rest at runtime. | ||
* | Renamed RemoteIdMap to SynchronizerStore | Christian Mollekopf | 2016-11-28 |
| | |||
* | Used the CommandProcessor as central place for all command processing. | Christian Mollekopf | 2016-11-28 |
| | |||
* | Moved inspection commands to a separate inspector. | Christian Mollekopf | 2016-11-28 |
| | |||
* | Cleanup | Christian Mollekopf | 2016-11-27 |
| | |||
* | Folded the SourceWriteback into the Synchronizer. | Christian Mollekopf | 2016-11-21 |
| | | | | | | | | | | | | By concentrating all communication to the source in one place we get rid of several oddities. * Quite a bit of duplication since both need access to the synchronizationStore and the source. * We currently have an akward locking in place because both classes access the ync store. This is not easier to resolve cleanly. * The live of resource implementers becomes easier. * An implementation could elect to not use changereplay and always do a full sync... (maybe?) | ||
* | Removed unnecessary includes | Christian Mollekopf | 2016-11-21 |
| | |||
* | Apply default date filter. | Christian Mollekopf | 2016-11-15 |
| | |||
* | Made the use of the folder struct a bit more expressive | Christian Mollekopf | 2016-11-14 |
| | |||
* | Deal with only having the rid available but not the separated path. | Christian Mollekopf | 2016-11-14 |
| | |||
* | Prepared new query based synchronization API | Christian Mollekopf | 2016-11-11 |
| | |||
* | Implement debug stream operators for query. | Christian Mollekopf | 2016-11-07 |
| | |||
* | Cleanup | Christian Mollekopf | 2016-10-21 |
| | |||
* | Specify the resource name in one place | Christian Mollekopf | 2016-10-21 |
| | |||
* | Fixed maildir message moving | Christian Mollekopf | 2016-10-21 |
| | |||
* | Ported the pipeline to the entitystore | Christian Mollekopf | 2016-10-21 |
| | |||
* | Removed the now obsolete EntityStore | Christian Mollekopf | 2016-10-21 |
| | |||
* | Refactor how the storage is used. | Christian Mollekopf | 2016-10-21 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the initial refactoring to improve how we deal with the storage. It does a couple of things: * Rename Sink::Storage to Sink::Storage::DataStore to free up the Sink::Storage namespace * Introduce a Sink::ResourceContext to have a single object that can be passed around containing everything that is necessary to operate on a resource. This is a lot better than the multiple separate parameters that we used to pass around all over the place, while still allowing for dependency injection for tests. * Tie storage access together using the new EntityStore that directly works with ApplicationDomainTypes. This gives us a central place where main storage, indexes and buffer adaptors are tied together, which will also give us a place to implement external indexes, such as a fulltextindex using xapian. * Use ApplicationDomainTypes as the default way to pass around entities. Instead of using various ways to pass around entities (buffers, buffer adaptors, ApplicationDomainTypes), only use a single way. The old approach was confusing, and was only done as: * optimization; really shouldn't be necessary and otherwise I'm sure we can find better ways to optimize ApplicationDomainType itself. * a way to account for entities that have multiple buffers, a concept that I no longer deem relevant. While this commit does the bulk of the work to get there, the following commits will refactor more stuff to get things back to normal. | ||
* | These jobs now work reliably. | Christian Mollekopf | 2016-10-07 |
| | |||
* | Avoid using the resource object to remove the data from disk. | Christian Mollekopf | 2016-10-07 |
| | | | | | ...because creating it will potentially start transactions on the database we're about to remove. | ||
* | A better resource filter api | Christian Mollekopf | 2016-10-05 |
| | |||
* | New query api | Christian Mollekopf | 2016-09-27 |
| | |||
* | A new query system | Christian Mollekopf | 2016-09-23 |
| | |||
* | A first draft of the threading algorithm. | Christian Mollekopf | 2016-09-20 |
| | |||
* | New synchronization algorithm that only fetches the last 14 days. | Christian Mollekopf | 2016-09-15 |
| | |||
* | New kimap2 syntax | Christian Mollekopf | 2016-09-15 |
| | |||
* | New kimap2 syntax | Christian Mollekopf | 2016-09-15 |
| | |||
* | Remember highestmodseq | Christian Mollekopf | 2016-09-15 |
| | |||
* | Don' create new entities on flag change. | Christian Mollekopf | 2016-09-15 |
| | |||
* | Flag updates | Christian Mollekopf | 2016-09-15 |
| | |||
* | Made use of KAsync::Job::serialEach | Christian Mollekopf | 2016-09-15 |
| | |||
* | Use KIMAP2 | Christian Mollekopf | 2016-09-15 |
| | |||
* | The ping is no longer necessary | Christian Mollekopf | 2016-09-15 |
| | |||
* | Ported to the new API | Christian Mollekopf | 2016-09-15 |
| | |||
* | Ported to the kasync revamp | Christian Mollekopf | 2016-09-15 |
| | |||
* | Incremental fetch of mails | Christian Mollekopf | 2016-09-15 |
| | |||
* | Prepare incremental syncing. | Christian Mollekopf | 2016-09-15 |
| | |||
* | Progress reporting | Christian Mollekopf | 2016-09-15 |
| | |||
* | Test mail resync | Christian Mollekopf | 2016-09-15 |
| | |||
* | Debug output | Christian Mollekopf | 2016-09-15 |
| |