blob: 088aec5043a3d3d57f766356c3bcb5724498207d [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 (1.8.0_292) on Tue Jun 15 06:13:00 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>HBaseTimelineSchemaUtils (Apache Hadoop YARN TimelineService HBase Common 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<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="HBaseTimelineSchemaUtils (Apache Hadoop YARN TimelineService HBase Common 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/HBaseTimelineSchemaUtils.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/yarn/server/timelineservice/storage/common/GenericConverter.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.common"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/KeyConverter.html" title="interface in org.apache.hadoop.yarn.server.timelineservice.storage.common"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../../index.html?org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html" target="_top">Frames</a></li>
<li><a href="HBaseTimelineSchemaUtils.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>Constr&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>Constr&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.yarn.server.timelineservice.storage.common</div>
<h2 title="Class HBaseTimelineSchemaUtils" class="title">Class HBaseTimelineSchemaUtils</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.yarn.server.timelineservice.storage.common.HBaseTimelineSchemaUtils</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public final class <span class="typeNameLabel">HBaseTimelineSchemaUtils</span>
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">A bunch of utility functions used in HBase TimelineService common module.</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>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#MILLIS_ONE_DAY">MILLIS_ONE_DAY</a></span></code>
<div class="block">milliseconds in one day.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static 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 <a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/Attribute.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.flow">Attribute</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#combineAttributes-org.apache.hadoop.yarn.server.timelineservice.storage.flow.Attribute:A-org.apache.hadoop.yarn.server.timelineservice.storage.flow.AggregationOperation-">combineAttributes</a></span>(<a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/Attribute.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.flow">Attribute</a>[]&nbsp;attributes,
<a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/AggregationOperation.html" title="enum in org.apache.hadoop.yarn.server.timelineservice.storage.flow">AggregationOperation</a>&nbsp;aggOp)</code>
<div class="block">Combines the input array of attributes and the input aggregation operation
into a new array of attributes.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#convertApplicationIdToString-org.apache.hadoop.yarn.api.records.ApplicationId-">convertApplicationIdToString</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)</code>
<div class="block">A utility method that converts ApplicationId to string without using
FastNumberFormat in order to avoid the incompatibility issue caused
by mixing hadoop-common 2.5.1 and hadoop-yarn-api 3.0 in this module.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#getTopOfTheDayTimestamp-long-">getTopOfTheDayTimestamp</a></span>(long&nbsp;ts)</code>
<div class="block">returns the timestamp of that day's start (which is midnight 00:00:00 AM)
for a given input timestamp.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#invertInt-int-">invertInt</a></span>(int&nbsp;key)</code>
<div class="block">Converts an int into it's inverse int to be used in (row) keys
where we want to have the largest int value in the top of the table
(scans start at the largest int first).</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/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html#isIntegralValue-java.lang.Object-">isIntegralValue</a></span>(<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>&nbsp;obj)</code>
<div class="block">Checks if passed object is of integral type(Short/Integer/Long).</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="MILLIS_ONE_DAY">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>MILLIS_ONE_DAY</h4>
<pre>public static final&nbsp;long MILLIS_ONE_DAY</pre>
<div class="block">milliseconds in one day.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.timelineservice.storage.common.HBaseTimelineSchemaUtils.MILLIS_ONE_DAY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="combineAttributes-org.apache.hadoop.yarn.server.timelineservice.storage.flow.Attribute:A-org.apache.hadoop.yarn.server.timelineservice.storage.flow.AggregationOperation-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>combineAttributes</h4>
<pre>public static&nbsp;<a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/Attribute.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.flow">Attribute</a>[]&nbsp;combineAttributes(<a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/Attribute.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.flow">Attribute</a>[]&nbsp;attributes,
<a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/flow/AggregationOperation.html" title="enum in org.apache.hadoop.yarn.server.timelineservice.storage.flow">AggregationOperation</a>&nbsp;aggOp)</pre>
<div class="block">Combines the input array of attributes and the input aggregation operation
into a new array of attributes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>attributes</code> - Attributes to be combined.</dd>
<dd><code>aggOp</code> - Aggregation operation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>array of combined attributes.</dd>
</dl>
</li>
</ul>
<a name="invertInt-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invertInt</h4>
<pre>public static&nbsp;int&nbsp;invertInt(int&nbsp;key)</pre>
<div class="block">Converts an int into it's inverse int to be used in (row) keys
where we want to have the largest int value in the top of the table
(scans start at the largest int first).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - value to be inverted so that the latest version will be first in
a scan.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>inverted int</dd>
</dl>
</li>
</ul>
<a name="getTopOfTheDayTimestamp-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTopOfTheDayTimestamp</h4>
<pre>public static&nbsp;long&nbsp;getTopOfTheDayTimestamp(long&nbsp;ts)</pre>
<div class="block">returns the timestamp of that day's start (which is midnight 00:00:00 AM)
for a given input timestamp.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ts</code> - Timestamp.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>timestamp of that day's beginning (midnight)</dd>
</dl>
</li>
</ul>
<a name="isIntegralValue-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isIntegralValue</h4>
<pre>public static&nbsp;boolean&nbsp;isIntegralValue(<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>&nbsp;obj)</pre>
<div class="block">Checks if passed object is of integral type(Short/Integer/Long).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>obj</code> - Object to be checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if object passed is of type Short or Integer or Long, false
otherwise.</dd>
</dl>
</li>
</ul>
<a name="convertApplicationIdToString-org.apache.hadoop.yarn.api.records.ApplicationId-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>convertApplicationIdToString</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;convertApplicationIdToString(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId)</pre>
<div class="block">A utility method that converts ApplicationId to string without using
FastNumberFormat in order to avoid the incompatibility issue caused
by mixing hadoop-common 2.5.1 and hadoop-yarn-api 3.0 in this module.
This is a work-around implementation as discussed in YARN-6905.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>appId</code> - application id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the string representation of the given application id</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/HBaseTimelineSchemaUtils.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/yarn/server/timelineservice/storage/common/GenericConverter.html" title="class in org.apache.hadoop.yarn.server.timelineservice.storage.common"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../../org/apache/hadoop/yarn/server/timelineservice/storage/common/KeyConverter.html" title="interface in org.apache.hadoop.yarn.server.timelineservice.storage.common"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../../index.html?org/apache/hadoop/yarn/server/timelineservice/storage/common/HBaseTimelineSchemaUtils.html" target="_top">Frames</a></li>
<li><a href="HBaseTimelineSchemaUtils.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>Constr&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>Constr&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; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>