Package org.elasticsearch.action.search
Class SearchShardIterator
- java.lang.Object
-
- org.elasticsearch.cluster.routing.PlainShardsIterator
-
- org.elasticsearch.cluster.routing.PlainShardIterator
-
- org.elasticsearch.action.search.SearchShardIterator
-
- All Implemented Interfaces:
java.lang.Comparable<ShardIterator>
,java.lang.Iterable<ShardRouting>
,ShardIterator
,ShardsIterator
public final class SearchShardIterator extends PlainShardIterator
Extension ofPlainShardIterator
used in the search api, which also holds theOriginalIndices
of the search request (useful especially with cross-cluster search, as each cluster has its own set of original indices) as well as the cluster alias.- See Also:
OriginalIndices
-
-
Constructor Summary
Constructors Constructor Description SearchShardIterator(java.lang.String clusterAlias, ShardId shardId, java.util.List<ShardRouting> shards, OriginalIndices originalIndices)
Creates aPlainShardIterator
instance that iterates over a subset of the given shards this the a givenshardId
.
-
Method Summary
Modifier and Type Method Description int
compareTo(ShardIterator o)
boolean
equals(java.lang.Object o)
java.lang.String
getClusterAlias()
Returns the alias of the cluster where the shard is located.OriginalIndices
getOriginalIndices()
Returns the original indices associated with this shard iterator, specifically with the cluster that this shard belongs to.int
hashCode()
-
Methods inherited from class org.elasticsearch.cluster.routing.PlainShardIterator
shardId
-
Methods inherited from class org.elasticsearch.cluster.routing.PlainShardsIterator
getShardRoutings, iterator, nextOrNull, remaining, reset, size, sizeActive
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.cluster.routing.ShardIterator
reset
-
Methods inherited from interface org.elasticsearch.cluster.routing.ShardsIterator
getShardRoutings, nextOrNull, remaining, size, sizeActive
-
-
-
-
Constructor Detail
-
SearchShardIterator
public SearchShardIterator(@Nullable java.lang.String clusterAlias, ShardId shardId, java.util.List<ShardRouting> shards, OriginalIndices originalIndices)
Creates aPlainShardIterator
instance that iterates over a subset of the given shards this the a givenshardId
.- Parameters:
clusterAlias
- the alias of the cluster where the shard is locatedshardId
- shard id of the groupshards
- shards to iterateoriginalIndices
- the indices that the search request originally related to (before any rewriting happened)
-
-
Method Detail
-
getOriginalIndices
public OriginalIndices getOriginalIndices()
Returns the original indices associated with this shard iterator, specifically with the cluster that this shard belongs to.
-
getClusterAlias
@Nullable public java.lang.String getClusterAlias()
Returns the alias of the cluster where the shard is located.
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfaceShardsIterator
- Overrides:
equals
in classPlainShardIterator
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfaceShardsIterator
- Overrides:
hashCode
in classPlainShardIterator
-
compareTo
public int compareTo(ShardIterator o)
- Specified by:
compareTo
in interfacejava.lang.Comparable<ShardIterator>
- Overrides:
compareTo
in classPlainShardIterator
-
-