The indexer combines the chunking process with the corresponding database lookups for the resulting chunks. It implements the deduplication mechanism of Syncany.
The class takes a list of files as input and uses the Deduper to break these files into individual chunks. By implementing the DeduperListener, it reacts on chunking events and creates a new database version (with the newly added/changed/removed files. This functionality is entirely implemented by the index() method.
The class uses the currently loaded MemoryDatabase as well as a potential dirty database into account. Lookups for chunks and file histories are performed on both databases.
This method implements the index/deduplication functionality of Syncany.
This method implements the index/deduplication functionality of Syncany. It uses a Deduper to break files down, compares them to the local database and creates a new DatabaseVersion as a result.
Depending on what has changed, the new database version will contain new instances of PartialFileHistory, FileVersion, FileContent, ChunkEntry and MultiChunkEntry.