7#ifndef SNAPSHOTDELETIONPOLICY_H
8#define SNAPSHOTDELETIONPOLICY_H
48 friend class MyCommitPoint;
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Policy for deletion of stale index commits. Implement this interface, and pass it to one of the Index...
Definition: IndexDeletionPolicy.h:27
Definition: SnapshotDeletionPolicy.h:14
virtual void onCommit(Collection< IndexCommitPtr > commits)
This is called each time the writer completed a commit. This gives the policy a chance to remove old ...
virtual void onInit(Collection< IndexCommitPtr > commits)
This is called once when a writer is first instantiated to give the policy a chance to remove old com...
virtual ~SnapshotDeletionPolicy()
IndexCommitPtr lastCommit
Definition: SnapshotDeletionPolicy.h:22
virtual void release()
Release the currently held snapshot.
String _snapshot
Definition: SnapshotDeletionPolicy.h:24
virtual IndexCommitPtr snapshot()
Take a snapshot of the most recent commit to the index. You must call release() to free this snapshot...
Collection< IndexCommitPtr > wrapCommits(Collection< IndexCommitPtr > commits)
IndexDeletionPolicyPtr primary
Definition: SnapshotDeletionPolicy.h:23
SnapshotDeletionPolicy(const IndexDeletionPolicyPtr &primary)
Definition: AbstractAllTermDocs.h:12
boost::shared_ptr< IndexCommit > IndexCommitPtr
Definition: LuceneTypes.h:152
boost::shared_ptr< IndexDeletionPolicy > IndexDeletionPolicyPtr
Definition: LuceneTypes.h:153