public abstract class IndexCommit extends java.lang.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(java.lang.Object other)
Two IndexCommits are equal if both their Directory and versions are equal.
|
abstract Directory |
getDirectory()
Returns the
Directory for the index. |
abstract java.util.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 java.lang.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 java.util.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 java.lang.String getSegmentsFileName()
segments_N
) associated
with this commit point.getSegmentsFileName
in interface IndexCommitPoint
public abstract java.util.Collection getFileNames() throws java.io.IOException
getFileNames
in interface IndexCommitPoint
java.io.IOException
public 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 IndexCommitPoint
public abstract boolean isDeleted()
public abstract boolean isOptimized()
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public abstract long getVersion()
IndexReader.getVersion()
would
return if it were opened on this commit.public abstract long getGeneration()
public long getTimestamp() throws java.io.IOException
java.io.IOException
public abstract java.util.Map getUserData() throws java.io.IOException
IndexWriter.commit(Map)
for this commit. Map is
String -> String.java.io.IOException
Copyright © 2000-2018 Apache Software Foundation. All Rights Reserved.