|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
|
|
|
<html lang="en"> |
|
<head> |
|
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
|
<title>IDAuthority (JanusGraph-Core: Core Library for JanusGraph 1.0.0 API)</title> |
|
<meta name="date" content="2023-10-21"> |
|
<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="IDAuthority (JanusGraph-Core: Core Library for JanusGraph 1.0.0 API)"; |
|
} |
|
} |
|
catch(err) { |
|
} |
|
|
|
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6}; |
|
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; |
|
var altColor = "altColor"; |
|
var rowColor = "rowColor"; |
|
var tableTab = "tableTab"; |
|
var activeTableTab = "activeTableTab"; |
|
</script> |
|
<noscript> |
|
<div>JavaScript is disabled on your browser.</div> |
|
</noscript> |
|
|
|
<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/IDAuthority.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/janusgraph/diskstorage/EntryMetaData.Map.html" title="class in org.janusgraph.diskstorage"><span class="typeNameLink">Prev Class</span></a></li> |
|
<li><a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage"><span class="typeNameLink">Next Class</span></a></li> |
|
</ul> |
|
<ul class="navList"> |
|
<li><a href="../../../index.html?org/janusgraph/diskstorage/IDAuthority.html" target="_top">Frames</a></li> |
|
<li><a href="IDAuthority.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"> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</script> |
|
</div> |
|
<div> |
|
<ul class="subNavList"> |
|
<li>Summary: </li> |
|
<li>Nested | </li> |
|
<li>Field | </li> |
|
<li>Constr | </li> |
|
<li><a href="#method.summary">Method</a></li> |
|
</ul> |
|
<ul class="subNavList"> |
|
<li>Detail: </li> |
|
<li>Field | </li> |
|
<li>Constr | </li> |
|
<li><a href="#method.detail">Method</a></li> |
|
</ul> |
|
</div> |
|
<a name="skip.navbar.top"> |
|
|
|
</a></div> |
|
|
|
|
|
<div class="header"> |
|
<div class="subTitle">org.janusgraph.diskstorage</div> |
|
<h2 title="Interface IDAuthority" class="title">Interface IDAuthority</h2> |
|
</div> |
|
<div class="contentContainer"> |
|
<div class="description"> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<dl> |
|
<dt>All Known Implementing Classes:</dt> |
|
<dd><a href="../../../org/janusgraph/diskstorage/idmanagement/AbstractIDAuthority.html" title="class in org.janusgraph.diskstorage.idmanagement">AbstractIDAuthority</a>, <a href="../../../org/janusgraph/diskstorage/idmanagement/ConsistentKeyIDAuthority.html" title="class in org.janusgraph.diskstorage.idmanagement">ConsistentKeyIDAuthority</a></dd> |
|
</dl> |
|
<hr> |
|
<br> |
|
<pre>public interface <span class="typeNameLabel">IDAuthority</span></pre> |
|
<div class="block">Handles the unique allocation of ids. Returns blocks of ids that are uniquely allocated to the caller so that |
|
they can be used to uniquely identify elements. *</div> |
|
<dl> |
|
<dt><span class="simpleTagLabel">Author:</span></dt> |
|
<dd>Matthias Broecheler (me@matthiasb.com)</dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
</div> |
|
<div class="summary"> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
|
|
<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"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </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>void</code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#close--">close</a></span>()</code> |
|
<div class="block">Closes the IDAuthority and any underlying storage backend.</div> |
|
</td> |
|
</tr> |
|
<tr id="i1" class="rowColor"> |
|
<td class="colFirst"><code><a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage">IDBlock</a></code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getIDBlock-int-int-java.time.Duration-">getIDBlock</a></span>(int partition, |
|
int idNamespace, |
|
<a href="https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html?is-external=true" title="class or interface in java.time">Duration</a> timeout)</code> |
|
<div class="block">Returns a block of new ids in the form of <a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage"><code>IDBlock</code></a>.</div> |
|
</td> |
|
</tr> |
|
<tr id="i2" class="altColor"> |
|
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../org/janusgraph/diskstorage/keycolumnvalue/KeyRange.html" title="class in org.janusgraph.diskstorage.keycolumnvalue">KeyRange</a>></code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getLocalIDPartition--">getLocalIDPartition</a></span>()</code> |
|
<div class="block">Returns the lower and upper limits of the key range assigned to this local machine as an array with two entries.</div> |
|
</td> |
|
</tr> |
|
<tr id="i3" class="rowColor"> |
|
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getUniqueID--">getUniqueID</a></span>()</code> |
|
<div class="block">Return the globally unique string used by this <code>IDAuthority</code> |
|
instance to recognize its ID allocations and distinguish its allocations |
|
from those belonging to other <code>IDAuthority</code> instances.</div> |
|
</td> |
|
</tr> |
|
<tr id="i4" class="altColor"> |
|
<td class="colFirst"><code>void</code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#setIDBlockSizer-org.janusgraph.graphdb.database.idassigner.IDBlockSizer-">setIDBlockSizer</a></span>(<a href="../../../org/janusgraph/graphdb/database/idassigner/IDBlockSizer.html" title="interface in org.janusgraph.graphdb.database.idassigner">IDBlockSizer</a> sizer)</code> |
|
<div class="block">Sets the <a href="../../../org/janusgraph/graphdb/database/idassigner/IDBlockSizer.html" title="interface in org.janusgraph.graphdb.database.idassigner"><code>IDBlockSizer</code></a> to be used by this IDAuthority.</div> |
|
</td> |
|
</tr> |
|
<tr id="i5" class="rowColor"> |
|
<td class="colFirst"><code>boolean</code></td> |
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/janusgraph/diskstorage/IDAuthority.html#supportsInterruption--">supportsInterruption</a></span>()</code> |
|
<div class="block">Whether <a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getIDBlock-int-int-java.time.Duration-"><code>getIDBlock(int, int, Duration)</code></a> may be safely interrupted.</div> |
|
</td> |
|
</tr> |
|
</table> |
|
</li> |
|
</ul> |
|
</li> |
|
</ul> |
|
</div> |
|
<div class="details"> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
|
|
<ul class="blockList"> |
|
<li class="blockList"><a name="method.detail"> |
|
|
|
</a> |
|
<h3>Method Detail</h3> |
|
<a name="getIDBlock-int-int-java.time.Duration-"> |
|
|
|
</a> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<h4>getIDBlock</h4> |
|
<pre><a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage">IDBlock</a> getIDBlock(int partition, |
|
int idNamespace, |
|
<a href="https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html?is-external=true" title="class or interface in java.time">Duration</a> timeout) |
|
throws <a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></pre> |
|
<div class="block">Returns a block of new ids in the form of <a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage"><code>IDBlock</code></a>. It is guaranteed that |
|
the block of ids for the particular partition id is uniquely assigned, |
|
that is, the block of ids has not been previously and will not |
|
subsequently be assigned again when invoking this method on the local or |
|
any remote machine that is connected to the underlying storage backend. |
|
<p> |
|
In other words, this method has to ensure that ids are uniquely assigned |
|
per partition. |
|
<p> |
|
It is furthermore guaranteed that any id of the returned IDBlock is smaller than the upper bound |
|
for the given partition as read from the <a href="../../../org/janusgraph/graphdb/database/idassigner/IDBlockSizer.html" title="interface in org.janusgraph.graphdb.database.idassigner"><code>IDBlockSizer</code></a> set on this IDAuthority and that the |
|
number of ids returned is equal to the block size of the IDBlockSizer.</div> |
|
<dl> |
|
<dt><span class="paramLabel">Parameters:</span></dt> |
|
<dd><code>partition</code> - Partition for which to request an id block</dd> |
|
<dd><code>idNamespace</code> - namespace for ids within a partition</dd> |
|
<dd><code>timeout</code> - When a call to this method is unable to return a id block |
|
before this timeout elapses, the implementation must give up |
|
and throw a <code>StorageException</code> ASAP</dd> |
|
<dt><span class="returnLabel">Returns:</span></dt> |
|
<dd>a range of ids for the <code>partition</code> parameter</dd> |
|
<dt><span class="throwsLabel">Throws:</span></dt> |
|
<dd><code><a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></code></dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
<a name="getLocalIDPartition--"> |
|
|
|
</a> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<h4>getLocalIDPartition</h4> |
|
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../org/janusgraph/diskstorage/keycolumnvalue/KeyRange.html" title="class in org.janusgraph.diskstorage.keycolumnvalue">KeyRange</a>> getLocalIDPartition() |
|
throws <a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></pre> |
|
<div class="block">Returns the lower and upper limits of the key range assigned to this local machine as an array with two entries.</div> |
|
<dl> |
|
<dt><span class="returnLabel">Returns:</span></dt> |
|
<dt><span class="throwsLabel">Throws:</span></dt> |
|
<dd><code><a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></code></dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
<a name="setIDBlockSizer-org.janusgraph.graphdb.database.idassigner.IDBlockSizer-"> |
|
|
|
</a> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<h4>setIDBlockSizer</h4> |
|
<pre>void setIDBlockSizer(<a href="../../../org/janusgraph/graphdb/database/idassigner/IDBlockSizer.html" title="interface in org.janusgraph.graphdb.database.idassigner">IDBlockSizer</a> sizer)</pre> |
|
<div class="block">Sets the <a href="../../../org/janusgraph/graphdb/database/idassigner/IDBlockSizer.html" title="interface in org.janusgraph.graphdb.database.idassigner"><code>IDBlockSizer</code></a> to be used by this IDAuthority. The IDBlockSizer specifies the block size for |
|
each partition guaranteeing that the same partition will always be assigned the same block size. |
|
<p> |
|
The IDBlockSizer cannot be changed for an IDAuthority that has already been used (i.e. after invoking <a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getIDBlock-int-int-java.time.Duration-"><code>getIDBlock(int, int, Duration)</code></a>.</div> |
|
<dl> |
|
<dt><span class="paramLabel">Parameters:</span></dt> |
|
<dd><code>sizer</code> - The IDBlockSizer to be used by this IDAuthority</dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
<a name="close--"> |
|
|
|
</a> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<h4>close</h4> |
|
<pre>void close() |
|
throws <a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></pre> |
|
<div class="block">Closes the IDAuthority and any underlying storage backend.</div> |
|
<dl> |
|
<dt><span class="throwsLabel">Throws:</span></dt> |
|
<dd><code><a href="../../../org/janusgraph/diskstorage/BackendException.html" title="class in org.janusgraph.diskstorage">BackendException</a></code></dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
<a name="getUniqueID--"> |
|
|
|
</a> |
|
<ul class="blockList"> |
|
<li class="blockList"> |
|
<h4>getUniqueID</h4> |
|
<pre><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> getUniqueID()</pre> |
|
<div class="block">Return the globally unique string used by this <code>IDAuthority</code> |
|
instance to recognize its ID allocations and distinguish its allocations |
|
from those belonging to other <code>IDAuthority</code> instances. |
|
|
|
This should normally be the value of |
|
<a href="../../../org/janusgraph/graphdb/configuration/GraphDatabaseConfiguration.html#UNIQUE_INSTANCE_ID"><code>GraphDatabaseConfiguration.UNIQUE_INSTANCE_ID</code></a>, though that's not |
|
strictly technically necessary.</div> |
|
<dl> |
|
<dt><span class="returnLabel">Returns:</span></dt> |
|
<dd>unique ID string</dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
<a name="supportsInterruption--"> |
|
|
|
</a> |
|
<ul class="blockListLast"> |
|
<li class="blockList"> |
|
<h4>supportsInterruption</h4> |
|
<pre>boolean supportsInterruption()</pre> |
|
<div class="block">Whether <a href="../../../org/janusgraph/diskstorage/IDAuthority.html#getIDBlock-int-int-java.time.Duration-"><code>getIDBlock(int, int, Duration)</code></a> may be safely interrupted.</div> |
|
<dl> |
|
<dt><span class="returnLabel">Returns:</span></dt> |
|
<dd>true if interruption is allowed, false if it is not</dd> |
|
</dl> |
|
</li> |
|
</ul> |
|
</li> |
|
</ul> |
|
</li> |
|
</ul> |
|
</div> |
|
</div> |
|
|
|
|
|
<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/IDAuthority.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/janusgraph/diskstorage/EntryMetaData.Map.html" title="class in org.janusgraph.diskstorage"><span class="typeNameLink">Prev Class</span></a></li> |
|
<li><a href="../../../org/janusgraph/diskstorage/IDBlock.html" title="interface in org.janusgraph.diskstorage"><span class="typeNameLink">Next Class</span></a></li> |
|
</ul> |
|
<ul class="navList"> |
|
<li><a href="../../../index.html?org/janusgraph/diskstorage/IDAuthority.html" target="_top">Frames</a></li> |
|
<li><a href="IDAuthority.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"> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</script> |
|
</div> |
|
<div> |
|
<ul class="subNavList"> |
|
<li>Summary: </li> |
|
<li>Nested | </li> |
|
<li>Field | </li> |
|
<li>Constr | </li> |
|
<li><a href="#method.summary">Method</a></li> |
|
</ul> |
|
<ul class="subNavList"> |
|
<li>Detail: </li> |
|
<li>Field | </li> |
|
<li>Constr | </li> |
|
<li><a href="#method.detail">Method</a></li> |
|
</ul> |
|
</div> |
|
<a name="skip.navbar.bottom"> |
|
|
|
</a></div> |
|
|
|
<p class="legalCopy"><small>Copyright © 2012–2023. All rights reserved.</small></p> |
|
</body> |
|
</html> |
|
|