summaryrefslogtreecommitdiffstats
path: root/common/domain
Commit message (Collapse)AuthorAge
* We can't inhert the copy constructor.Christian Mollekopf2017-02-01
| | | | An the compiler in fedora 26 also tells us that.
* Ensure blooming queries filter as they shouldChristian Mollekopf2017-01-31
| | | | After the initial bloom, it should turn into a regular filter.
* make contacts suitable for applications like sinkshSandro Knauß2017-01-30
|
* Add Contact as new domain typeSandro Knauß2017-01-30
|
* Debug outputChristian Mollekopf2017-01-18
|
* Fixed build issues with pedantic enabledChristian Mollekopf2017-01-12
|
* Set enabled state from subscriptionChristian Mollekopf2017-01-11
|
* Remember if we have all of the data or only the headers.Christian Mollekopf2017-01-10
|
* Comparison operator for ApplicationDomainTypeChristian Mollekopf2017-01-03
|
* CleanupChristian Mollekopf2016-12-20
|
* Fix threading for non-threaded messages.Christian Mollekopf2016-12-20
| | | | | Ensure we always have a messageId to work with, and avoid grouping all non-threaded messages together.
* Don't set capabilities as property on creation.Christian Mollekopf2016-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.
* Made references serializable so we can store them in config filesChristian Mollekopf2016-12-15
|
* Add comment regarding the blob copying hack.Christian Mollekopf2016-12-09
|
* Move the BLOB property handling to the entitystore.Christian Mollekopf2016-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.
* One copy algorithm is enough.Christian Mollekopf2016-12-08
|
* Let the preprocessor repeat the types.Christian Mollekopf2016-12-08
|
* Wrap references in a Reerence type.Christian Mollekopf2016-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.
* Support for sent mail folderChristian Mollekopf2016-12-06
|
* Wrap blob properties in type so we can distinguish it from other properties.Christian Mollekopf2016-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.
* interresource moveChristian Mollekopf2016-12-02
|
* TypeHelper so we can centrally define the type dispatchChristian Mollekopf2016-11-30
| | | | | | Not pretty, but that at least allows us to centrally define the string to type dispatch (It's somehow very hard to do in C++ without repeating all types over and over in various interfaces).
* sinksh list identity supportChristian Mollekopf2016-11-21
|
* Set to/cc/bccChristian Mollekopf2016-11-01
|
* Got the sender to workChristian Mollekopf2016-10-31
|
* Mail::Contact mappingChristian Mollekopf2016-10-31
|
* Requesting a property that is not available is not an error.Christian Mollekopf2016-10-28
|
* CleanupChristian Mollekopf2016-10-21
|
* Get access to properties in indexes.Christian Mollekopf2016-10-21
|
* TypeImplementation cleanupChristian Mollekopf2016-10-21
|
* A new indexer subsystem that can be used for indexes that are moreChristian Mollekopf2016-10-21
| | | | complex than a simple key-value pair.
* Ported the pipeline to the entitystoreChristian Mollekopf2016-10-21
|
* Use the ApplicationDomainType in the queries as well.Christian Mollekopf2016-10-21
| | | | | We have to access properties, so we need the mapper anyways, and the ApplicationDomainType type shouldn't be a large overhead anyways.
* We no longer access the typeindex directlyChristian Mollekopf2016-10-21
|
* Refactor how the storage is used.Christian Mollekopf2016-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.
* Define specialpurpose namesChristian Mollekopf2016-10-11
|
* An identity belongs to an account too.Christian Mollekopf2016-10-05
|
* A better resource filter apiChristian Mollekopf2016-10-05
|
* Resource subqueriesChristian Mollekopf2016-10-04
|
* Backwards comaptible names and some cleanupChristian Mollekopf2016-10-04
|
* Less hardcoding of entity typesChristian Mollekopf2016-10-04
|
* Store the resource/account type as just "type"Christian Mollekopf2016-10-04
| | | | | We use the resource/account prefix only because just "Type" would conflict with the typedef.
* Support for subqueries.Christian Mollekopf2016-10-04
| | | | | | This allows us to match properties from a subquery. Unfortunately this also means that DataStoreQuery needs access to all type implementations to issue the subquery (for potentially another type).
* Don't hardcode the type property.Christian Mollekopf2016-09-27
|
* New query apiChristian Mollekopf2016-09-27
|
* The threading reduction is working.Christian Mollekopf2016-09-26
|
* A new query systemChristian Mollekopf2016-09-23
|
* Merge mails by subjectChristian Mollekopf2016-09-21
|
* A first draft of the threading algorithm.Christian Mollekopf2016-09-20
|
* Refactored the query part of the entity reader into DataStoreQuery.Christian Mollekopf2016-09-19
| | | | | | | | | DataStoreQuery now encapsulates the low-level query that operates directly on the storage. It no longer has access to the resource buffers, and is instantiated by the type implementation, so we can specialize the query alogorithm per type, but not per resource. This will allow us to implement the threading queries for the mailtype.