You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by aj...@apache.org on 2023/01/18 19:33:31 UTC

svn commit: r1906774 [15/49] - in /samza/site: ./ archive/ blog/ case-studies/ community/ contribute/ img/latest/learn/documentation/api/ learn/documentation/latest/ learn/documentation/latest/api/ learn/documentation/latest/api/javadocs/ learn/documen...

Modified: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html?rev=1906774&r1=1906773&r2=1906774&view=diff
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html (original)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html Wed Jan 18 19:33:25 2023
@@ -2,9 +2,8 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_212) on Thu Feb 04 10:07:14 PST 2021 -->
-<title>StoreProperties.StorePropertiesBuilder (samza-api 1.7.0-SNAPSHOT API)</title>
-<meta name="date" content="2021-02-04">
+<!-- Generated by javadoc -->
+<title>StoreProperties.StorePropertiesBuilder (samza-api 1.9.0-SNAPSHOT API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +11,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="StoreProperties.StorePropertiesBuilder (samza-api 1.7.0-SNAPSHOT API)";
+            parent.document.title="StoreProperties.StorePropertiesBuilder (samza-api 1.9.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -49,7 +48,7 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/samza/storage/StoreProperties.html" title="class in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li>Next&nbsp;Class</li>
+<li><a href="../../../../org/apache/samza/storage/TaskBackupManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" target="_top">Frames</a></li>
@@ -155,10 +154,14 @@ extends java.lang.Object</pre>
 </tr>
 <tr id="i1" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage">StoreProperties.StorePropertiesBuilder</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html#setLoggedStore-boolean-">setLoggedStore</a></span>(boolean&nbsp;loggedStore)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html#setIsDurable-boolean-">setIsDurable</a></span>(boolean&nbsp;durable)</code>&nbsp;</td>
 </tr>
 <tr id="i2" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage">StoreProperties.StorePropertiesBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html#setLoggedStore-boolean-">setLoggedStore</a></span>(boolean&nbsp;loggedStore)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage">StoreProperties.StorePropertiesBuilder</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html#setPersistedToDisk-boolean-">setPersistedToDisk</a></span>(boolean&nbsp;persistedToDisk)</code>&nbsp;</td>
 </tr>
 </table>
@@ -218,6 +221,15 @@ extends java.lang.Object</pre>
 <pre>public&nbsp;<a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage">StoreProperties.StorePropertiesBuilder</a>&nbsp;setLoggedStore(boolean&nbsp;loggedStore)</pre>
 </li>
 </ul>
+<a name="setIsDurable-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setIsDurable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage">StoreProperties.StorePropertiesBuilder</a>&nbsp;setIsDurable(boolean&nbsp;durable)</pre>
+</li>
+</ul>
 <a name="build--">
 <!--   -->
 </a>
@@ -255,7 +267,7 @@ extends java.lang.Object</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/samza/storage/StoreProperties.html" title="class in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li>Next&nbsp;Class</li>
+<li><a href="../../../../org/apache/samza/storage/TaskBackupManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/samza/storage/StoreProperties.StorePropertiesBuilder.html" target="_top">Frames</a></li>

Modified: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.html?rev=1906774&r1=1906773&r2=1906774&view=diff
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.html (original)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/StoreProperties.html Wed Jan 18 19:33:25 2023
@@ -2,9 +2,8 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_212) on Thu Feb 04 10:07:14 PST 2021 -->
-<title>StoreProperties (samza-api 1.7.0-SNAPSHOT API)</title>
-<meta name="date" content="2021-02-04">
+<!-- Generated by javadoc -->
+<title>StoreProperties (samza-api 1.9.0-SNAPSHOT API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +11,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="StoreProperties (samza-api 1.7.0-SNAPSHOT API)";
+            parent.document.title="StoreProperties (samza-api 1.9.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10};
+var methods = {"i0":10,"i1":10,"i2":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -150,11 +149,18 @@ extends java.lang.Object</pre>
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.html#isDurableStore--">isDurableStore</a></span>()</code>
+<div class="block">Flag to indicate whether a store is durable, that is, it's contents are available cross container restarts
+ or host reallocation.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.html#isLoggedStore--">isLoggedStore</a></span>()</code>
 <div class="block">Flag to indicate whether a store is associated with a changelog (used for recovery) or not</div>
 </td>
 </tr>
-<tr id="i1" class="rowColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/StoreProperties.html#isPersistedToDisk--">isPersistedToDisk</a></span>()</code>
 <div class="block">Flag to indicate whether a store can be persisted to disk or not</div>
@@ -199,7 +205,7 @@ extends java.lang.Object</pre>
 <a name="isLoggedStore--">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>isLoggedStore</h4>
 <pre>public&nbsp;boolean&nbsp;isLoggedStore()</pre>
@@ -210,6 +216,21 @@ extends java.lang.Object</pre>
 </dl>
 </li>
 </ul>
+<a name="isDurableStore--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>isDurableStore</h4>
+<pre>public&nbsp;boolean&nbsp;isDurableStore()</pre>
+<div class="block">Flag to indicate whether a store is durable, that is, it's contents are available cross container restarts
+ or host reallocation.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>True, if the store is durable. False by default.</dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>

Added: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskBackupManager.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskBackupManager.html?rev=1906774&view=auto
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskBackupManager.html (added)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskBackupManager.html Wed Jan 18 19:33:25 2023
@@ -0,0 +1,336 @@
+<!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 -->
+<title>TaskBackupManager (samza-api 1.9.0-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="TaskBackupManager (samza-api 1.9.0-SNAPSHOT API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":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>
+<!-- ========= 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="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/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/samza/storage/TaskRestoreManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/samza/storage/TaskBackupManager.html" target="_top">Frames</a></li>
+<li><a href="TaskBackupManager.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>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">org.apache.samza.storage</div>
+<h2 title="Interface TaskBackupManager" class="title">Interface TaskBackupManager</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public interface <span class="typeNameLabel">TaskBackupManager</span></pre>
+<div class="block"><p>
+ TaskBackupManager is the interface that must be implemented for any remote system that Samza persists its state to
+ during the task commit operation.
+ <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#snapshot-org.apache.samza.checkpoint.CheckpointId-"><code>snapshot(CheckpointId)</code></a> will be evoked synchronous to task processing and get a snapshot of the stores
+ state to be persisted for the commit. <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-"><code>upload(CheckpointId, Map)</code></a> will then use the snapshotted state
+ to persist to the underlying backup system and will be asynchronous to task processing.
+ </p>
+ The interface will be evoked in the following way:
+ <ul>
+   <li>Snapshot will be called before Upload.</li>
+   <li>persistToFilesystem will be called after Upload is completed</li>
+   <li>Cleanup is only called after Upload and persistToFilesystem has successfully completed</li>
+ </ul></div>
+</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="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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>java.util.concurrent.CompletableFuture&lt;java.lang.Void&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskBackupManager.html#cleanUp-org.apache.samza.checkpoint.CheckpointId-java.util.Map-">cleanUp</a></span>(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId,
+       java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;stateCheckpointMarkers)</code>
+<div class="block">Cleanup any local or remote state for checkpoint information that is older than the provided checkpointId
+ This operation is required to be idempotent.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskBackupManager.html#close--">close</a></span>()</code>
+<div class="block">Shutdown hook the backup manager to cleanup any allocated resources</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskBackupManager.html#init-org.apache.samza.checkpoint.Checkpoint-">init</a></span>(<a href="../../../../org/apache/samza/checkpoint/Checkpoint.html" title="interface in org.apache.samza.checkpoint">Checkpoint</a>&nbsp;checkpoint)</code>
+<div class="block">Initializes the TaskBackupManager instance.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskBackupManager.html#snapshot-org.apache.samza.checkpoint.CheckpointId-">snapshot</a></span>(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId)</code>
+<div class="block">Snapshot is used to capture the current state of the stores in order to persist it to the backup manager in the
+  <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-"><code>upload(CheckpointId, Map)</code></a> (CheckpointId, Map)} phase.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>java.util.concurrent.CompletableFuture&lt;java.util.Map&lt;java.lang.String,java.lang.String&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskBackupManager.html#upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-">upload</a></span>(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId,
+      java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;stateCheckpointMarkers)</code>
+<div class="block">Upload is used to persist the state provided by the <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#snapshot-org.apache.samza.checkpoint.CheckpointId-"><code>snapshot(CheckpointId)</code></a> to the
+ underlying backup system.</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="init-org.apache.samza.checkpoint.Checkpoint-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>init</h4>
+<pre>void&nbsp;init(@Nullable
+          <a href="../../../../org/apache/samza/checkpoint/Checkpoint.html" title="interface in org.apache.samza.checkpoint">Checkpoint</a>&nbsp;checkpoint)</pre>
+<div class="block">Initializes the TaskBackupManager instance.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>checkpoint</code> - last recorded checkpoint from the CheckpointManager or null if no last checkpoint was found</dd>
+</dl>
+</li>
+</ul>
+<a name="snapshot-org.apache.samza.checkpoint.CheckpointId-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>snapshot</h4>
+<pre>java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;snapshot(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId)</pre>
+<div class="block">Snapshot is used to capture the current state of the stores in order to persist it to the backup manager in the
+  <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-"><code>upload(CheckpointId, Map)</code></a> (CheckpointId, Map)} phase. Performs the commit operation that is
+  synchronous to processing. Returns the per store name state checkpoint markers to be used in upload.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>checkpointId</code> - <a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint"><code>CheckpointId</code></a> of the current commit</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a map of store name to state checkpoint markers for stores managed by this state backend</dd>
+</dl>
+</li>
+</ul>
+<a name="upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>upload</h4>
+<pre>java.util.concurrent.CompletableFuture&lt;java.util.Map&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;upload(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId,
+                                                                                                java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;stateCheckpointMarkers)</pre>
+<div class="block">Upload is used to persist the state provided by the <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#snapshot-org.apache.samza.checkpoint.CheckpointId-"><code>snapshot(CheckpointId)</code></a> to the
+ underlying backup system. Commit operation that is asynchronous to message processing and returns a
+ <code>CompletableFuture</code> containing the successfully uploaded state checkpoint markers .</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>checkpointId</code> - <a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint"><code>CheckpointId</code></a> of the current commit</dd>
+<dd><code>stateCheckpointMarkers</code> - the map of storename to state checkpoint markers returned by
+                               <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#snapshot-org.apache.samza.checkpoint.CheckpointId-"><code>snapshot(CheckpointId)</code></a></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>CompletableFuture</code> containing a map of store name to state checkpoint markers
+         after the upload is complete</dd>
+</dl>
+</li>
+</ul>
+<a name="cleanUp-org.apache.samza.checkpoint.CheckpointId-java.util.Map-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>cleanUp</h4>
+<pre>java.util.concurrent.CompletableFuture&lt;java.lang.Void&gt;&nbsp;cleanUp(<a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint">CheckpointId</a>&nbsp;checkpointId,
+                                                               java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;stateCheckpointMarkers)</pre>
+<div class="block">Cleanup any local or remote state for checkpoint information that is older than the provided checkpointId
+ This operation is required to be idempotent.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>checkpointId</code> - the <a href="../../../../org/apache/samza/checkpoint/CheckpointId.html" title="class in org.apache.samza.checkpoint"><code>CheckpointId</code></a> of the last successfully committed checkpoint</dd>
+<dd><code>stateCheckpointMarkers</code> - a map of store name to state checkpoint markers returned by
+                               <a href="../../../../org/apache/samza/storage/TaskBackupManager.html#upload-org.apache.samza.checkpoint.CheckpointId-java.util.Map-"><code>upload(CheckpointId, Map)</code></a> (CheckpointId, Map)} upload}</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>void&nbsp;close()</pre>
+<div class="block">Shutdown hook the backup manager to cleanup any allocated resources</div>
+</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="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/samza/storage/StoreProperties.StorePropertiesBuilder.html" title="class in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/samza/storage/TaskRestoreManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/samza/storage/TaskBackupManager.html" target="_top">Frames</a></li>
+<li><a href="TaskBackupManager.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>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 ======= -->
+</body>
+</html>

Added: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskRestoreManager.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskRestoreManager.html?rev=1906774&view=auto
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskRestoreManager.html (added)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/TaskRestoreManager.html Wed Jan 18 19:33:25 2023
@@ -0,0 +1,264 @@
+<!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 -->
+<title>TaskRestoreManager (samza-api 1.9.0-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="TaskRestoreManager (samza-api 1.9.0-SNAPSHOT API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":6,"i2":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>
+<!-- ========= 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="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/samza/storage/TaskBackupManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/samza/storage/TaskRestoreManager.html" target="_top">Frames</a></li>
+<li><a href="TaskRestoreManager.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>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">org.apache.samza.storage</div>
+<h2 title="Interface TaskRestoreManager" class="title">Interface TaskRestoreManager</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public interface <span class="typeNameLabel">TaskRestoreManager</span></pre>
+<div class="block">The helper interface restores task state.</div>
+</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="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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskRestoreManager.html#close--">close</a></span>()</code>
+<div class="block">Closes all initiated resources include storage engines</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskRestoreManager.html#init-org.apache.samza.checkpoint.Checkpoint-">init</a></span>(<a href="../../../../org/apache/samza/checkpoint/Checkpoint.html" title="interface in org.apache.samza.checkpoint">Checkpoint</a>&nbsp;checkpoint)</code>
+<div class="block">Initialize state resources such as store directories.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>java.util.concurrent.CompletableFuture&lt;java.lang.Void&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/samza/storage/TaskRestoreManager.html#restore--">restore</a></span>()</code>
+<div class="block">Restore state from checkpoints, state snapshots and changelogs.</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="init-org.apache.samza.checkpoint.Checkpoint-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>init</h4>
+<pre>void&nbsp;init(<a href="../../../../org/apache/samza/checkpoint/Checkpoint.html" title="interface in org.apache.samza.checkpoint">Checkpoint</a>&nbsp;checkpoint)</pre>
+<div class="block">Initialize state resources such as store directories.</div>
+</li>
+</ul>
+<a name="restore--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>restore</h4>
+<pre>java.util.concurrent.CompletableFuture&lt;java.lang.Void&gt;&nbsp;restore()</pre>
+<div class="block">Restore state from checkpoints, state snapshots and changelogs.
+
+ Currently, store restoration happens on a separate thread pool within <code>ContainerStorageManager</code>. In case of
+ interrupt/shutdown signals from <code>SamzaContainer</code>, <code>ContainerStorageManager</code> may interrupt the restore
+ thread.
+
+ Note: Typically, interrupt signals don't bubble up as <code>InterruptedException</code> unless the restore thread is
+ waiting on IO/network. In case of busy looping, implementors are expected to check the interrupt status of the
+ thread periodically and shutdown gracefully before throwing <code>InterruptedException</code> upstream.
+ <code>SamzaContainer</code> will not wait for clean up and the interrupt signal is the best effort by the container
+ to notify that its shutting down.</div>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>void&nbsp;close()</pre>
+<div class="block">Closes all initiated resources include storage engines</div>
+</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="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/samza/storage/TaskBackupManager.html" title="interface in org.apache.samza.storage"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/samza/storage/TaskRestoreManager.html" target="_top">Frames</a></li>
+<li><a href="TaskRestoreManager.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>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 ======= -->
+</body>
+</html>

Added: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManager.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManager.html?rev=1906774&view=auto
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManager.html (added)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManager.html Wed Jan 18 19:33:25 2023
@@ -0,0 +1,352 @@
+<!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 -->
+<title>BlobStoreManager (samza-api 1.9.0-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="BlobStoreManager (samza-api 1.9.0-SNAPSHOT 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>
+<!-- ========= 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="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>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/BlobStoreManager.html" target="_top">Frames</a></li>
+<li><a href="BlobStoreManager.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>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">org.apache.samza.storage.blobstore</div>
+<h2 title="Interface BlobStoreManager" class="title">Interface BlobStoreManager</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre><a href="../../../../../org/apache/samza/annotation/InterfaceStability.Unstable.html" title="annotation in org.apache.samza.annotation">@InterfaceStability.Unstable</a>
+public interface <span class="typeNameLabel">BlobStoreManager</span></pre>
+<div class="block">Provides interface for common blob store operations: GET, PUT and DELETE</div>
+</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="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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#close--">close</a></span>()</code>
+<div class="block">Cleanly close resources like blob store client</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#delete-java.lang.String-org.apache.samza.storage.blobstore.Metadata-">delete</a></span>(java.lang.String&nbsp;id,
+      <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</code>
+<div class="block">Non-blocking call to mark a blob for deletion in the remote blob store</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#get-java.lang.String-java.io.OutputStream-org.apache.samza.storage.blobstore.Metadata-">get</a></span>(java.lang.String&nbsp;id,
+   java.io.OutputStream&nbsp;outputStream,
+   <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</code>
+<div class="block">Non-blocking GET call to remote blob store</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#init--">init</a></span>()</code>
+<div class="block">Initialize underlying blob store client, if necessary.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>java.util.concurrent.CompletionStage&lt;java.lang.String&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#put-java.io.InputStream-org.apache.samza.storage.blobstore.Metadata-">put</a></span>(java.io.InputStream&nbsp;inputStream,
+   <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</code>
+<div class="block">Non-blocking PUT call to remote blob store with supplied metadata</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html#removeTTL-java.lang.String-org.apache.samza.storage.blobstore.Metadata-">removeTTL</a></span>(java.lang.String&nbsp;blobId,
+         <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</code>
+<div class="block">Non-blocking call to remove the Time-To-Live (TTL) for a blob and make it permanent.</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="init--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>init</h4>
+<pre>void&nbsp;init()</pre>
+<div class="block">Initialize underlying blob store client, if necessary.</div>
+</li>
+</ul>
+<a name="put-java.io.InputStream-org.apache.samza.storage.blobstore.Metadata-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>put</h4>
+<pre>java.util.concurrent.CompletionStage&lt;java.lang.String&gt;&nbsp;put(java.io.InputStream&nbsp;inputStream,
+                                                           <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</pre>
+<div class="block">Non-blocking PUT call to remote blob store with supplied metadata</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>inputStream</code> - InputStream to read the file</dd>
+<dd><code>metadata</code> - user supplied <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><code>Metadata</code></a> of the request</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a future containing the blob ID of the uploaded blob if the upload is successful.</dd>
+</dl>
+</li>
+</ul>
+<a name="get-java.lang.String-java.io.OutputStream-org.apache.samza.storage.blobstore.Metadata-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>get</h4>
+<pre>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;&nbsp;get(java.lang.String&nbsp;id,
+                                                         java.io.OutputStream&nbsp;outputStream,
+                                                         <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</pre>
+<div class="block">Non-blocking GET call to remote blob store</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>id</code> - Blob ID of the blob to get</dd>
+<dd><code>outputStream</code> - OutputStream to write the downloaded blob</dd>
+<dd><code>metadata</code> - User supplied <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><code>Metadata</code></a> of the request</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A future that completes when all the chunks are downloaded and written successfully to the OutputStream</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/samza/storage/blobstore/exceptions/DeletedException.html" title="class in org.apache.samza.storage.blobstore.exceptions">DeletedException</a></code> - returned future should complete
+         exceptionally with DeletedException on failure with the blob already deleted error.</dd>
+</dl>
+</li>
+</ul>
+<a name="delete-java.lang.String-org.apache.samza.storage.blobstore.Metadata-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>delete</h4>
+<pre>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;&nbsp;delete(java.lang.String&nbsp;id,
+                                                            <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</pre>
+<div class="block">Non-blocking call to mark a blob for deletion in the remote blob store</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>id</code> - Blob ID of the blob to delete</dd>
+<dd><code>metadata</code> - User supplied <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><code>Metadata</code></a> of the request</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A future that completes when the blob is successfully deleted from the blob store.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/samza/storage/blobstore/exceptions/DeletedException.html" title="class in org.apache.samza.storage.blobstore.exceptions">DeletedException</a></code> - returned future should complete
+         exceptionally with DeletedException on failure with the blob already deleted error. This exception is
+         caught and ignored by the caller of the delete method during initial cleanup and SnapshotIndex read.</dd>
+</dl>
+</li>
+</ul>
+<a name="removeTTL-java.lang.String-org.apache.samza.storage.blobstore.Metadata-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>removeTTL</h4>
+<pre>java.util.concurrent.CompletionStage&lt;java.lang.Void&gt;&nbsp;removeTTL(java.lang.String&nbsp;blobId,
+                                                               <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore">Metadata</a>&nbsp;metadata)</pre>
+<div class="block">Non-blocking call to remove the Time-To-Live (TTL) for a blob and make it permanent.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>blobId</code> - Blob ID of blob to remove TTL for.</dd>
+<dd><code>metadata</code> - User supplied <a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><code>Metadata</code></a> of the request</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a future that completes when the TTL for the blob is removed.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/samza/storage/blobstore/exceptions/DeletedException.html" title="class in org.apache.samza.storage.blobstore.exceptions">DeletedException</a></code> - returned future should complete
+         exceptionally with DeletedException on failure with the blob already deleted error.</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>void&nbsp;close()</pre>
+<div class="block">Cleanly close resources like blob store client</div>
+</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="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>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/BlobStoreManager.html" target="_top">Frames</a></li>
+<li><a href="BlobStoreManager.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>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 ======= -->
+</body>
+</html>

Added: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html?rev=1906774&view=auto
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html (added)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html Wed Jan 18 19:33:25 2023
@@ -0,0 +1,236 @@
+<!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 -->
+<title>BlobStoreManagerFactory (samza-api 1.9.0-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="BlobStoreManagerFactory (samza-api 1.9.0-SNAPSHOT API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":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>
+<!-- ========= 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="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/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html" target="_top">Frames</a></li>
+<li><a href="BlobStoreManagerFactory.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>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">org.apache.samza.storage.blobstore</div>
+<h2 title="Interface BlobStoreManagerFactory" class="title">Interface BlobStoreManagerFactory</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre><a href="../../../../../org/apache/samza/annotation/InterfaceStability.Unstable.html" title="annotation in org.apache.samza.annotation">@InterfaceStability.Unstable</a>
+public interface <span class="typeNameLabel">BlobStoreManagerFactory</span></pre>
+</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="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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore">BlobStoreManager</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html#getBackupBlobStoreManager-org.apache.samza.config.Config-java.util.concurrent.ExecutorService-">getBackupBlobStoreManager</a></span>(<a href="../../../../../org/apache/samza/config/Config.html" title="class in org.apache.samza.config">Config</a>&nbsp;config,
+                         java.util.concurrent.ExecutorService&nbsp;backupExecutor)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore">BlobStoreManager</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html#getRestoreBlobStoreManager-org.apache.samza.config.Config-java.util.concurrent.ExecutorService-">getRestoreBlobStoreManager</a></span>(<a href="../../../../../org/apache/samza/config/Config.html" title="class in org.apache.samza.config">Config</a>&nbsp;config,
+                          java.util.concurrent.ExecutorService&nbsp;restoreExecutor)</code>&nbsp;</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="getBackupBlobStoreManager-org.apache.samza.config.Config-java.util.concurrent.ExecutorService-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBackupBlobStoreManager</h4>
+<pre><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore">BlobStoreManager</a>&nbsp;getBackupBlobStoreManager(<a href="../../../../../org/apache/samza/config/Config.html" title="class in org.apache.samza.config">Config</a>&nbsp;config,
+                                           java.util.concurrent.ExecutorService&nbsp;backupExecutor)</pre>
+</li>
+</ul>
+<a name="getRestoreBlobStoreManager-org.apache.samza.config.Config-java.util.concurrent.ExecutorService-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getRestoreBlobStoreManager</h4>
+<pre><a href="../../../../../org/apache/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore">BlobStoreManager</a>&nbsp;getRestoreBlobStoreManager(<a href="../../../../../org/apache/samza/config/Config.html" title="class in org.apache.samza.config">Config</a>&nbsp;config,
+                                            java.util.concurrent.ExecutorService&nbsp;restoreExecutor)</pre>
+</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="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/samza/storage/blobstore/BlobStoreManager.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html" title="class in org.apache.samza.storage.blobstore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/BlobStoreManagerFactory.html" target="_top">Frames</a></li>
+<li><a href="BlobStoreManagerFactory.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>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 ======= -->
+</body>
+</html>

Added: samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/Metadata.html
URL: http://svn.apache.org/viewvc/samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/Metadata.html?rev=1906774&view=auto
==============================================================================
--- samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/Metadata.html (added)
+++ samza/site/learn/documentation/latest/api/javadocs/org/apache/samza/storage/blobstore/Metadata.html Wed Jan 18 19:33:25 2023
@@ -0,0 +1,436 @@
+<!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 -->
+<title>Metadata (samza-api 1.9.0-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="Metadata (samza-api 1.9.0-SNAPSHOT API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var tabs = {65535:["t0","All 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="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/samza/storage/blobstore/BlobStoreManagerFactory.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/Metadata.html" target="_top">Frames</a></li>
+<li><a href="Metadata.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.samza.storage.blobstore</div>
+<h2 title="Class Metadata" class="title">Class Metadata</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li>java.lang.Object</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.samza.storage.blobstore.Metadata</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public class <span class="typeNameLabel">Metadata</span>
+extends java.lang.Object</pre>
+<div class="block">Metadata associated with every BlobStore request. This class is used to trace a request and to determine the
+ bucket/container informationof the blob.</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 java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#SNAPSHOT_INDEX_PAYLOAD_PATH">SNAPSHOT_INDEX_PAYLOAD_PATH</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/samza/storage/blobstore/Metadata.html#Metadata-java.lang.String-java.util.Optional-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">Metadata</a></span>(java.lang.String&nbsp;payloadPath,
+        java.util.Optional&lt;java.lang.Long&gt;&nbsp;payloadSize,
+        java.lang.String&nbsp;jobName,
+        java.lang.String&nbsp;jobId,
+        java.lang.String&nbsp;taskName,
+        java.lang.String&nbsp;storeName)</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="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>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#equals-java.lang.Object-">equals</a></span>(java.lang.Object&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getJobId--">getJobId</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getJobName--">getJobName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getPayloadPath--">getPayloadPath</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getPayloadSize--">getPayloadSize</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getStoreName--">getStoreName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#getTaskName--">getTaskName</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/samza/storage/blobstore/Metadata.html#toString--">toString</a></span>()</code>&nbsp;</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.Object</h3>
+<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</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="SNAPSHOT_INDEX_PAYLOAD_PATH">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>SNAPSHOT_INDEX_PAYLOAD_PATH</h4>
+<pre>public static final&nbsp;java.lang.String SNAPSHOT_INDEX_PAYLOAD_PATH</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.samza.storage.blobstore.Metadata.SNAPSHOT_INDEX_PAYLOAD_PATH">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="Metadata-java.lang.String-java.util.Optional-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>Metadata</h4>
+<pre>public&nbsp;Metadata(java.lang.String&nbsp;payloadPath,
+                java.util.Optional&lt;java.lang.Long&gt;&nbsp;payloadSize,
+                java.lang.String&nbsp;jobName,
+                java.lang.String&nbsp;jobId,
+                java.lang.String&nbsp;taskName,
+                java.lang.String&nbsp;storeName)</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getPayloadPath--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPayloadPath</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getPayloadPath()</pre>
+</li>
+</ul>
+<a name="getPayloadSize--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPayloadSize</h4>
+<pre>public&nbsp;long&nbsp;getPayloadSize()</pre>
+</li>
+</ul>
+<a name="getJobName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getJobName</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getJobName()</pre>
+</li>
+</ul>
+<a name="getJobId--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getJobId</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getJobId()</pre>
+</li>
+</ul>
+<a name="getTaskName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTaskName</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getTaskName()</pre>
+</li>
+</ul>
+<a name="getStoreName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getStoreName</h4>
+<pre>public&nbsp;java.lang.String&nbsp;getStoreName()</pre>
+</li>
+</ul>
+<a name="equals-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre>public&nbsp;boolean&nbsp;equals(java.lang.Object&nbsp;o)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>equals</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
+</dl>
+</li>
+</ul>
+<a name="hashCode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre>public&nbsp;int&nbsp;hashCode()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;java.lang.String&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</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>
+<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="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/samza/storage/blobstore/BlobStoreManagerFactory.html" title="interface in org.apache.samza.storage.blobstore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/samza/storage/blobstore/Metadata.html" target="_top">Frames</a></li>
+<li><a href="Metadata.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 ======= -->
+</body>
+</html>