public abstract class IndexCommit extends Object implements IndexCommitPoint
Expert: represents a single commit into an index as seen by the
IndexDeletionPolicy or IndexReader.
Changes to the content of an index are made visible
only after the writer who made that change commits by
writing a new segments file
(segments_N). This point in time, when the
action of writing of a new segments file to the directory
is completed, is an index commit.
Each index commit point has a unique segments file associated with it. The segments file associated with a later index commit point would have a larger N.
WARNING: This API is a new and experimental and may suddenly change.
| Constructor and Description |
|---|
IndexCommit() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
delete()
Delete this commit point.
|
boolean |
equals(Object other)
Two IndexCommits are equal if both their Directory and versions are equal.
|
abstract Directory |
getDirectory()
Returns the
Directory for the index. |
abstract Collection |
getFileNames()
Returns all index files referenced by this commit point.
|
abstract long |
getGeneration()
Returns the generation (the _N in segments_N) for this
IndexCommit
|
abstract String |
getSegmentsFileName()
Get the segments file (
segments_N) associated
with this commit point. |
long |
getTimestamp()
Convenience method that returns the last modified time
of the segments_N file corresponding to this index
commit, equivalent to
getDirectory().fileModified(getSegmentsFileName()).
|
abstract Map |
getUserData()
Returns userData, previously passed to
IndexWriter.commit(Map) for this commit. |
abstract long |
getVersion()
Returns the version for this IndexCommit.
|
int |
hashCode() |
abstract boolean |
isDeleted() |
abstract boolean |
isOptimized()
Returns true if this commit is an optimized index.
|
public abstract String getSegmentsFileName()
segments_N) associated
with this commit point.getSegmentsFileName in interface IndexCommitPointpublic abstract Collection getFileNames() throws IOException
getFileNames in interface IndexCommitPointIOExceptionpublic abstract void delete()
Upon calling this, the writer is notified that this commit point should be deleted.
Decision that a commit-point should be deleted is taken by the IndexDeletionPolicy in effect
and therefore this should only be called by its onInit() or
onCommit() methods.
delete in interface IndexCommitPointpublic abstract boolean isDeleted()
public abstract boolean isOptimized()
public boolean equals(Object other)
public abstract long getVersion()
IndexReader.getVersion() would
return if it were opened on this commit.public abstract long getGeneration()
public long getTimestamp()
throws IOException
IOExceptionpublic abstract Map getUserData() throws IOException
IndexWriter.commit(Map) for this commit. Map is
String -> String.IOExceptionCopyright © 2000-2012 Apache Software Foundation. All Rights Reserved.