Lucene++ - a full-featured, c++ search engine
API Documentation

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SnapshotDeletionPolicy.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2011 Alan Wright. All rights reserved.
3 // Distributable under the terms of either the Apache License (Version 2.0)
4 // or the GNU Lesser General Public License.
6
7 #ifndef SNAPSHOTDELETIONPOLICY_H
8 #define SNAPSHOTDELETIONPOLICY_H
9
10 #include "IndexDeletionPolicy.h"
11
12 namespace Lucene
13 {
14 class LPPAPI SnapshotDeletionPolicy : public IndexDeletionPolicy
15 {
16 public:
17 SnapshotDeletionPolicy(IndexDeletionPolicyPtr primary);
18 virtual ~SnapshotDeletionPolicy();
19
20 LUCENE_CLASS(SnapshotDeletionPolicy);
21
22 protected:
23 IndexCommitPtr lastCommit;
24 IndexDeletionPolicyPtr primary;
25 String _snapshot;
26
27 public:
30 virtual void onInit(Collection<IndexCommitPtr> commits);
31
34 virtual void onCommit(Collection<IndexCommitPtr> commits);
35
41 virtual IndexCommitPtr snapshot();
42
44 virtual void release();
45
46 protected:
47 Collection<IndexCommitPtr> wrapCommits(Collection<IndexCommitPtr> commits);
48
49 friend class MyCommitPoint;
50 };
51 }
52
53 #endif

clucene.sourceforge.net