Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
ManifoldCF 0.1, ManifoldCF 0.2, ManifoldCF 0.3
-
None
Description
The way a connector writer is supposed to handle documents that should not be indexed is not clear. The IProcessActivity interface provides a method, deleteDocument(id), which removes the document from the index. But it does not record the version string when it does this, making that method only really useful for the case where the version string is empty. For cases where the version string is non-empty, you are supposed to use ingestDocument(id,version,null,null), which works fine to record the version string and allow for change detection, but is very non-obvious to the user.
Suggestion is to add a new variant of deleteDocument(), which takes both an id and version, and decides automatically whether to use ingestDocument() or deleteDocument() based on the contents of the version string. Also, the old deleteDocument(id) variant should be deprecated.