| <!DOCTYPE HTML> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (17) --> |
| <title>ColumnInterpreter (Apache HBase 4.0.0-alpha-1-SNAPSHOT API)</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="description" content="declaration: package: org.apache.hadoop.hbase.coprocessor, class: ColumnInterpreter"> |
| <meta name="generator" content="javadoc/ClassWriterImpl"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-3.6.1.min.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> |
| </head> |
| <body class="class-declaration-page"> |
| <script type="text/javascript">var evenRowColor = "even-row-color"; |
| var oddRowColor = "odd-row-color"; |
| var tableTab = "table-tab"; |
| var activeTableTab = "active-table-tab"; |
| var pathtoroot = "../../../../../"; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <div class="flex-box"> |
| <header role="banner" class="flex-header"> |
| <nav role="navigation"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="top-nav" id="navbar-top"> |
| <div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> |
| <ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="nav-bar-cell1-rev">Class</li> |
| <li><a href="class-use/ColumnInterpreter.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#class">Help</a></li> |
| </ul> |
| </div> |
| <div class="sub-nav"> |
| <div> |
| <ul class="sub-nav-list"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li><a href="#constructor-summary">Constr</a> | </li> |
| <li><a href="#method-summary">Method</a></li> |
| </ul> |
| <ul class="sub-nav-list"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor-detail">Constr</a> | </li> |
| <li><a href="#method-detail">Method</a></li> |
| </ul> |
| </div> |
| <div class="nav-list-search"><label for="search-input">SEARCH:</label> |
| <input type="text" id="search-input" value="search" disabled="disabled"> |
| <input type="reset" id="reset-button" value="reset" disabled="disabled"> |
| </div> |
| </div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <span class="skip-nav" id="skip-navbar-top"></span></nav> |
| </header> |
| <div class="flex-content"> |
| <main role="main"> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">org.apache.hadoop.hbase.coprocessor</a></div> |
| <h1 title="Class ColumnInterpreter" class="title">Class ColumnInterpreter<T,<wbr>S,<wbr>P extends org.apache.hbase.thirdparty.com.google.protobuf.Message,<wbr>Q extends org.apache.hbase.thirdparty.com.google.protobuf.Message,<wbr>R extends org.apache.hbase.thirdparty.com.google.protobuf.Message></h1> |
| </div> |
| <div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> |
| <div class="inheritance">org.apache.hadoop.hbase.coprocessor.ColumnInterpreter<T,<wbr>S,<wbr>P,<wbr>Q,<wbr>R></div> |
| </div> |
| <section class="class-description" id="class-description"> |
| <dl class="notes"> |
| <dt>Direct Known Subclasses:</dt> |
| <dd><code><a href="../client/coprocessor/BigDecimalColumnInterpreter.html" title="class in org.apache.hadoop.hbase.client.coprocessor">BigDecimalColumnInterpreter</a></code>, <code><a href="../client/coprocessor/DoubleColumnInterpreter.html" title="class in org.apache.hadoop.hbase.client.coprocessor">DoubleColumnInterpreter</a></code>, <code><a href="../client/coprocessor/LongColumnInterpreter.html" title="class in org.apache.hadoop.hbase.client.coprocessor">LongColumnInterpreter</a></code></dd> |
| </dl> |
| <hr> |
| <div class="type-signature"><span class="annotations">@LimitedPrivate("Coprocesssor") |
| @Evolving |
| </span><span class="modifiers">public abstract class </span><span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-50">ColumnInterpreter</a><T,<wbr>S,<wbr>P extends org.apache.hbase.thirdparty.com.google.protobuf.Message,<wbr>Q extends org.apache.hbase.thirdparty.com.google.protobuf.Message,<wbr>R extends org.apache.hbase.thirdparty.com.google.protobuf.Message></span> |
| <span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> |
| <div class="block">Defines how value for specific column is interpreted and provides utility methods like compare, |
| add, multiply etc for them. Takes column family, column qualifier and return the cell value. Its |
| concrete implementation should handle null case gracefully. Refer to |
| <a href="../client/coprocessor/LongColumnInterpreter.html" title="class in org.apache.hadoop.hbase.client.coprocessor"><code>LongColumnInterpreter</code></a> for an example. |
| <p> |
| Takes two generic parameters and three Message parameters. The cell value type of the interpreter |
| is <T>. During some computations like sum, average, the return type can be different than |
| the cell value data type, for eg, sum of int cell values might overflow in case of a int result, |
| we should use Long for its result. Therefore, this class mandates to use a different (promoted) |
| data type for result of these computations <S>. All computations are performed on the |
| promoted data type <S>. There is a conversion method |
| <a href="#castToReturnType(T)"><code>castToReturnType(Object)</code></a> which takes a <T> type and returns a |
| <S> type. The AggregateIm>lementation uses PB messages to initialize the user's |
| ColumnInterpreter implementation, and for sending the responses back to AggregationClient. |
| <p> |
| <T> Cell value data type<br> |
| <S> Promoted data type<br> |
| <P> PB message that is used to transport initializer specific bytes<br> |
| <Q> PB message that is used to transport Cell (<T>) instance<br> |
| <R> PB message that is used to transport Promoted (<S>) instance</div> |
| </section> |
| <section class="summary"> |
| <ul class="summary-list"> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <li> |
| <section class="constructor-summary" id="constructor-summary"> |
| <h2>Constructor Summary</h2> |
| <div class="caption"><span>Constructors</span></div> |
| <div class="summary-table two-column-summary"> |
| <div class="table-header col-first">Constructor</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">ColumnInterpreter</a>()</code></div> |
| <div class="col-last even-row-color"> </div> |
| </div> |
| </section> |
| </li> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <li> |
| <section class="method-summary" id="method-summary"> |
| <h2>Method Summary</h2> |
| <div id="method-summary-table"> |
| <div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div> |
| <div id="method-summary-table.tabpanel" role="tabpanel"> |
| <div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Method</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#add(S,S)" class="member-name-link">add</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> l1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> l2)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">Returns sum or non null value among (if either of them is null); otherwise returns a null.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#castToCellType(S)" class="member-name-link">castToCellType</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> response)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">The response message comes as type S.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#castToReturnType(T)" class="member-name-link">castToReturnType</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> o)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">provides casting opportunity between the data types.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract int</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#compare(T,T)" class="member-name-link">compare</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> l1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> l2)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This takes care if either of arguments are null.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract double</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#divideForAvg(S,java.lang.Long)" class="member-name-link">divideForAvg</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link">Long</a> l)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">used for computing average of <S> data values.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getCellValueFromProto(Q)" class="member-name-link">getCellValueFromProto</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">Q</a> q)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method gets the PB message corresponding to the cell type</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getMaxValue()" class="member-name-link">getMaxValue</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">returns the maximum value for this type T</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getMinValue()" class="member-name-link">getMinValue</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getPromotedValueFromProto(R)" class="member-name-link">getPromotedValueFromProto</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">R</a> r)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method gets the promoted type from the proto message</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">Q</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getProtoForCellType(T)" class="member-name-link">getProtoForCellType</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> t)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method gets the PB message corresponding to the cell type</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">R</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getProtoForPromotedType(S)" class="member-name-link">getProtoForPromotedType</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> s)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method gets the PB message corresponding to the promoted type</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">P</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getRequestData()" class="member-name-link">getRequestData</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method should return any additional data that is needed on the server side to construct |
| the ColumnInterpreter.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getValue(byte%5B%5D,byte%5B%5D,org.apache.hadoop.hbase.Cell)" class="member-name-link">getValue</a><wbr>(byte[] colFamily, |
| byte[] colQualifier, |
| <a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> c)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">Returns value of type T</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#increment(S)" class="member-name-link">increment</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">Returns increment</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#initialize(P)" class="member-name-link">initialize</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">P</a> msg)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">This method should initialize any field(s) of the ColumnInterpreter with a parsing of the |
| passed message bytes (used on the server side).</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#multiply(S,S)" class="member-name-link">multiply</a><wbr>(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o2)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> |
| <div class="block">Returns multiplication</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> |
| <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <section class="details"> |
| <ul class="details-list"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <li> |
| <section class="constructor-details" id="constructor-detail"> |
| <h2>Constructor Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="<init>()"> |
| <h3>ColumnInterpreter</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-52">ColumnInterpreter</a></span>()</div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ============ METHOD DETAIL ========== --> |
| <li> |
| <section class="method-details" id="method-detail"> |
| <h2>Method Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="getValue(byte[],byte[],org.apache.hadoop.hbase.Cell)"> |
| <h3>getValue</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-56">getValue</a></span><wbr><span class="parameters">(byte[] colFamily, |
| byte[] colQualifier, |
| <a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> c)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div> |
| <div class="block">Returns value of type T</div> |
| <dl class="notes"> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="add(S,S)"> |
| <h3 id="add(java.lang.Object,java.lang.Object)">add</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-59">add</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> l1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> l2)</span></div> |
| <div class="block">Returns sum or non null value among (if either of them is null); otherwise returns a null.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getMaxValue()"> |
| <h3>getMaxValue</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-64">getMaxValue</a></span>()</div> |
| <div class="block">returns the maximum value for this type T</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getMinValue()"> |
| <h3>getMinValue</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-66">getMinValue</a></span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="multiply(S,S)"> |
| <h3 id="multiply(java.lang.Object,java.lang.Object)">multiply</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-69">multiply</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o2)</span></div> |
| <div class="block">Returns multiplication</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="increment(S)"> |
| <h3 id="increment(java.lang.Object)">increment</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-72">increment</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o)</span></div> |
| <div class="block">Returns increment</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="castToReturnType(T)"> |
| <h3 id="castToReturnType(java.lang.Object)">castToReturnType</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-77">castToReturnType</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> o)</span></div> |
| <div class="block">provides casting opportunity between the data types.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="compare(T,T)"> |
| <h3 id="compare(java.lang.Object,java.lang.Object)">compare</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-86">compare</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> l1, |
| <a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> l2)</span></div> |
| <div class="block">This takes care if either of arguments are null. returns 0 if they are equal or both are null; |
| <ul> |
| <li>> 0 if l1 > l2 or l1 is not null and l2 is null.</li> |
| <li>< 0 if l1 < l2 or l1 is null and l2 is not null.</li> |
| </ul></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="divideForAvg(S,java.lang.Long)"> |
| <h3 id="divideForAvg(java.lang.Object,java.lang.Long)">divideForAvg</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-92">divideForAvg</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> o, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link">Long</a> l)</span></div> |
| <div class="block">used for computing average of <S> data values. Not providing the divide method that takes |
| two <S> values as it is not needed as of now.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getRequestData()"> |
| <h3>getRequestData</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">P</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-102">getRequestData</a></span>()</div> |
| <div class="block">This method should return any additional data that is needed on the server side to construct |
| the ColumnInterpreter. The server will pass this to the <a href="#initialize(P)"><code>initialize(P)</code></a> method. If there is |
| no ColumnInterpreter specific data (for e.g., |
| <a href="../client/coprocessor/LongColumnInterpreter.html" title="class in org.apache.hadoop.hbase.client.coprocessor"><code>LongColumnInterpreter</code></a>) then null should be |
| returned.</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the PB message</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="initialize(P)"> |
| <h3 id="initialize(org.apache.hbase.thirdparty.com.google.protobuf.Message)">initialize</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-108">initialize</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">P</a> msg)</span></div> |
| <div class="block">This method should initialize any field(s) of the ColumnInterpreter with a parsing of the |
| passed message bytes (used on the server side).</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getProtoForCellType(T)"> |
| <h3 id="getProtoForCellType(java.lang.Object)">getProtoForCellType</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">Q</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-114">getProtoForCellType</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a> t)</span></div> |
| <div class="block">This method gets the PB message corresponding to the cell type</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the PB message for the cell-type instance</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getCellValueFromProto(Q)"> |
| <h3 id="getCellValueFromProto(org.apache.hbase.thirdparty.com.google.protobuf.Message)">getCellValueFromProto</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-120">getCellValueFromProto</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">Q</a> q)</span></div> |
| <div class="block">This method gets the PB message corresponding to the cell type</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the cell-type instance from the PB message</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getProtoForPromotedType(S)"> |
| <h3 id="getProtoForPromotedType(java.lang.Object)">getProtoForPromotedType</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">R</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-126">getProtoForPromotedType</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> s)</span></div> |
| <div class="block">This method gets the PB message corresponding to the promoted type</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the PB message for the promoted-type instance</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getPromotedValueFromProto(R)"> |
| <h3 id="getPromotedValueFromProto(org.apache.hbase.thirdparty.com.google.protobuf.Message)">getPromotedValueFromProto</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-132">getPromotedValueFromProto</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">R</a> r)</span></div> |
| <div class="block">This method gets the promoted type from the proto message</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the promoted-type instance from the PB message</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="castToCellType(S)"> |
| <h3 id="castToCellType(java.lang.Object)">castToCellType</h3> |
| <div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type"><a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">T</a></span> <span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/coprocessor/ColumnInterpreter.html#line-138">castToCellType</a></span><wbr><span class="parameters">(<a href="ColumnInterpreter.html" title="type parameter in ColumnInterpreter">S</a> response)</span></div> |
| <div class="block">The response message comes as type S. This will convert/cast it to T. In some sense, performs |
| the opposite of <a href="#castToReturnType(T)"><code>castToReturnType(Object)</code></a></div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= END OF CLASS DATA ========= --> |
| </main> |
| <footer role="contentinfo"> |
| <hr> |
| <p class="legal-copy"><small>Copyright © 2007–2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </div> |
| </div> |
| </body> |
| </html> |