blob: 3d3301120896ca9ad014acaf63f3a3005076b907 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RegionLocations (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RegionLocations (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RegionLocations.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/hadoop/hbase/RegionException.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/hadoop/hbase/RegionLocations.html" target="_top">Frames</a></li>
<li><a href="RegionLocations.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hbase</div>
<h2 title="Class RegionLocations" class="title">Class RegionLocations</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.RegionLocations</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
public class <a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.37">RegionLocations</a>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</pre>
<div class="block">Container for holding a list of <a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase"><code>HRegionLocation</code></a>'s that correspond to the
same range. The list is indexed by the replicaId. This is an immutable list,
however mutation operations are provided which returns a new List via copy-on-write
(assuming small number of locations)</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#locations">locations</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#numNonNullElements">numNonNullElements</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#RegionLocations-java.util.Collection-">RegionLocations</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&nbsp;locations)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#RegionLocations-org.apache.hadoop.hbase.HRegionLocation...-">RegionLocations</a></span>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>...&nbsp;locations)</code>
<div class="block">Constructs the region location list.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#getDefaultRegionLocation--">getDefaultRegionLocation</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#getRegionLocation--">getRegionLocation</a></span>()</code>
<div class="block">Returns the first not-null region location in the list</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#getRegionLocation-int-">getRegionLocation</a></span>(int&nbsp;replicaId)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#getRegionLocationByRegionName-byte:A-">getRegionLocationByRegionName</a></span>(byte[]&nbsp;regionName)</code>
<div class="block">Returns the region location from the list for matching regionName, which can
be regionName or encodedRegionName</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#getRegionLocations--">getRegionLocations</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Returns whether there are non-null elements in the list</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#isGreaterThan-long-long-boolean-">isGreaterThan</a></span>(long&nbsp;a,
long&nbsp;b,
boolean&nbsp;checkForEquals)</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#mergeLocations-org.apache.hadoop.hbase.RegionLocations-">mergeLocations</a></span>(<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;other)</code>
<div class="block">Merges this RegionLocations list with the given list assuming
same range, and keeping the most up to date version of the
HRegionLocation entries from either list according to seqNum.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#numNonNullElements--">numNonNullElements</a></span>()</code>
<div class="block">Returns the size of not-null locations</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#remove-org.apache.hadoop.hbase.HRegionLocation-">remove</a></span>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location)</code>
<div class="block">Removes the given location from the list</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#remove-int-">remove</a></span>(int&nbsp;replicaId)</code>
<div class="block">Removes location of the given replicaId from the list</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#removeByServer-org.apache.hadoop.hbase.ServerName-">removeByServer</a></span>(<a href="../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</code>
<div class="block">Returns a new RegionLocations with the locations removed (set to null)
which have the destination server as given.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#removeElementsWithNullLocation--">removeElementsWithNullLocation</a></span>()</code>
<div class="block">Set the element to null if its getServerName method returns null.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>private <a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#selectRegionLocation-org.apache.hadoop.hbase.HRegionLocation-org.apache.hadoop.hbase.HRegionLocation-boolean-boolean-">selectRegionLocation</a></span>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;oldLocation,
<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location,
boolean&nbsp;checkForEquals,
boolean&nbsp;force)</code>&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#size--">size</a></span>()</code>
<div class="block">Returns the size of the list even if some of the elements
might be null.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/hadoop/hbase/RegionLocations.html#updateLocation-org.apache.hadoop.hbase.HRegionLocation-boolean-boolean-">updateLocation</a></span>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location,
boolean&nbsp;checkForEquals,
boolean&nbsp;force)</code>
<div class="block">Updates the location with new only if the new location has a higher
seqNum than the old one or force is true.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Iterable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true#forEach-java.util.function.Consumer-" title="class or interface in java.lang">forEach</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true#spliterator--" title="class or interface in java.lang">spliterator</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="numNonNullElements">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>numNonNullElements</h4>
<pre>private final&nbsp;int <a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.39">numNonNullElements</a></pre>
</li>
</ul>
<a name="locations">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>locations</h4>
<pre>private final&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>[] <a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.45">locations</a></pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="RegionLocations-org.apache.hadoop.hbase.HRegionLocation...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RegionLocations</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.54">RegionLocations</a>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>...&nbsp;locations)</pre>
<div class="block">Constructs the region location list. The locations array should
contain all the locations for known replicas for the region, and should be
sorted in replicaId ascending order, although it can contain nulls indicating replicaIds
that the locations of which are not known.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>locations</code> - an array of HRegionLocations for the same region range</dd>
</dl>
</li>
</ul>
<a name="RegionLocations-java.util.Collection-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RegionLocations</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.89">RegionLocations</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&nbsp;locations)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="size--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.98">size</a>()</pre>
<div class="block">Returns the size of the list even if some of the elements
might be null.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the size of the list (corresponding to the max replicaId)</dd>
</dl>
</li>
</ul>
<a name="numNonNullElements--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>numNonNullElements</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.106">numNonNullElements</a>()</pre>
<div class="block">Returns the size of not-null locations</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the size of not-null locations</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEmpty</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.114">isEmpty</a>()</pre>
<div class="block">Returns whether there are non-null elements in the list</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether there are non-null elements in the list</dd>
</dl>
</li>
</ul>
<a name="removeByServer-org.apache.hadoop.hbase.ServerName-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeByServer</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.125">removeByServer</a>(<a href="../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;serverName)</pre>
<div class="block">Returns a new RegionLocations with the locations removed (set to null)
which have the destination server as given.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>serverName</code> - the serverName to remove locations of</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an RegionLocations object with removed locations or the same object
if nothing is removed</dd>
</dl>
</li>
</ul>
<a name="remove-org.apache.hadoop.hbase.HRegionLocation-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.148">remove</a>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location)</pre>
<div class="block">Removes the given location from the list</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>location</code> - the location to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an RegionLocations object with removed locations or the same object
if nothing is removed</dd>
</dl>
</li>
</ul>
<a name="remove-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.175">remove</a>(int&nbsp;replicaId)</pre>
<div class="block">Removes location of the given replicaId from the list</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>replicaId</code> - the replicaId of the location to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an RegionLocations object with removed locations or the same object
if nothing is removed</dd>
</dl>
</li>
</ul>
<a name="removeElementsWithNullLocation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeElementsWithNullLocation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.194">removeElementsWithNullLocation</a>()</pre>
<div class="block">Set the element to null if its getServerName method returns null. Returns null if all the
elements are removed.</div>
</li>
</ul>
<a name="mergeLocations-org.apache.hadoop.hbase.RegionLocations-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeLocations</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.215">mergeLocations</a>(<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;other)</pre>
<div class="block">Merges this RegionLocations list with the given list assuming
same range, and keeping the most up to date version of the
HRegionLocation entries from either list according to seqNum. If seqNums
are equal, the location from the argument (other) is taken.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>other</code> - the locations to merge with</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an RegionLocations object with merged locations or the same object
if nothing is merged</dd>
</dl>
</li>
</ul>
<a name="selectRegionLocation-org.apache.hadoop.hbase.HRegionLocation-org.apache.hadoop.hbase.HRegionLocation-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selectRegionLocation</h4>
<pre>private&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.263">selectRegionLocation</a>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;oldLocation,
<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location,
boolean&nbsp;checkForEquals,
boolean&nbsp;force)</pre>
</li>
</ul>
<a name="updateLocation-org.apache.hadoop.hbase.HRegionLocation-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateLocation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/RegionLocations.html" title="class in org.apache.hadoop.hbase">RegionLocations</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.290">updateLocation</a>(<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;location,
boolean&nbsp;checkForEquals,
boolean&nbsp;force)</pre>
<div class="block">Updates the location with new only if the new location has a higher
seqNum than the old one or force is true.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>location</code> - the location to add or update</dd>
<dd><code>checkForEquals</code> - whether to update the location if seqNums for the
HRegionLocations for the old and new location are the same</dd>
<dd><code>force</code> - whether to force update</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an RegionLocations object with updated locations or the same object
if nothing is updated</dd>
</dl>
</li>
</ul>
<a name="isGreaterThan-long-long-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isGreaterThan</h4>
<pre>private&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.318">isGreaterThan</a>(long&nbsp;a,
long&nbsp;b,
boolean&nbsp;checkForEquals)</pre>
</li>
</ul>
<a name="getRegionLocation-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRegionLocation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.322">getRegionLocation</a>(int&nbsp;replicaId)</pre>
</li>
</ul>
<a name="getRegionLocationByRegionName-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRegionLocationByRegionName</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.335">getRegionLocationByRegionName</a>(byte[]&nbsp;regionName)</pre>
<div class="block">Returns the region location from the list for matching regionName, which can
be regionName or encodedRegionName</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regionName</code> - regionName or encodedRegionName</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>HRegionLocation found or null</dd>
</dl>
</li>
</ul>
<a name="getRegionLocations--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRegionLocations</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>[]&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.347">getRegionLocations</a>()</pre>
</li>
</ul>
<a name="getDefaultRegionLocation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultRegionLocation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.351">getDefaultRegionLocation</a>()</pre>
</li>
</ul>
<a name="getRegionLocation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRegionLocation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.358">getRegionLocation</a>()</pre>
<div class="block">Returns the first not-null region location in the list</div>
</li>
</ul>
<a name="iterator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterator</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.368">iterator</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true#iterator--" title="class or interface in java.lang">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/hadoop/hbase/HRegionLocation.html" title="class in org.apache.hadoop.hbase">HRegionLocation</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/hadoop/hbase/RegionLocations.html#line.373">toString</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RegionLocations.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/hadoop/hbase/RegionException.html" title="class in org.apache.hadoop.hbase"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/hadoop/hbase/RegionMetrics.html" title="interface in org.apache.hadoop.hbase"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/hadoop/hbase/RegionLocations.html" target="_top">Frames</a></li>
<li><a href="RegionLocations.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>