<!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 (version 1.7.0_25) on Tue Dec 03 13:53:43 PST 2013 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>SequenceValueProducer (Carbonado 1.2.3 API)</title>
<meta name="date" content="2013-12-03">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="SequenceValueProducer (Carbonado 1.2.3 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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/SequenceValueProducer.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-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/amazon/carbonado/sequence/SequenceValueGenerator.html" title="class in com.amazon.carbonado.sequence"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducerPool.html" title="class in com.amazon.carbonado.sequence"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/amazon/carbonado/sequence/SequenceValueProducer.html" target="_top">Frames</a></li>
<li><a href="SequenceValueProducer.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All 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>Field&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>Field&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">com.amazon.carbonado.sequence</div>
<h2 title="Interface SequenceValueProducer" class="title">Interface SequenceValueProducer</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../com/amazon/carbonado/sequence/AbstractSequenceValueProducer.html" title="class in com.amazon.carbonado.sequence">AbstractSequenceValueProducer</a>, <a href="../../../../com/amazon/carbonado/sequence/SequenceValueGenerator.html" title="class in com.amazon.carbonado.sequence">SequenceValueGenerator</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">SequenceValueProducer</span></pre>
<div class="block">Produces values for sequences.</div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>1.2</dd>
<dt><span class="strong">Author:</span></dt>
  <dd>Brian S O'Neill, bcastill</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../com/amazon/carbonado/Sequence.html" title="annotation in com.amazon.carbonado"><code>Sequence</code></a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducer.html#nextDecimalValue()">nextDecimalValue</a></strong>()</code>
<div class="block">Returns the next decimal string value from the sequence, which remains
 positive.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducer.html#nextIntValue()">nextIntValue</a></strong>()</code>
<div class="block">Returns the next value from the sequence, which may wrap negative if all
 positive values are exhausted.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducer.html#nextLongValue()">nextLongValue</a></strong>()</code>
<div class="block">Returns the next value from the sequence, which may wrap negative if all
 positive values are exhausted.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducer.html#nextNumericalValue(int, int)">nextNumericalValue</a></strong>(int&nbsp;radix,
                  int&nbsp;minLength)</code>
<div class="block">Returns the next numerical string value from the sequence, which remains
 positive.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducer.html#returnReservedValues()">returnReservedValues</a></strong>()</code>
<div class="block">Allow any unused reserved values to be returned for re-use.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="nextLongValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextLongValue</h4>
<pre>long&nbsp;nextLongValue()
                   throws <a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></pre>
<div class="block">Returns the next value from the sequence, which may wrap negative if all
 positive values are exhausted. When sequence wraps back to initial
 value, the sequence is fully exhausted, and an exception is thrown to
 indicate this.

 <p>Note: this method throws PersistException even for fetch failures
 since this method is called by insert operations. Insert operations can
 only throw a PersistException.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></code> - for fetch/persist failure or if sequence is exhausted.</dd></dl>
</li>
</ul>
<a name="nextIntValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextIntValue</h4>
<pre>int&nbsp;nextIntValue()
                 throws <a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></pre>
<div class="block">Returns the next value from the sequence, which may wrap negative if all
 positive values are exhausted. When sequence wraps back to initial
 value, the sequence is fully exhausted, and an exception is thrown to
 indicate this.

 <p>Note: this method throws PersistException even for fetch failures
 since this method is called by insert operations. Insert operations can
 only throw a PersistException.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></code> - for fetch/persist failure or if sequence is
 exhausted for int values.</dd></dl>
</li>
</ul>
<a name="nextDecimalValue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextDecimalValue</h4>
<pre>java.lang.String&nbsp;nextDecimalValue()
                                  throws <a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></pre>
<div class="block">Returns the next decimal string value from the sequence, which remains
 positive. When sequence wraps back to initial value, the sequence is
 fully exhausted, and an exception is thrown to indicate this.

 <p>Note: this method throws PersistException even for fetch failures
 since this method is called by insert operations. Insert operations can
 only throw a PersistException.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></code> - for fetch/persist failure or if sequence is exhausted.</dd></dl>
</li>
</ul>
<a name="nextNumericalValue(int, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextNumericalValue</h4>
<pre>java.lang.String&nbsp;nextNumericalValue(int&nbsp;radix,
                                  int&nbsp;minLength)
                                    throws <a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></pre>
<div class="block">Returns the next numerical string value from the sequence, which remains
 positive. When sequence wraps back to initial value, the sequence is
 fully exhausted, and an exception is thrown to indicate this.

 <p>Note: this method throws PersistException even for fetch failures
 since this method is called by insert operations. Insert operations can
 only throw a PersistException.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>radix</code> - use 2 for binary, 10 for decimal, 16 for hex. Max is 36.</dd><dd><code>minLength</code> - ensure string is at least this long (padded with zeros if
 necessary) to ensure proper string sort</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></code> - for fetch/persist failure or if sequence is exhausted.</dd></dl>
</li>
</ul>
<a name="returnReservedValues()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>returnReservedValues</h4>
<pre>boolean&nbsp;returnReservedValues()
                             throws <a href="../../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a>,
                                    <a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></pre>
<div class="block">Allow any unused reserved values to be returned for re-use. If the
 repository is shared by other processes, then reserved values might not
 be returnable.

 <p>This method should be called during the shutdown process of a
 repository, although calling it does not invalidate this
 SequenceValueGenerator. If getNextValue is called again, it will reserve
 values again.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>true if reserved values were returned</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code></dd>
<dd><code><a href="../../../../com/amazon/carbonado/PersistException.html" title="class in com.amazon.carbonado">PersistException</a></code></dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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/SequenceValueProducer.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-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/amazon/carbonado/sequence/SequenceValueGenerator.html" title="class in com.amazon.carbonado.sequence"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/amazon/carbonado/sequence/SequenceValueProducerPool.html" title="class in com.amazon.carbonado.sequence"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/amazon/carbonado/sequence/SequenceValueProducer.html" target="_top">Frames</a></li>
<li><a href="SequenceValueProducer.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All 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>Field&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>Field&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; 2006-2013 <a href="https://github.com/Carbonado/Carbonado">Amazon Technologies, Inc.</a>. All Rights Reserved.</small></p>
</body>
</html>