7#ifndef SNAPSHOTDELETIONPOLICY_H
8#define SNAPSHOTDELETIONPOLICY_H
48 friend class MyCommitPoint;
#define LUCENE_CLASS(Name)
Definition LuceneObject.h:24
Utility template class to handle collections that can be safely copied and shared.
Definition Collection.h:17
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