blob: f05110c22dd8efe6bc9f09a5825209e837d628c3 [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>ParseFilter (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="ParseFilter (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":10,"i11":9,"i12":9,"i13":9,"i14":10,"i15":10,"i16":9,"i17":9,"i18":10,"i19":10,"i20":10,"i21":9,"i22":10,"i23":9,"i24":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/ParseFilter.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/filter/ParseConstants.html" title="class in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html" title="class in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/filter/ParseFilter.html" target="_top">Frames</a></li>
<li><a href="ParseFilter.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.filter</div>
<h2 title="Class ParseFilter" class="title">Class ParseFilter</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.filter.ParseFilter</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@InterfaceAudience.Public
public class <a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.51">ParseFilter</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></pre>
<div class="block">This class allows a user to specify a filter via a string
The string is parsed using the methods of this class and
a filter object is constructed. This filter object is then wrapped
in a scanner object which is then returned
<p>
This class addresses the HBASE-4168 JIRA. More documentation on this
Filter Language can be found at: https://issues.apache.org/jira/browse/HBASE-4176</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 static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<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>,<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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#filterHashMap">filterHashMap</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#operatorPrecedenceHashMap">operatorPrecedenceHashMap</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/filter/ParseFilter.html#ParseFilter--">ParseFilter</a></span>()</code>&nbsp;</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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#checkForAnd-byte:A-int-">checkForAnd</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfAnd)</code>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'AND'</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#checkForOr-byte:A-int-">checkForOr</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfOr)</code>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'OR'</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#checkForSkip-byte:A-int-">checkForSkip</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfSkip)</code>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'SKIP'</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#checkForWhile-byte:A-int-">checkForWhile</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfWhile)</code>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'WHILE'</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#convertByteArrayToBoolean-byte:A-">convertByteArrayToBoolean</a></span>(byte[]&nbsp;booleanAsByteArray)</code>
<div class="block">Converts a boolean expressed in a byte array to an actual boolean</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#convertByteArrayToInt-byte:A-">convertByteArrayToInt</a></span>(byte[]&nbsp;numberAsByteArray)</code>
<div class="block">Converts an int expressed in a byte array to an actual int</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#convertByteArrayToLong-byte:A-">convertByteArrayToLong</a></span>(byte[]&nbsp;numberAsByteArray)</code>
<div class="block">Converts a long expressed in a byte array to an actual long</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#createComparator-byte:A-">createComparator</a></span>(byte[]&nbsp;comparator)</code>
<div class="block">Parses a comparator of the form comparatorType:comparatorValue form and returns a comparator</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#createCompareOperator-byte:A-">createCompareOperator</a></span>(byte[]&nbsp;compareOpAsByteArray)</code>
<div class="block">Takes a compareOperator symbol as a byte array and returns the corresponding CompareOperator</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#createUnescapdArgument-byte:A-int-int-">createUnescapdArgument</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;argumentStartIndex,
int&nbsp;argumentEndIndex)</code>
<div class="block">Removes the single quote escaping a single quote - thus it returns an unescaped argument</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#extractFilterSimpleExpression-byte:A-int-">extractFilterSimpleExpression</a></span>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;filterExpressionStartOffset)</code>
<div class="block">Extracts a simple filter expression from the filter string given by the user</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#getAllFilters--">getAllFilters</a></span>()</code>
<div class="block">Returns all known filters</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#getFilterArguments-byte:A-">getFilterArguments</a></span>(byte[]&nbsp;filterStringAsByteArray)</code>
<div class="block">Returns the arguments of the filter from the filter string</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#getFilterName-byte:A-">getFilterName</a></span>(byte[]&nbsp;filterStringAsByteArray)</code>
<div class="block">Returns the filter name given a simple filter expression</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#getSupportedFilters--">getSupportedFilters</a></span>()</code>
<div class="block">Return a Set of filters supported by the Filter Language</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#hasHigherPriority-java.nio.ByteBuffer-java.nio.ByteBuffer-">hasHigherPriority</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;a,
<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;b)</code>
<div class="block">Returns which operator has higher precedence</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#isQuoteUnescaped-byte:A-int-">isQuoteUnescaped</a></span>(byte[]&nbsp;array,
int&nbsp;quoteIndex)</code>
<div class="block">Returns a boolean indicating whether the quote was escaped or not</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>static byte[][]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#parseComparator-byte:A-">parseComparator</a></span>(byte[]&nbsp;comparator)</code>
<div class="block">Splits a column in comparatorType:comparatorValue form into separate byte arrays</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#parseFilterString-byte:A-">parseFilterString</a></span>(byte[]&nbsp;filterStringAsByteArray)</code>
<div class="block">Parses the filterString and constructs a filter using it</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#parseFilterString-java.lang.String-">parseFilterString</a></span>(<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;filterString)</code>
<div class="block">Parses the filterString and constructs a filter using it</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#parseSimpleFilterExpression-byte:A-">parseSimpleFilterExpression</a></span>(byte[]&nbsp;filterStringAsByteArray)</code>
<div class="block">Constructs a filter object given a simple filter expression</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#popArguments-java.util.Stack-java.util.Stack-">popArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;operatorStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filterStack)</code>
<div class="block">Pops an argument from the operator stack and the number of arguments required by the operator
from the filterStack and evaluates them</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#reduce-java.util.Stack-java.util.Stack-java.nio.ByteBuffer-">reduce</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;operatorStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filterStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;operator)</code>
<div class="block">This function is called while parsing the filterString and an operator is parsed</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#registerFilter-java.lang.String-java.lang.String-">registerFilter</a></span>(<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;name,
<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;filterClass)</code>
<div class="block">Register a new filter with the parser.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>static byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/filter/ParseFilter.html#removeQuotesFromByteArray-byte:A-">removeQuotesFromByteArray</a></span>(byte[]&nbsp;quotedByteArray)</code>
<div class="block">Takes a quoted byte array and converts it into an unquoted byte array
For example: given a byte array representing 'abc', it returns a
byte array representing abc</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#toString--" title="class or interface in java.lang">toString</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>
</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="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.52">LOG</a></pre>
</li>
</ul>
<a name="operatorPrecedenceHashMap">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>operatorPrecedenceHashMap</h4>
<pre>private static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.54">operatorPrecedenceHashMap</a></pre>
</li>
</ul>
<a name="filterHashMap">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>filterHashMap</h4>
<pre>private static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</a>&lt;<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>,<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>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.55">filterHashMap</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="ParseFilter--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ParseFilter</h4>
<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.51">ParseFilter</a>()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="parseFilterString-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseFilterString</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.113">parseFilterString</a>(<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;filterString)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Parses the filterString and constructs a filter using it
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterString</code> - filter string given by the user</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>filter object we constructed</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="parseFilterString-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseFilterString</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.124">parseFilterString</a>(byte[]&nbsp;filterStringAsByteArray)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Parses the filterString and constructs a filter using it
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>filter object we constructed</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="extractFilterSimpleExpression-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractFilterSimpleExpression</h4>
<pre>public&nbsp;byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.214">extractFilterSimpleExpression</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;filterExpressionStartOffset)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Extracts a simple filter expression from the filter string given by the user
<p>
A simpleFilterExpression is of the form: FilterName('arg', 'arg', 'arg')
The user given filter string can have many simpleFilterExpressions combined
using operators.
<p>
This function extracts a simpleFilterExpression from the
larger filterString given the start offset of the simpler expression
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dd><code>filterExpressionStartOffset</code> - start index of the simple filter expression</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>byte array containing the simple filter expression</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="parseSimpleFilterExpression-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseSimpleFilterExpression</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.243">parseSimpleFilterExpression</a>(byte[]&nbsp;filterStringAsByteArray)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Constructs a filter object given a simple filter expression
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>filter object we constructed</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="getFilterName-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFilterName</h4>
<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.277">getFilterName</a>(byte[]&nbsp;filterStringAsByteArray)</pre>
<div class="block">Returns the filter name given a simple filter expression
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - a simple filter expression</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>name of filter in the simple filter expression</dd>
</dl>
</li>
</ul>
<a name="getFilterArguments-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFilterArguments</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;byte[]&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.305">getFilterArguments</a>(byte[]&nbsp;filterStringAsByteArray)</pre>
<div class="block">Returns the arguments of the filter from the filter string
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an ArrayList containing the arguments of the filter in the filter string</dd>
</dl>
</li>
</ul>
<a name="reduce-java.util.Stack-java.util.Stack-java.nio.ByteBuffer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reduce</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.375">reduce</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;operatorStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filterStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;operator)</pre>
<div class="block">This function is called while parsing the filterString and an operator is parsed
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>operatorStack</code> - the stack containing the operators and parenthesis</dd>
<dd><code>filterStack</code> - the stack containing the filters</dd>
<dd><code>operator</code> - the operator found while parsing the filterString</dd>
</dl>
</li>
</ul>
<a name="popArguments-java.util.Stack-java.util.Stack-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>popArguments</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.393">popArguments</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&gt;&nbsp;operatorStack,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Stack.html?is-external=true" title="class or interface in java.util">Stack</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.html" title="class in org.apache.hadoop.hbase.filter">Filter</a>&gt;&nbsp;filterStack)</pre>
<div class="block">Pops an argument from the operator stack and the number of arguments required by the operator
from the filterStack and evaluates them
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>operatorStack</code> - the stack containing the operators</dd>
<dd><code>filterStack</code> - the stack containing the filters</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the evaluated filter</dd>
</dl>
</li>
</ul>
<a name="hasHigherPriority-java.nio.ByteBuffer-java.nio.ByteBuffer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasHigherPriority</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.473">hasHigherPriority</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;a,
<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;b)</pre>
<div class="block">Returns which operator has higher precedence
<p>
If a has higher precedence than b, it returns true
If they have the same precedence, it returns false</div>
</li>
</ul>
<a name="createUnescapdArgument-byte:A-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createUnescapdArgument</h4>
<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.488">createUnescapdArgument</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;argumentStartIndex,
int&nbsp;argumentEndIndex)</pre>
<div class="block">Removes the single quote escaping a single quote - thus it returns an unescaped argument
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by user</dd>
<dd><code>argumentStartIndex</code> - start index of the argument</dd>
<dd><code>argumentEndIndex</code> - end index of the argument</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns an unescaped argument</dd>
</dl>
</li>
</ul>
<a name="checkForOr-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkForOr</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.526">checkForOr</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfOr)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ArrayIndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">ArrayIndexOutOfBoundsException</a></pre>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'OR'
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dd><code>indexOfOr</code> - index at which an 'O' was read</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the keyword 'OR' is at the current index</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ArrayIndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">ArrayIndexOutOfBoundsException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkForAnd-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkForAnd</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.552">checkForAnd</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfAnd)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'AND'
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dd><code>indexOfAnd</code> - index at which an 'A' was read</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the keyword 'AND' is at the current index</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkForSkip-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkForSkip</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.579">checkForSkip</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfSkip)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'SKIP'
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dd><code>indexOfSkip</code> - index at which an 'S' was read</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the keyword 'SKIP' is at the current index</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkForWhile-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkForWhile</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.609">checkForWhile</a>(byte[]&nbsp;filterStringAsByteArray,
int&nbsp;indexOfWhile)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></pre>
<div class="block">Checks if the current index of filter string we are on is the beginning of the keyword 'WHILE'
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filterStringAsByteArray</code> - filter string given by the user</dd>
<dd><code>indexOfWhile</code> - index at which an 'W' was read</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the keyword 'WHILE' is at the current index</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/charset/CharacterCodingException.html?is-external=true" title="class or interface in java.nio.charset">CharacterCodingException</a></code></dd>
</dl>
</li>
</ul>
<a name="isQuoteUnescaped-byte:A-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isQuoteUnescaped</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.639">isQuoteUnescaped</a>(byte[]&nbsp;array,
int&nbsp;quoteIndex)</pre>
<div class="block">Returns a boolean indicating whether the quote was escaped or not
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>array</code> - byte array in which the quote was found</dd>
<dd><code>quoteIndex</code> - index of the single quote</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns true if the quote was unescaped</dd>
</dl>
</li>
</ul>
<a name="removeQuotesFromByteArray-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeQuotesFromByteArray</h4>
<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.660">removeQuotesFromByteArray</a>(byte[]&nbsp;quotedByteArray)</pre>
<div class="block">Takes a quoted byte array and converts it into an unquoted byte array
For example: given a byte array representing 'abc', it returns a
byte array representing abc
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>quotedByteArray</code> - the quoted byte array</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Unquoted byte array</dd>
</dl>
</li>
</ul>
<a name="convertByteArrayToInt-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>convertByteArrayToInt</h4>
<pre>public static&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.682">convertByteArrayToInt</a>(byte[]&nbsp;numberAsByteArray)</pre>
<div class="block">Converts an int expressed in a byte array to an actual int
<p>
This doesn't use Bytes.toInt because that assumes
that there will be <a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#SIZEOF_INT"><code>Bytes.SIZEOF_INT</code></a> bytes available.
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>numberAsByteArray</code> - the int value expressed as a byte array</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the int value</dd>
</dl>
</li>
</ul>
<a name="convertByteArrayToLong-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>convertByteArrayToLong</h4>
<pre>public static&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.705">convertByteArrayToLong</a>(byte[]&nbsp;numberAsByteArray)</pre>
<div class="block">Converts a long expressed in a byte array to an actual long
<p>
This doesn't use Bytes.toLong because that assumes
that there will be <a href="../../../../../org/apache/hadoop/hbase/util/Bytes.html#SIZEOF_INT"><code>Bytes.SIZEOF_INT</code></a> bytes available.
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>numberAsByteArray</code> - the long value expressed as a byte array</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the long value</dd>
</dl>
</li>
</ul>
<a name="convertByteArrayToBoolean-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>convertByteArrayToBoolean</h4>
<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.748">convertByteArrayToBoolean</a>(byte[]&nbsp;booleanAsByteArray)</pre>
<div class="block">Converts a boolean expressed in a byte array to an actual boolean
<p>
This doesn't used Bytes.toBoolean because Bytes.toBoolean(byte [])
assumes that 1 stands for true and 0 for false.
Here, the byte array representing "true" and "false" is parsed
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>booleanAsByteArray</code> - the boolean value expressed as a byte array</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the boolean value</dd>
</dl>
</li>
</ul>
<a name="createCompareOperator-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createCompareOperator</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase">CompareOperator</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.778">createCompareOperator</a>(byte[]&nbsp;compareOpAsByteArray)</pre>
<div class="block">Takes a compareOperator symbol as a byte array and returns the corresponding CompareOperator</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>compareOpAsByteArray</code> - the comparatorOperator symbol as a byte array</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Compare Operator</dd>
</dl>
</li>
</ul>
<a name="createComparator-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createComparator</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/filter/ByteArrayComparable.html" title="class in org.apache.hadoop.hbase.filter">ByteArrayComparable</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.802">createComparator</a>(byte[]&nbsp;comparator)</pre>
<div class="block">Parses a comparator of the form comparatorType:comparatorValue form and returns a comparator
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>comparator</code> - the comparator in the form comparatorType:comparatorValue</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the parsed comparator</dd>
</dl>
</li>
</ul>
<a name="parseComparator-byte:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseComparator</h4>
<pre>public static&nbsp;byte[][]&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.831">parseComparator</a>(byte[]&nbsp;comparator)</pre>
<div class="block">Splits a column in comparatorType:comparatorValue form into separate byte arrays
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>comparator</code> - the comparator</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the parsed arguments of the comparator as a 2D byte array</dd>
</dl>
</li>
</ul>
<a name="getSupportedFilters--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportedFilters</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<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>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.852">getSupportedFilters</a>()</pre>
<div class="block">Return a Set of filters supported by the Filter Language</div>
</li>
</ul>
<a name="getAllFilters--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllFilters</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<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>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.860">getAllFilters</a>()</pre>
<div class="block">Returns all known filters</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an unmodifiable map of filters</dd>
</dl>
</li>
</ul>
<a name="registerFilter-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>registerFilter</h4>
<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/filter/ParseFilter.html#line.871">registerFilter</a>(<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;name,
<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;filterClass)</pre>
<div class="block">Register a new filter with the parser. If the filter is already registered,
an IllegalArgumentException will be thrown.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - a name for the filter</dd>
<dd><code>filterClass</code> - fully qualified class name</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/ParseFilter.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/filter/ParseConstants.html" title="class in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/filter/PrefixFilter.html" title="class in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/filter/ParseFilter.html" target="_top">Frames</a></li>
<li><a href="ParseFilter.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>