Modified: helix/site-content/1.0.2-docs/design_crushed.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/design_crushed.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/design_crushed.html (original)
+++ helix/site-content/1.0.2-docs/design_crushed.html Thu Jan  5 19:48:20 2023
@@ -1,13 +1,8 @@
 
 <!DOCTYPE html>
-
-
-
-
-
-
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-04-15
+ Rendered using Maven Reflow Skin 1.0.0 
(http://andriusvelykis.github.com/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -18,84 +13,61 @@
                <meta name="description" content="" />
                <meta http-equiv="content-language" content="en" />
 
-               <link href="./css/bootstrap.min.css" rel="stylesheet" />
-               <link href="./css/bootstrap-responsive.min.css" 
rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap.min.css";
 rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-responsive.min.css";
 rel="stylesheet" />
                <link href="./css/docs.css" rel="stylesheet" />
                <link href="./css/reflow-skin.css" rel="stylesheet" />
-
-
+               
+               
                <link href="./css/lightbox.css" rel="stylesheet" />
-
+               
                <link href="./css/site.css" rel="stylesheet" />
                <link href="./css/print.css" rel="stylesheet" media="print" />
-
+               
                <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
                <!--[if lt IE 9]>
-                       <script src="./js/html5.js"></script>
+                       <script 
src="http://html5shim.googlecode.com/svn/trunk/html5.js";></script>
                <![endif]-->
+               
+       </head>
 
+       <body class="page-$config.fileId project-$config.projectId" 
data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">
 
-
-
-
-    
-<!-- Matomo -->
-<script>
-    var _paq = window._paq = window._paq || [];
-                        _paq.push(['disableCookies']);
-                                    _paq.push(['trackPageView']);
-                                    _paq.push(['enableLinkTracking']);
-                    
-    (function() {
-        var u="https://analytics.apache.org";;
-        _paq.push(['setTrackerUrl', u+'/matomo.php']);
-        _paq.push(['setSiteId', '15']);
-        var d=document, g=d.createElement('script'), 
s=d.getElementsByTagName('script')[0];
-        g.async=true; g.src=u+'/matomo.js'; s.parentNode.insertBefore(g,s);
-    })();
-</script>
-<!-- End Matomo Code -->
-       </head>
-
-       <body class="page-design_crushed project-102-docs" data-spy="scroll" 
data-offset="60" data-target="#toc-scroll-target">
-
-    
                <div class="navbar navbar-fixed-top">
                        <div class="navbar-inner">
                                <div class="container">
-                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target="#top-nav-collapse">
+                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target=".nav-collapse">
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                        </a>
-                                       <a class="brand" href="..">Apache 
Helix</a>
-                                       <div class="nav-collapse collapse" 
id="top-nav-collapse">
+                                       <div class="nav-collapse">
                                                <ul class="nav pull-right">
-                                                       <li ><a 
href="index.html" title="Helix 1.0.2">Helix 1.0.2</a></li>
-                                                       <li class="dropdown">
+                                                       <li class="active"><a 
href="" title="Helix 1.0.2">Helix 1.0.2 </a></li>
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Get Helix <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="download.html" title="Download">Download</a></li>
-                                                                       <li ><a 
href="Building.html" title="Building">Building</a></li>
-                                                                       <li ><a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release 
Notes</a></li>
+                                                                       <li 
class="active"><a href="" title="Download">Download </a></li>
+                                                                       <li 
class="active"><a href="" title="Building">Building </a></li>
+                                                                       <li 
class="active"><a href="" title="Release Notes">Release Notes </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Hands-On <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="Quickstart.html" title="Quick Start">Quick Start</a></li>
-                                                                       <li ><a 
href="Tutorial.html" title="Tutorial">Tutorial</a></li>
-                                                                       <li ><a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a></li>
+                                                                       <li 
class="active"><a href="" title="Quick Start">Quick Start </a></li>
+                                                                       <li 
class="active"><a href="" title="Tutorial">Tutorial </a></li>
+                                                                       <li 
class="active"><a href="" title="Javadocs">Javadocs </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Recipes <b class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a></li>
-                                                                       <li ><a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a></li>
-                                                                       <li ><a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a></li>
-                                                                       <li ><a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a></li>
-                                                                       <li ><a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed lock manager">Distributed lock 
manager </a></li>
+                                                                       <li 
class="active"><a href="" title="Rabbit MQ consumer group">Rabbit MQ consumer 
group </a></li>
+                                                                       <li 
class="active"><a href="" title="Rsync replicated file store">Rsync replicated 
file store </a></li>
+                                                                       <li 
class="active"><a href="" title="Service discovery">Service discovery </a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed task DAG execution">Distributed 
task DAG execution </a></li>
                                                                </ul>
                                                        </li>
                                                </ul>
@@ -103,36 +75,30 @@
                                </div>
                        </div>
                </div>
-
+               
        <div class="container">
-
+       
        <!-- Masthead
        ================================================== -->
-
-       <header>
-       <div class="jumbotron subhead">
+       <header class="jumbotron subhead">
                <div class="row" id="banner">
                        <div class="span12">
                                <div class="pull-left">
-                                       <a href="../" id="bannerLeft"><img 
src="../images/helix-logo.jpg" alt='"''"' /></a>
-                                       <p class="lead">A cluster management 
framework for partitioned and replicated distributed resources</p>
+                                       <a href="" id="bannerLeft"><img src="" 
alt='"''"' /></a>
                                </div>
                                <div class="pull-right">
-                                       <a href="https://www.apache.org/"; 
id="bannerRight"><img src="../images/feather_small.gif" alt='"''"' /></a>
+                                       <a href="http://www.apache.org/"; 
id="bannerRight"><img src="" alt='"''"' /></a>
                                </div>
                        </div>
                </div>
-       </div>
                <div>
                        <ul class="breadcrumb">
-                               <li><a href="http://helix.apache.org/"; 
title="Apache Helix" class="externalLink">Apache Helix</a></li>
-                               <li class="divider">/</li>
-                               <li><a href="../" title="Apache Helix">Apache 
Helix</a></li>
+                               <li><a href="" title="Apache Helix">Apache 
Helix </a></li>
                                <li class="divider">/</li>
-                               <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
+                               <li><a href="" title="Release 1.0.2">Release 
1.0.2 </a></li>
                                <li class="divider">/</li>
                                <li>CrushED (Crush-based rebalancer with Even 
Distribution)</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-04-15</li>
                        </ul>
                </div>
        </header>
@@ -141,230 +107,94 @@
        <div class="row">
                <div class="span12">
                        <div class="body-content">
-<div class="page-header">
- <h1>CrushED (Crush-based rebalancer with Even Distribution)</h1>
-</div> 
-<section> 
- <h2 id="Overview">Overview</h2> 
- <p>Helix provides AutoRebalanceStrategy which is based on card dealing 
strategy. This strategy takes the current mapping as an input, and computes new 
mappings only for the partitions that need to be moved. This provides minimum 
partition movement, but the mapping is not deterministic, and moreover, 
fault-zone aware mapping (i.e. rack-aware partitioning) is not possible.</p> 
- <p>CRUSH-based partitioning scheme was implemented to provide fault-zone 
aware mapping and deterministic partition assignment. CrushRebalanceStrategy 
(and MultiRoundCrushRebalanceStrategy)&nbsp;algorithm uses pseudo-random 
partition placement to ensure consistent partition distribution. As the number 
of placed items (i.e partitions) approaches infinity, the distribution will be 
perfectly uniform. However, with a small number of placed items, especially for 
resources (i.e. databases) with a small number of partitions, the placement 
algorithm may result in fairly uneven partition distribution.</p> 
- <p>We want to provide a new rebalance strategy that provides a deterministic 
and fault-zone aware mapping while providing even partition distribution in all 
cases. In this document, we propose a hybrid algorithm that uses CRUSH, card 
dealing strategy, and consistent hashing to ensure both&nbsp;even distribution 
and minimal partition movement (while cluster topology remains the same). We 
call it CrushED (Crush w/ Even Distribution). Compared to CRUSH, CrushED 
results in a much more uniform distribution and minimal partition movements as 
long as topology remains the same, at the cost of additional run time 
computation.</p> 
-</section> 
-<section> 
- <h2 id="Design">Design</h2> 
- <p>In addition to what we already achieved in CrushRebalanceStrategy, we have 
2 high level goals :</p> 
- <ol style="list-style-type: decimal"> 
-  <li>Even distribution.</li> 
-  <li>Minimize partition movements when instances go up/down.</li> 
- </ol> 
- <p>CrushRebalanceStrategy has very small movement count, but the distribution 
is not optimal. MultiRoundCrushRebalanceStrategy was designed to solve this 
problem by running CRUSH multiple times on partition assignments that 
contribute to uneven mapping. However, due to potentially high number of 
rounds, computation cost is high, we observed significantly more partition 
movements when the cluster topology is changed.</p> 
- <p>Since we have a good base strategy, CrushRebalanceStrategy, we built 
CrushEDRebalanceStrategy on top of it. Sample mapping of both strategies are as 
following. Note that blue parts remain unchanged before and after.</p> 
- <p>Before (CRUSH)</p> 
- <p><img src="images/design/crushed/before-using-crush.png" alt="Before 
(CRUSH)"></p> 
- <p>After (new strategy)</p> 
- <p><img src="images/design/crushed/after-using-crushed.png" alt="After (new 
strategy)"></p> 
- <p>Since the problem is NP-hard. We are not expecting the best assignment. A 
greedy algorithm works good enough.<br> After we tried different designs, we 
found it's hard to achieve both goals (even distribution and fewer movements) 
using a single strategy. So we decided to apply a hybrid algorithm that 
finishes the work step by step.</p> 
- <p><b>Step 1, run CRUSH to get a base assignment.</b><br> The base assignment 
usually contains a certain number of uneven partitions(i.e. extra partitions 
above perfect distribution), so we need the following steps to re-distribute 
them.</p> 
- <p><b>Step 2, run a card dealing algorithm on the uneven parts.</b><br> 
Assign extra partitions to under-loaded nodes, using card dealing strategy. 
This algorithm is conceptually simple. The result ensures that all partitions 
are assigned to instances with minimum difference. When gauranteeing fault-zone 
safe assignment, our greedy algorithm may not be able to calculate possible 
results because of fault-zone conflict.</p> 
- <p>Example of assignments after step 2,</p> 
- <p><img src="images/design/crushed/example-cluster-partition-dist.png" 
alt="Example"></p> 
- <p><b>Step 3, Shuffle partitions' preference lists.</b><br> State assignments 
(i.e. Master, Slave, Online, Offline, etc) are made according to preflist, 
ordered node. When using randomly ordered lists, State assignment is also 
random, and it may result in uneven state distribution. To resolve this issue, 
CrushED assigns scores to nodes as it computes pref list, to give all nodes 
equal chances in appearing at the top of the pref list. This operation results 
in a much more even state distribution.</p> 
- <p>Example of master distribution before step 3,</p> 
- <p><img src="images/design/crushed/example-cluster-master-dist.png" 
alt="Example"></p> 
- <p>Example of master distribution after step 3,</p> 
- <p><img src="images/design/crushed/example-cluster-master-dist-after.png" 
alt="Example"></p> 
- <p><b>Step 4, re-calculate the assignment for the partitions on temporarily 
disabled nodes using a consistent hashing algorithm.</b><br> Consistent hashing 
ensures minimize partition movement.<br> Note that the first 3 steps are using 
full node list, regardless of disabled or offline nodes. So the assignment will 
be stable even the algorithm contains random factors such hashCode. Then step 4 
ensures all the disabled nodes are handled correctly without causing huge 
partition movements.</p> 
- <p>Pseudocode of above algorithm is as follows :</p> 
- <p><b>Pseudo Code</b></p> 
- <div class="source"> 
-  <pre><code>// Round 1: Calculate mapping using the base strategy.
-// Note to use all nodes for minimizing the influence of live node changes.
-origPartitionMap = 
getBaseRebalanceStrategy().computePartitionAssignment(allNodes, clusterData);
-
-// Transform current assignment to instance-&gt;partitions map, and get total 
partitions
-nodeToPartitionMap = convertMap(origPartitionMap);
-
-// Round 2: Rebalance mapping using card dealing algorithm.
-Topology allNodeTopo = new Topology(allNodes, clusterData);
-cardDealer.computeMapping(allNodeTopo, nodeToPartitionMap);
-
-// Since states are assigned according to preference list order, shuffle 
preference list for even states distribution.
-shufflePreferenceList(nodeToPartitionMap);
-
-// Round 3: Re-mapping the partitions on non-live nodes using consistent 
hashing for reducing movement.
-// Consistent hashing ensures minimum movements when nodes are disabled 
unexpectedly.
-if (!liveNodes.containsAll(allNodes)) {
-  Topology liveNodeTopo = new Topology(liveNodes, clusterData);
-  hashPlacement.computeMapping(liveNodeTopo, nodeToPartitionMap);
-}
-
-if (!nodeToPartitionMap.isEmpty()) {
-  // Round 2 and 3 is done successfully
-  return convertMap(nodeToPartitionMap);
-} else {
-  return getBaseRebalanceStrategy().computePartitionAssignment(liveNodes, 
clusterData);
-}
-</code></pre> 
- </div> 
- <section> 
-  <h3 id="Maximum_uneven_partition_assignment_using_CrushED">Maximum uneven 
partition assignment using CrushED</h3> 
-  <p>Helix cluster typically manages 1 or more resources (i.e. databases). For 
each resource, CrushED makes the best effort to ensure the partition count 
difference is at most 1 across all the instances. Assuming such assignment is 
possible considering fault-zone configuration, the worst partition distribution 
happens when all one off partitions are located in one node. So N resources in 
a cluster can theoretically have their extra partitions in one node, so the 
node will have N additional partitions in total. Thus, the maximum difference 
between the most heavily loaded node and the least is <b>the number of 
resources</b> in a cluster.</p> 
- </section> 
-</section> 
-<section> 
- <h2 id="Experiment">Experiment</h2> 
- <p>We tested CrushED by simulating real production cluster topology data. And 
we tested multiple scenarios:</p> 
- <ul> 
-  <li>Distribution based on cluster topology.</li> 
-  <li>Disabling hosts to simulate hosts down.</li> 
-  <li>Adding hosts to simulate expansion.</li> 
-  <li>Rolling upgrade.</li> 
- </ul> 
- <p>All results show that CrushED generates more uniform global distribution 
compared with CRUSH.<br> Moreover, partition movements in most scenarios are 
minimized. When topology changes (i.e. cluster expansion), there can be 
significantly more partition movements, but we can control the impact by using 
State Transition Throttling feature.</p> 
- <section> 
-  <h3 id="Partition_Distribution">Partition Distribution</h3> 
-  <p>Following charts demonstrate the worst cases (min load vs. max load) and 
STDEVs of partition/master distributions from some sample clusters data.<br> If 
we measure the improvement by STDEV, CrushED improves the partition 
distribution evenness by 87% on average compared with CRUSH. And for state 
assignment (i.e. Mastership assignment) the evenness improvement is 68% on 
average.</p> 
-  <p><img src="images/design/crushed/cursh-partition-dist.png" 
alt="Example"><img src="images/design/crushed/crushed-partition-dist.png" 
alt="Example"></p> 
-  <p><img src="images/design/crushed/cursh-master-dist.png" alt="Example"><img 
src="images/design/crushed/crushed-master-dist.png" alt="Example"></p> 
- </section> 
- <section> 
-  <h3 id="Disabling_Nodes">Disabling Nodes</h3> 
-  <p>When nodes are offline or disabled, CrushED will re-assign the partitions 
to other live nodes. The algorithm move only the necessary partitions.<br> We 
simulated disabling nodes, and measured partition movement changes and 
mastership changes. We also used the expected movement (the partitions/masters 
count on the disabled nodes) as a baseline to measure extra movements.</p> 
-  <p>The results show that movement is highly correlated to the number of 
disabled nodes, and extra movements are minor (in most cases 0 movements).</p> 
-  <p>Note that <b>Rate</b> in this document is <b>the changed number / total 
partition or master count</b>.</p> 
-  <p><img src="images/design/crushed/node-down-partition-move.png" 
alt="Example"><img src="images/design/crushed/node-down-master-move.png" 
alt="Example"></p> 
- </section> 
- <section> 
-  <h3 id="Rolling_upgrade">Rolling upgrade</h3> 
-  <p>Rolling upgrade is different from disabling nodes. Since nodes are reset 
one by one, in this test we assume the difference could be 2 nodes in maximum 
(for example, upgrading Node A then upgrading Node B).<br> In this case, 
movements are still minimized. Even in the worst case scenario, extra partition 
movements and mastership changes are still close to 0%.</p> 
-  <p>Note that in real production clusters, we can completely avoid partition 
movements while doing rolling upgrade, by enabling Delayed Rebalancing.</p> 
- </section> 
- <section> 
-  <h3 id="Adding_Nodes">Adding Nodes</h3> 
-  <p>Adding nodes (i.e. cluster expansion) changes topology. CrushED uses card 
dealing strategy to provide even distribution, so when topology changes, there 
are a lot of additional partition movements than CRUSH.</p> 
-  <p>Note that the extra change rate is not correlated with the number of 
additional nodes. So our recommendation is finishing expansion in one operation 
so as to do only one partition shuffling.</p> 
- </section> 
- <section> 
-  <h3 id="Algorithm_Performance">Algorithm Performance</h3> 
-  <p>We compared CrushED with CRUSH algorithms using different instance 
numbers. The tests are executed multiple times and we recorded median 
computation time.<br> CrushED does not cost much additional computation time 
for regular rebalancing. In some of the worst cases, 30% more runtime was 
observed, compared with CRUSH, but it is quicker than MultiRoundCRUSH.</p> 
-  <p>However, when there are down nodes since CrushED needs to run an 
additional consistent hashing based re-distribution, the computation time will 
be much longer. In some cases, we saw more than 3 times compared to CRUSH.</p> 
-  <p>With some <b>performance improvements</b>, such as using cache to avoid 
duplicate calculation, we achieved to greatly reduce CrushED's running time. 
According to our experiment, it is now close to MultiRound CRUSH.</p> 
-  <p><img src="images/design/crushed/performance.png" alt="Example"></p> 
- </section> 
-</section> 
-<section> 
- <h2 id="Conclusion">Conclusion</h2> 
- <p>CrushED achieves more uniform distribution compared with CRUSH at the cost 
of higher rebalance computation and more partition movement when the cluster 
topology changes.</p> 
-</section> 
-<section> 
- <h2 id="Simple_User_Guide">Simple User Guide</h2> 
- <ol style="list-style-type: decimal"> 
-  <li>Ensure the resouce is using FULL_AUTO mode.</li> 
-  <li>Set rebalance strategy to be 
“org.apache.helix.controller.rebalancer.strategy.CrushEdRebalanceStrategy”.</li>
 
-  <li>Expect more partition movement on topology changes when using the new 
strategy.</li> 
- </ol> 
- <p><b>IdeaState SimpleFields Example</b></p> 
- <div class="source"> 
-  <pre><code>HELIX_ENABLED : "true"
-IDEAL\_STATE\_MODE : "AUTO_REBALANCE"
-REBALANCE\_MODE : "FULL\_AUTO"
-REBALANCE_STRATEGY : 
"org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy"
-MIN\_ACTIVE\_REPLICAS : "0"
-NUM_PARTITIONS : "64"
-REBALANCER\_CLASS\_NAME : 
"org.apache.helix.controller.rebalancer.DelayedAutoRebalancer"
-REPLICAS : "1"
-STATE\_MODEL\_DEF_REF : "LeaderStandby"
-</code></pre> 
- </div> 
-</section>
+$bodyWithHeader
                        </div>
                </div>
        </div>
        </div>
 
        </div><!-- /container -->
-
+       
        <!-- Footer
        ================================================== -->
        <footer class="well">
                <div class="container">
                        <div class="row">
-                               <div class="span3 bottom-nav">
+                               <div class="span9 bottom-nav">
                                        <ul class="nav nav-list">
                                                <li class="nav-header">Get 
Helix</li>
-                                               <li >
-                                                       <a href="download.html" 
title="Download">Download</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Download">Download </a>
                                                </li>
-                                               <li >
-                                                       <a href="Building.html" 
title="Building">Building</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Building">Building </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release Notes</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Release Notes">Release Notes </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Hands-On</li>
-                                               <li >
-                                                       <a 
href="Quickstart.html" title="Quick Start">Quick Start</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Quick Start">Quick Start </a>
                                                </li>
-                                               <li >
-                                                       <a href="Tutorial.html" 
title="Tutorial">Tutorial</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Tutorial">Tutorial </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Javadocs">Javadocs </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Recipes</li>
-                                               <li >
-                                                       <a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed lock manager">Distributed lock manager </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rabbit MQ consumer group">Rabbit MQ consumer group </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rsync replicated file store">Rsync replicated file store </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Service discovery">Service discovery </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed task DAG execution">Distributed task DAG execution </a>
                                                </li>
                                        </ul>
                                </div>
                        </div>
                </div>
        </footer>
-
+               
        <div class="container subfooter">
                <div class="row">
                        <div class="span12">
                                <p class="pull-right"><a href="#">Back to 
top</a></p>
                                <p class="copyright">Copyright &copy;2022 <a 
href="https://www.apache.org/";>The Apache Software Foundation</a>. All Rights 
Reserved.</p>
-                               <p><a 
href="https://github.com/olamy/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> maintained by <a href="https://twitter.com/olamy"; 
target="_blank" title="Olivier Lamy">Olivier Lamy</a>.</p>
-               <div class="row span16"><div>Apache Helix, Apache, the Apache 
feather logo, and the Apache Helix project logos are trademarks of The Apache 
Software Foundation.
-        All other marks mentioned may be trademarks or registered trademarks 
of their respective owners.</div>
-        <a 
href="https://helix.apache.org/1.0.2-docs/privacy-policy.html";>Privacy 
Policy</a>
-      </div>
-                       </div>
+                               <p><a 
href="http://github.com/andriusvelykis/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> by <a href="http://andrius.velykis.lt"; 
target="_blank" title="Andrius Velykis">Andrius Velykis</a>.</p>
+                                       </div>
                </div>
        </div>
 
        <!-- Le javascript
        ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
-       <script src="./js/jquery.min.js"></script>
 
-       <script src="./js/bootstrap.min.js"></script>
-       <script src="./js/lightbox.min.js"></script>
-       <script src="./js/reflow-scroll.js"></script>
+       <!-- Fallback jQuery loading from Google CDN:
+            
http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery-but-fall-back-to-my-hosted-library-on-go
 -->
+       <script type="text/javascript" 
src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js";></script>
+       <script type="text/javascript">
+               if (typeof jQuery == 'undefined')
+               {
+                       document.write(unescape("%3Cscript 
src='./js/jquery-1.8.3.min.js' type='text/javascript'%3E%3C/script%3E"));
+               }
+       </script>
+       
+       <script 
src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js";></script>
+       <script src="./js/lightbox.js"></script>
+       <script src="./js/jquery.smooth-scroll.min.js"></script>
+       <!-- back button support for smooth scroll -->
+       <script src="./js/jquery.ba-bbq.min.js"></script>
 
        <script src="./js/reflow-skin.js"></script>
-
+       
        </body>
 </html>
\ No newline at end of file

Modified: helix/site-content/1.0.2-docs/distribution-management.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/distribution-management.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/distribution-management.html (original)
+++ helix/site-content/1.0.2-docs/distribution-management.html Thu Jan  5 
19:48:20 2023
@@ -7,7 +7,7 @@
 
 
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-05-12  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -132,7 +132,7 @@
                                <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
                                <li class="divider">/</li>
                                <li>Project Distribution Management</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-05-12</li>
                        </ul>
                </div>
        </header>

Modified: helix/site-content/1.0.2-docs/download.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/download.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/download.html (original)
+++ helix/site-content/1.0.2-docs/download.html Thu Jan  5 19:48:20 2023
@@ -1,13 +1,8 @@
 
 <!DOCTYPE html>
-
-
-
-
-
-
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-04-15
+ Rendered using Maven Reflow Skin 1.0.0 
(http://andriusvelykis.github.com/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -19,84 +14,61 @@
                <meta name="author" content="Apache Helix Documentation Team" />
                <meta http-equiv="content-language" content="en" />
 
-               <link href="./css/bootstrap.min.css" rel="stylesheet" />
-               <link href="./css/bootstrap-responsive.min.css" 
rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap.min.css";
 rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-responsive.min.css";
 rel="stylesheet" />
                <link href="./css/docs.css" rel="stylesheet" />
                <link href="./css/reflow-skin.css" rel="stylesheet" />
-
-
+               
+               
                <link href="./css/lightbox.css" rel="stylesheet" />
-
+               
                <link href="./css/site.css" rel="stylesheet" />
                <link href="./css/print.css" rel="stylesheet" media="print" />
-
+               
                <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
                <!--[if lt IE 9]>
-                       <script src="./js/html5.js"></script>
+                       <script 
src="http://html5shim.googlecode.com/svn/trunk/html5.js";></script>
                <![endif]-->
+               
+       </head>
 
+       <body class="page-$config.fileId project-$config.projectId" 
data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">
 
-
-
-
-    
-<!-- Matomo -->
-<script>
-    var _paq = window._paq = window._paq || [];
-                        _paq.push(['disableCookies']);
-                                    _paq.push(['trackPageView']);
-                                    _paq.push(['enableLinkTracking']);
-                    
-    (function() {
-        var u="https://analytics.apache.org";;
-        _paq.push(['setTrackerUrl', u+'/matomo.php']);
-        _paq.push(['setSiteId', '15']);
-        var d=document, g=d.createElement('script'), 
s=d.getElementsByTagName('script')[0];
-        g.async=true; g.src=u+'/matomo.js'; s.parentNode.insertBefore(g,s);
-    })();
-</script>
-<!-- End Matomo Code -->
-       </head>
-
-       <body class="page-download project-102-docs" data-spy="scroll" 
data-offset="60" data-target="#toc-scroll-target">
-
-    
                <div class="navbar navbar-fixed-top">
                        <div class="navbar-inner">
                                <div class="container">
-                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target="#top-nav-collapse">
+                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target=".nav-collapse">
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                        </a>
-                                       <a class="brand" href="..">Apache 
Helix</a>
-                                       <div class="nav-collapse collapse" 
id="top-nav-collapse">
+                                       <div class="nav-collapse">
                                                <ul class="nav pull-right">
-                                                       <li ><a 
href="index.html" title="Helix 1.0.2">Helix 1.0.2</a></li>
+                                                       <li class="active"><a 
href="" title="Helix 1.0.2">Helix 1.0.2 </a></li>
                                                        <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Get Helix <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li 
class="active"><a href="" title="Download">Download</a></li>
-                                                                       <li ><a 
href="Building.html" title="Building">Building</a></li>
-                                                                       <li ><a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release 
Notes</a></li>
+                                                                       <li 
class="active"><a href="" title="Download">Download </a></li>
+                                                                       <li 
class="active"><a href="" title="Building">Building </a></li>
+                                                                       <li 
class="active"><a href="" title="Release Notes">Release Notes </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Hands-On <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="Quickstart.html" title="Quick Start">Quick Start</a></li>
-                                                                       <li ><a 
href="Tutorial.html" title="Tutorial">Tutorial</a></li>
-                                                                       <li ><a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a></li>
+                                                                       <li 
class="active"><a href="" title="Quick Start">Quick Start </a></li>
+                                                                       <li 
class="active"><a href="" title="Tutorial">Tutorial </a></li>
+                                                                       <li 
class="active"><a href="" title="Javadocs">Javadocs </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Recipes <b class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a></li>
-                                                                       <li ><a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a></li>
-                                                                       <li ><a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a></li>
-                                                                       <li ><a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a></li>
-                                                                       <li ><a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed lock manager">Distributed lock 
manager </a></li>
+                                                                       <li 
class="active"><a href="" title="Rabbit MQ consumer group">Rabbit MQ consumer 
group </a></li>
+                                                                       <li 
class="active"><a href="" title="Rsync replicated file store">Rsync replicated 
file store </a></li>
+                                                                       <li 
class="active"><a href="" title="Service discovery">Service discovery </a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed task DAG execution">Distributed 
task DAG execution </a></li>
                                                                </ul>
                                                        </li>
                                                </ul>
@@ -104,36 +76,30 @@
                                </div>
                        </div>
                </div>
-
+               
        <div class="container">
-
+       
        <!-- Masthead
        ================================================== -->
-
-       <header>
-       <div class="jumbotron subhead">
+       <header class="jumbotron subhead">
                <div class="row" id="banner">
                        <div class="span12">
                                <div class="pull-left">
-                                       <a href="../" id="bannerLeft"><img 
src="../images/helix-logo.jpg" alt='"''"' /></a>
-                                       <p class="lead">A cluster management 
framework for partitioned and replicated distributed resources</p>
+                                       <a href="" id="bannerLeft"><img src="" 
alt='"''"' /></a>
                                </div>
                                <div class="pull-right">
-                                       <a href="https://www.apache.org/"; 
id="bannerRight"><img src="../images/feather_small.gif" alt='"''"' /></a>
+                                       <a href="http://www.apache.org/"; 
id="bannerRight"><img src="" alt='"''"' /></a>
                                </div>
                        </div>
                </div>
-       </div>
                <div>
                        <ul class="breadcrumb">
-                               <li><a href="http://helix.apache.org/"; 
title="Apache Helix" class="externalLink">Apache Helix</a></li>
+                               <li><a href="" title="Apache Helix">Apache 
Helix </a></li>
                                <li class="divider">/</li>
-                               <li><a href="../" title="Apache Helix">Apache 
Helix</a></li>
-                               <li class="divider">/</li>
-                               <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
+                               <li><a href="" title="Release 1.0.2">Release 
1.0.2 </a></li>
                                <li class="divider">/</li>
                                <li>Apache Helix Downloads</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-04-15</li>
                        </ul>
                </div>
        </header>
@@ -142,205 +108,94 @@
        <div class="row">
                <div class="span12">
                        <div class="body-content">
-<div class="toc_container"> 
- <ul class="toc"> 
-  <li><a href="#Introduction">Introduction</a></li> 
-  <li><a href="#Release">Release</a> 
-   <ul> 
-    <li><a href="#Mirror">Mirror</a></li> 
-    <li><a href="#a1.0.2_Sources">1.0.2 Sources</a></li> 
-    <li><a href="#a1.0.2_Binaries">1.0.2 Binaries</a></li> 
-   </ul></li> 
-  <li><a href="#Verifying_Releases">Verifying Releases</a></li> 
- </ul> 
-</div> 
-<section> 
- <div class="page-header">
-  <h2 id="Introduction">Introduction</h2>
- </div> 
- <p>Apache Helix artifacts are distributed in source and binary form under the 
terms of the <a class="externalLink" 
href="http://www.apache.org/licenses/LICENSE-2.0";>Apache License, Version 
2.0</a>. See the included <code>LICENSE</code> and <code>NOTICE</code> files 
included in each artifact for additional license information. </p> 
- <p>Use the links below to download a source distribution of Apache Helix. It 
is good practice to <a href="#Verifying_Releases">verify the integrity</a> of 
the distribution files.</p> 
-</section> 
-<section> 
- <h2 id="Release">Release</h2> 
- <p>Release date: 06/10/2019 </p> 
- <p><a href="releasenotes/release-1.0.2.html">1.0.2 Release notes</a></p> <a 
name="mirror"></a> 
- <section> 
-  <h3 id="Mirror">Mirror</h3> 
-  <p> [if-any logo] <a href="[link]"> <img src="[logo]" align="right" 
border="0" alt="logo"> </a> [end] The currently selected mirror is 
<b>[preferred]</b>. If you encounter a problem with this mirror, please select 
another mirror. If all mirrors are failing, there are <i>backup</i> mirrors (at 
the end of the mirrors list) that should be available. </p> 
-  <form action="[location]" method="get" id="SelectMirror" class="form-inline">
-    Other mirrors: <select name="Preferred" class="input-xlarge"> [if-any 
http] [for http] <option value="[http]">[http]</option> [end] [end] [if-any 
ftp] [for ftp] <option value="[ftp]">[ftp]</option> [end] [end] [if-any backup] 
[for backup] <option value="[backup]">[backup] (backup)</option> [end] [end] 
</select> 
-   <input type="submit" value="Change" class="btn"> 
-  </form> 
-  <p> You may also consult the <a class="externalLink" 
href="http://www.apache.org/mirrors/";>complete list of mirrors.</a> </p> 
- </section> 
- <section> 
-  <h3 id="a1.0.2_Sources">1.0.2 Sources</h3> 
-  <table border="0" class="bodyTable table table-striped table-hover"> 
-   <thead> 
-    <tr class="a"> 
-     <th>Artifact</th> 
-     <th>Signatures</th> 
-     <th>Hashes</th> 
-    </tr> 
-   </thead> 
-   <tbody> 
-    <tr class="b"> 
-     <td align="left"> <a 
href="[preferred]helix/1.0.2/src/helix-1.0.2-src.zip">helix-1.0.2-src.zip</a> 
</td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/src/helix-1.0.2-src.zip.asc";>asc</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/src/helix-1.0.2-src.zip.md5";>md5</a>
 <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/src/helix-1.0.2-src.zip.sha1";>sha1</a>
 </td> 
-    </tr> 
-   </tbody> 
-  </table> 
- </section> 
- <section> 
-  <h3 id="a1.0.2_Binaries">1.0.2 Binaries</h3> 
-  <table border="0" class="bodyTable table table-striped table-hover"> 
-   <thead> 
-    <tr class="a"> 
-     <th>Artifact</th> 
-     <th>Signatures</th> 
-     <th>Hashes</th> 
-    </tr> 
-   </thead> 
-   <tbody> 
-    <tr class="b"> 
-     <td align="left"> <a 
href="[preferred]helix/1.0.2/binaries/helix-core-1.0.2-pkg.tar">helix-core-1.0.2-pkg.tar</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-core-1.0.2-pkg.tar.asc";>asc</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-core-1.0.2-pkg.tar.md5";>md5</a>
 <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-core-1.0.2-pkg.tar.sha1";>sha1</a>
 </td> 
-    </tr> 
-    <tr class="a"> 
-     <td align="left"> <a 
href="[preferred]helix/1.0.2/binaries/helix-admin-webapp-1.0.2-pkg.tar">helix-admin-webapp-1.0.2-pkg.tar</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-admin-webapp-1.0.2-pkg.tar.asc";>asc</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-admin-webapp-1.0.2-pkg.tar.md5";>md5</a>
 <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-admin-webapp-1.0.2-pkg.tar.sha1";>sha1</a>
 </td> 
-    </tr> 
-    <tr class="b"> 
-     <td align="left"> <a 
href="[preferred]helix/1.0.2/binaries/helix-agent-1.0.2-pkg.tar">helix-agent-1.0.2-pkg.tar</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-agent-1.0.2-pkg.tar.asc";>asc</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-agent-1.0.2-pkg.tar.md5";>md5</a>
 <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-agent-1.0.2-pkg.tar.sha1";>sha1</a>
 </td> 
-    </tr> 
-    <tr class="a"> 
-     <td align="left"> <a 
href="[preferred]helix/1.0.2/binaries/helix-rest-1.0.2-pkg.tar">helix-rest-1.0.2-pkg.tar</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-rest-1.0.2-pkg.tar.asc";>asc</a>
 </td> 
-     <td> <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-rest-1.0.2-pkg.tar.md5";>md5</a>
 <a class="externalLink" 
href="http://www.apache.org/dist/helix/1.0.2/binaries/helix-rest-1.0.2-pkg.tar.sha1";>sha1</a>
 </td> 
-    </tr> 
-   </tbody> 
-  </table> 
- </section> 
-</section> 
-<section> 
- <h2 id="Verifying_Releases">Verifying Releases</h2> 
- <p>It is essential that you verify the integrity of the downloaded file using 
the PGP signature (<code>.asc</code> file) or a hash (<code>.md5</code> or 
<code>.sha1</code> file). Please read <a class="externalLink" 
href="http://www.apache.org/info/verification.html";>Verifying Apache Software 
Foundation Releases</a> for more information on why you should verify our 
releases.</p> 
- <p>The PGP signature can be verified using <a class="externalLink" 
href="http://www.pgpi.org/";>PGP</a> or <a class="externalLink" 
href="http://www.gnupg.org/";>GPG</a>. First download the <a 
class="externalLink" href="http://www.apache.org/dist/helix/KEYS";>KEYS</a> as 
well as the <code>*.asc</code> signature files for the relevant distribution. 
Make sure you get these files from the main distribution site, rather than from 
a mirror. Then verify the signatures using one of the following sets of 
commands: </p> 
- <div class="source"> 
-  <pre>% pgpk -a KEYS
-% pgpv downloaded_file.asc</pre> 
- </div> or 
- <br> 
- <div class="source"> 
-  <pre>% pgp -ka KEYS
-% pgp downloaded_file.asc</pre> 
- </div> or 
- <br> 
- <div class="source"> 
-  <pre>% gpg --import KEYS
-% gpg --verify downloaded_file.asc</pre> 
- </div> 
- <p>Alternatively, you can verify the MD5 signature on the files. A Unix/Linux 
program called <code>md5</code> or <code>md5sum</code> is included in most 
distributions. It is also available as part of <a class="externalLink" 
href="http://www.gnu.org/software/textutils/textutils.html";>GNU Textutils</a>. 
Windows users can get binary md5 programs from these (and likely other) places: 
</p> 
- <ul> 
-  <li> <a class="externalLink" 
href="http://www.md5summer.org/";>http://www.md5summer.org/</a> </li> 
-  <li> <a class="externalLink" 
href="http://www.fourmilab.ch/md5/";>http://www.fourmilab.ch/md5/</a> </li> 
-  <li> <a class="externalLink" 
href="http://www.pc-tools.net/win32/md5sums/";>http://www.pc-tools.net/win32/md5sums/</a>
 </li> 
- </ul> 
-</section>
+$bodyWithHeader
                        </div>
                </div>
        </div>
        </div>
 
        </div><!-- /container -->
-
+       
        <!-- Footer
        ================================================== -->
        <footer class="well">
                <div class="container">
                        <div class="row">
-                               <div class="span3 bottom-nav">
+                               <div class="span9 bottom-nav">
                                        <ul class="nav nav-list">
                                                <li class="nav-header">Get 
Helix</li>
                                                <li class="active">
-                                                       <a href="#" 
title="Download">Download</a>
+                                                       <a href="#" 
title="Download">Download </a>
                                                </li>
-                                               <li >
-                                                       <a href="Building.html" 
title="Building">Building</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Building">Building </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release Notes</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Release Notes">Release Notes </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Hands-On</li>
-                                               <li >
-                                                       <a 
href="Quickstart.html" title="Quick Start">Quick Start</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Quick Start">Quick Start </a>
                                                </li>
-                                               <li >
-                                                       <a href="Tutorial.html" 
title="Tutorial">Tutorial</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Tutorial">Tutorial </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Javadocs">Javadocs </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Recipes</li>
-                                               <li >
-                                                       <a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed lock manager">Distributed lock manager </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rabbit MQ consumer group">Rabbit MQ consumer group </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rsync replicated file store">Rsync replicated file store </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Service discovery">Service discovery </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed task DAG execution">Distributed task DAG execution </a>
                                                </li>
                                        </ul>
                                </div>
                        </div>
                </div>
        </footer>
-
+               
        <div class="container subfooter">
                <div class="row">
                        <div class="span12">
                                <p class="pull-right"><a href="#">Back to 
top</a></p>
                                <p class="copyright">Copyright &copy;2022 <a 
href="https://www.apache.org/";>The Apache Software Foundation</a>. All Rights 
Reserved.</p>
-                               <p><a 
href="https://github.com/olamy/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> maintained by <a href="https://twitter.com/olamy"; 
target="_blank" title="Olivier Lamy">Olivier Lamy</a>.</p>
-               <div class="row span16"><div>Apache Helix, Apache, the Apache 
feather logo, and the Apache Helix project logos are trademarks of The Apache 
Software Foundation.
-        All other marks mentioned may be trademarks or registered trademarks 
of their respective owners.</div>
-        <a 
href="https://helix.apache.org/1.0.2-docs/privacy-policy.html";>Privacy 
Policy</a>
-      </div>
-                       </div>
+                               <p><a 
href="http://github.com/andriusvelykis/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> by <a href="http://andrius.velykis.lt"; 
target="_blank" title="Andrius Velykis">Andrius Velykis</a>.</p>
+                                       </div>
                </div>
        </div>
 
        <!-- Le javascript
        ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
-       <script src="./js/jquery.min.js"></script>
 
-       <script src="./js/bootstrap.min.js"></script>
-       <script src="./js/lightbox.min.js"></script>
-       <script src="./js/reflow-scroll.js"></script>
+       <!-- Fallback jQuery loading from Google CDN:
+            
http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery-but-fall-back-to-my-hosted-library-on-go
 -->
+       <script type="text/javascript" 
src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js";></script>
+       <script type="text/javascript">
+               if (typeof jQuery == 'undefined')
+               {
+                       document.write(unescape("%3Cscript 
src='./js/jquery-1.8.3.min.js' type='text/javascript'%3E%3C/script%3E"));
+               }
+       </script>
+       
+       <script 
src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js";></script>
+       <script src="./js/lightbox.js"></script>
+       <script src="./js/jquery.smooth-scroll.min.js"></script>
+       <!-- back button support for smooth scroll -->
+       <script src="./js/jquery.ba-bbq.min.js"></script>
 
        <script src="./js/reflow-skin.js"></script>
-
+       
        </body>
 </html>
\ No newline at end of file

Added: helix/site-content/1.0.2-docs/images/close.png
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/images/close.png?rev=1906412&view=auto
==============================================================================
Binary file - no diff available.

Propchange: helix/site-content/1.0.2-docs/images/close.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: helix/site-content/1.0.2-docs/images/loading.gif
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/images/loading.gif?rev=1906412&view=auto
==============================================================================
Binary file - no diff available.

Propchange: helix/site-content/1.0.2-docs/images/loading.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: helix/site-content/1.0.2-docs/images/next.png
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/images/next.png?rev=1906412&view=auto
==============================================================================
Binary file - no diff available.

Propchange: helix/site-content/1.0.2-docs/images/next.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: helix/site-content/1.0.2-docs/images/prev.png
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/images/prev.png?rev=1906412&view=auto
==============================================================================
Binary file - no diff available.

Propchange: helix/site-content/1.0.2-docs/images/prev.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Modified: helix/site-content/1.0.2-docs/index.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/index.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/index.html (original)
+++ helix/site-content/1.0.2-docs/index.html Thu Jan  5 19:48:20 2023
@@ -1,13 +1,8 @@
 
 <!DOCTYPE html>
-
-
-
-
-
-
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-04-15
+ Rendered using Maven Reflow Skin 1.0.0 
(http://andriusvelykis.github.com/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -18,84 +13,61 @@
                <meta name="description" content="" />
                <meta http-equiv="content-language" content="en" />
 
-               <link href="./css/bootstrap.min.css" rel="stylesheet" />
-               <link href="./css/bootstrap-responsive.min.css" 
rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap.min.css";
 rel="stylesheet" />
+               <link 
href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-responsive.min.css";
 rel="stylesheet" />
                <link href="./css/docs.css" rel="stylesheet" />
                <link href="./css/reflow-skin.css" rel="stylesheet" />
-
-
+               
+               
                <link href="./css/lightbox.css" rel="stylesheet" />
-
+               
                <link href="./css/site.css" rel="stylesheet" />
                <link href="./css/print.css" rel="stylesheet" media="print" />
-
+               
                <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
                <!--[if lt IE 9]>
-                       <script src="./js/html5.js"></script>
+                       <script 
src="http://html5shim.googlecode.com/svn/trunk/html5.js";></script>
                <![endif]-->
+               
+       </head>
 
+       <body class="page-$config.fileId project-$config.projectId" 
data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">
 
-
-
-
-    
-<!-- Matomo -->
-<script>
-    var _paq = window._paq = window._paq || [];
-                        _paq.push(['disableCookies']);
-                                    _paq.push(['trackPageView']);
-                                    _paq.push(['enableLinkTracking']);
-                    
-    (function() {
-        var u="https://analytics.apache.org";;
-        _paq.push(['setTrackerUrl', u+'/matomo.php']);
-        _paq.push(['setSiteId', '15']);
-        var d=document, g=d.createElement('script'), 
s=d.getElementsByTagName('script')[0];
-        g.async=true; g.src=u+'/matomo.js'; s.parentNode.insertBefore(g,s);
-    })();
-</script>
-<!-- End Matomo Code -->
-       </head>
-
-       <body class="page-index project-102-docs" data-spy="scroll" 
data-offset="60" data-target="#toc-scroll-target">
-
-    
                <div class="navbar navbar-fixed-top">
                        <div class="navbar-inner">
                                <div class="container">
-                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target="#top-nav-collapse">
+                                       <a class="btn btn-navbar" 
data-toggle="collapse" data-target=".nav-collapse">
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                                <span class="icon-bar"></span>
                                        </a>
-                                       <a class="brand" href="..">Apache 
Helix</a>
-                                       <div class="nav-collapse collapse" 
id="top-nav-collapse">
+                                       <div class="nav-collapse">
                                                <ul class="nav pull-right">
-                                                       <li class="active"><a 
href="" title="Helix 1.0.2">Helix 1.0.2</a></li>
-                                                       <li class="dropdown">
+                                                       <li class="active"><a 
href="" title="Helix 1.0.2">Helix 1.0.2 </a></li>
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Get Helix <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="download.html" title="Download">Download</a></li>
-                                                                       <li ><a 
href="Building.html" title="Building">Building</a></li>
-                                                                       <li ><a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release 
Notes</a></li>
+                                                                       <li 
class="active"><a href="" title="Download">Download </a></li>
+                                                                       <li 
class="active"><a href="" title="Building">Building </a></li>
+                                                                       <li 
class="active"><a href="" title="Release Notes">Release Notes </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Hands-On <b 
class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="Quickstart.html" title="Quick Start">Quick Start</a></li>
-                                                                       <li ><a 
href="Tutorial.html" title="Tutorial">Tutorial</a></li>
-                                                                       <li ><a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a></li>
+                                                                       <li 
class="active"><a href="" title="Quick Start">Quick Start </a></li>
+                                                                       <li 
class="active"><a href="" title="Tutorial">Tutorial </a></li>
+                                                                       <li 
class="active"><a href="" title="Javadocs">Javadocs </a></li>
                                                                </ul>
                                                        </li>
-                                                       <li class="dropdown">
+                                                       <li class="dropdown 
active">
                                                                <a href="#" 
class="dropdown-toggle" data-toggle="dropdown">Recipes <b class="caret"></b></a>
                                                                <ul 
class="dropdown-menu">
-                                                                       <li ><a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a></li>
-                                                                       <li ><a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a></li>
-                                                                       <li ><a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a></li>
-                                                                       <li ><a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a></li>
-                                                                       <li ><a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed lock manager">Distributed lock 
manager </a></li>
+                                                                       <li 
class="active"><a href="" title="Rabbit MQ consumer group">Rabbit MQ consumer 
group </a></li>
+                                                                       <li 
class="active"><a href="" title="Rsync replicated file store">Rsync replicated 
file store </a></li>
+                                                                       <li 
class="active"><a href="" title="Service discovery">Service discovery </a></li>
+                                                                       <li 
class="active"><a href="" title="Distributed task DAG execution">Distributed 
task DAG execution </a></li>
                                                                </ul>
                                                        </li>
                                                </ul>
@@ -103,166 +75,126 @@
                                </div>
                        </div>
                </div>
-
+               
        <div class="container">
-
+       
        <!-- Masthead
        ================================================== -->
-
-       <header>
-       <div class="jumbotron subhead">
+       <header class="jumbotron subhead">
                <div class="row" id="banner">
                        <div class="span12">
                                <div class="pull-left">
-                                       <a href="../" id="bannerLeft"><img 
src="../images/helix-logo.jpg" alt='"''"' /></a>
-                                       <p class="lead">A cluster management 
framework for partitioned and replicated distributed resources</p>
+                                       <a href="" id="bannerLeft"><img src="" 
alt='"''"' /></a>
                                </div>
                                <div class="pull-right">
-                                       <a href="https://www.apache.org/"; 
id="bannerRight"><img src="../images/feather_small.gif" alt='"''"' /></a>
+                                       <a href="http://www.apache.org/"; 
id="bannerRight"><img src="" alt='"''"' /></a>
                                </div>
                        </div>
                </div>
-       </div>
                <div>
                        <ul class="breadcrumb">
-                               <li><a href="http://helix.apache.org/"; 
title="Apache Helix" class="externalLink">Apache Helix</a></li>
-                               <li class="divider">/</li>
-                               <li><a href="../" title="Apache Helix">Apache 
Helix</a></li>
+                               <li><a href="" title="Apache Helix">Apache 
Helix </a></li>
                                <li class="divider">/</li>
-                               <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
+                               <li><a href="" title="Release 1.0.2">Release 
1.0.2 </a></li>
                                <li class="divider">/</li>
                                <li>Helix 1.0.2 Documentation</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-04-15</li>
                        </ul>
                </div>
        </header>
 
        <div class="main-body">
-       <div class="row columns columns3">
-               <div class="span4">
-                       <h3 id="Get_Helix">Get Helix</h3>
-<p><a href="./download.html">Download</a></p>
-<p><a href="./Building.html">Building</a></p>
-<p><a href="./releasenotes/release-1.0.2.html">Release Notes</a></p>
-<section>     
-</section>
-               </div>
-               <div class="span4">
-                       <h3 id="Hands-On">Hands-On</h3>
-<p><a href="./Quickstart.html">Quickstart</a></p>
-<p><a href="./Tutorial.html">Tutorial</a></p>
-<p><a class="externalLink" 
href="http://helix.apache.org/javadocs/1.0.2/index.html";>Javadocs</a></p>
-<section>       
-</section>
-               </div>
-               <div class="span4">
-                       <h3 id="Recipes">Recipes</h3>
-<p><a href="./recipes/lock_manager.html">Distributed lock manager</a></p>
-<p><a href="./recipes/rabbitmq_consumer_group.html">Rabbit MQ consumer 
group</a></p>
-<p><a href="./recipes/rsync_replicated_file_store.html">Rsync replicated file 
store</a></p>
-<p><a href="./recipes/service_discovery.html">Service discovery</a></p>
-<p><a href="./recipes/task_dag_execution.html">Distributed task DAG 
execution</a></p>
-<section>   
-</section>
-               </div>
-       </div>
        <div class="row">
-               <div class="span4">
-                       <h3 id="Operation">Operation</h3>
-<p><a href="./Metrics.html">Monitoring Metrics</a></p>
-<section>   
-</section>
-               </div>
-               <div class="span4">
-                       <h3 id="Design">Design</h3>
-<p><a href="./design_crushed.html">CRUSH-ed for even distribution</a></p>
+               <div class="span12">
+                       <div class="body-content">
+$bodyWithHeader
+                       </div>
                </div>
        </div>
        </div>
 
        </div><!-- /container -->
-
+       
        <!-- Footer
        ================================================== -->
        <footer class="well">
                <div class="container">
                        <div class="row">
-                               <div class="span3 bottom-nav">
+                               <div class="span9 bottom-nav">
                                        <ul class="nav nav-list">
                                                <li class="nav-header">Get 
Helix</li>
-                                               <li >
-                                                       <a href="download.html" 
title="Download">Download</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Download">Download </a>
                                                </li>
-                                               <li >
-                                                       <a href="Building.html" 
title="Building">Building</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Building">Building </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="releasenotes/release-1.0.2.html" title="Release Notes">Release Notes</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Release Notes">Release Notes </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Hands-On</li>
-                                               <li >
-                                                       <a 
href="Quickstart.html" title="Quick Start">Quick Start</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Quick Start">Quick Start </a>
                                                </li>
-                                               <li >
-                                                       <a href="Tutorial.html" 
title="Tutorial">Tutorial</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Tutorial">Tutorial </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="../javadocs/1.0.2" title="Javadocs">Javadocs</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Javadocs">Javadocs </a>
                                                </li>
-                                       </ul>
-                               </div>
-                               <div class="span3 bottom-nav">
-                                       <ul class="nav nav-list">
                                                <li 
class="nav-header">Recipes</li>
-                                               <li >
-                                                       <a 
href="recipes/lock_manager.html" title="Distributed lock manager">Distributed 
lock manager</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed lock manager">Distributed lock manager </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rabbitmq_consumer_group.html" title="Rabbit MQ consumer 
group">Rabbit MQ consumer group</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rabbit MQ consumer group">Rabbit MQ consumer group </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/rsync_replicated_file_store.html" title="Rsync replicated file 
store">Rsync replicated file store</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Rsync replicated file store">Rsync replicated file store </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/service_discovery.html" title="Service discovery">Service 
discovery</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Service discovery">Service discovery </a>
                                                </li>
-                                               <li >
-                                                       <a 
href="recipes/task_dag_execution.html" title="Distributed task DAG 
execution">Distributed task DAG execution</a>
+                                               <li class="active">
+                                                       <a href="#" 
title="Distributed task DAG execution">Distributed task DAG execution </a>
                                                </li>
                                        </ul>
                                </div>
                        </div>
                </div>
        </footer>
-
+               
        <div class="container subfooter">
                <div class="row">
                        <div class="span12">
                                <p class="pull-right"><a href="#">Back to 
top</a></p>
                                <p class="copyright">Copyright &copy;2022 <a 
href="https://www.apache.org/";>The Apache Software Foundation</a>. All Rights 
Reserved.</p>
-                               <p><a 
href="https://github.com/olamy/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> maintained by <a href="https://twitter.com/olamy"; 
target="_blank" title="Olivier Lamy">Olivier Lamy</a>.</p>
-               <div class="row span16"><div>Apache Helix, Apache, the Apache 
feather logo, and the Apache Helix project logos are trademarks of The Apache 
Software Foundation.
-        All other marks mentioned may be trademarks or registered trademarks 
of their respective owners.</div>
-        <a 
href="https://helix.apache.org/1.0.2-docs/privacy-policy.html";>Privacy 
Policy</a>
-      </div>
-                       </div>
+                               <p><a 
href="http://github.com/andriusvelykis/reflow-maven-skin"; title="Reflow Maven 
skin">Reflow Maven skin</a> by <a href="http://andrius.velykis.lt"; 
target="_blank" title="Andrius Velykis">Andrius Velykis</a>.</p>
+                                       </div>
                </div>
        </div>
 
        <!-- Le javascript
        ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
-       <script src="./js/jquery.min.js"></script>
 
-       <script src="./js/bootstrap.min.js"></script>
-       <script src="./js/lightbox.min.js"></script>
-       <script src="./js/reflow-scroll.js"></script>
+       <!-- Fallback jQuery loading from Google CDN:
+            
http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery-but-fall-back-to-my-hosted-library-on-go
 -->
+       <script type="text/javascript" 
src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js";></script>
+       <script type="text/javascript">
+               if (typeof jQuery == 'undefined')
+               {
+                       document.write(unescape("%3Cscript 
src='./js/jquery-1.8.3.min.js' type='text/javascript'%3E%3C/script%3E"));
+               }
+       </script>
+       
+       <script 
src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js";></script>
+       <script src="./js/lightbox.js"></script>
+       <script src="./js/jquery.smooth-scroll.min.js"></script>
+       <!-- back button support for smooth scroll -->
+       <script src="./js/jquery.ba-bbq.min.js"></script>
 
        <script src="./js/reflow-skin.js"></script>
-
+       
        </body>
 </html>
\ No newline at end of file

Modified: helix/site-content/1.0.2-docs/integration.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/integration.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/integration.html (original)
+++ helix/site-content/1.0.2-docs/integration.html Thu Jan  5 19:48:20 2023
@@ -7,7 +7,7 @@
 
 
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-05-12  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -132,7 +132,7 @@
                                <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
                                <li class="divider">/</li>
                                <li>CI Management</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-05-12</li>
                        </ul>
                </div>
        </header>

Modified: helix/site-content/1.0.2-docs/issue-tracking.html
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/issue-tracking.html?rev=1906412&r1=1906411&r2=1906412&view=diff
==============================================================================
--- helix/site-content/1.0.2-docs/issue-tracking.html (original)
+++ helix/site-content/1.0.2-docs/issue-tracking.html Thu Jan  5 19:48:20 2023
@@ -7,7 +7,7 @@
 
 
 <!--
- Generated by Apache Maven Doxia at 2022-10-19  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
+ Generated by Apache Maven Doxia at 2022-05-12  Rendered using Reflow Maven 
Skin 2.0.0 (https://olamy.github.io/reflow-maven-skin)
 -->
 <html  xml:lang="en" lang="en">
 
@@ -132,7 +132,7 @@
                                <li><a href="./" title="Release 1.0.2">Release 
1.0.2</a></li>
                                <li class="divider">/</li>
                                <li>Issue Management</li>
-                               <li class="publishDate version-date 
pull-right">Last Published: 2022-10-19</li>
+                               <li class="publishDate version-date 
pull-right">Last Published: 2022-05-12</li>
                        </ul>
                </div>
        </header>

Added: helix/site-content/1.0.2-docs/js/jquery-1.8.3.min.js
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/js/jquery-1.8.3.min.js?rev=1906412&view=auto
==============================================================================
--- helix/site-content/1.0.2-docs/js/jquery-1.8.3.min.js (added)
+++ helix/site-content/1.0.2-docs/js/jquery-1.8.3.min.js Thu Jan  5 19:48:20 
2023
@@ -0,0 +1,2 @@
+/*! jQuery v1.8.3 jquery.com | jquery.org/license */

[... 3 lines stripped ...]
Added: helix/site-content/1.0.2-docs/js/jquery.ba-bbq.min.js
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/js/jquery.ba-bbq.min.js?rev=1906412&view=auto
==============================================================================
--- helix/site-content/1.0.2-docs/js/jquery.ba-bbq.min.js (added)
+++ helix/site-content/1.0.2-docs/js/jquery.ba-bbq.min.js Thu Jan  5 19:48:20 
2023
@@ -0,0 +1,18 @@
+/*
+ * jQuery BBQ: Back Button & Query Library - v1.3pre - 8/26/2010
+ * http://benalman.com/projects/jquery-bbq-plugin/
+ * 
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,r){var 
h,n=Array.prototype.slice,t=decodeURIComponent,a=$.param,j,c,m,y,b=$.bbq=$.bbq||{},s,x,k,e=$.event.special,d="hashchange",B="querystring",F="fragment",z="elemUrlAttr",l="href",w="src",p=/^.*\?|#.*$/g,u,H,g,i,C,E={};function
 G(I){return typeof I==="string"}function D(J){var I=n.call(arguments,1);return 
function(){return J.apply(this,I.concat(n.call(arguments)))}}function 
o(I){return I.replace(H,"$2")}function q(I){return 
I.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(K,P,I,L,J){var 
R,O,N,Q,M;if(L!==h){N=I.match(K?H:/^([^#?]*)\??([^#]*)(#?.*)/);M=N[3]||"";if(J===2&&G(L)){O=L.replace(K?u:p,"")}else{Q=m(N[2]);L=G(L)?m[K?F:B](L):L;O=J===2?L:J===1?$.extend({},L,Q):$.extend({},Q,L);O=j(O);if(K){O=O.replace(g,t)}}R=N[1]+(K?C:O||!N[1]?"?":"")+O+M}else{R=P(I!==h?I:location.href)}return
 R}a[B]=D(f,0,q);a[F]=c=D(f,1,o);a.sorted=j=function(J,K){var 
I=[],L={};$.each(a(J,K).split("&"),function(P,M){var 
O=M.replace(/(?:%5B|=).*$/,""),N=L[O];if(!N){N=L[O]=[];I.push(O)}N.p
 ush(M)});return $.map(I.sort(),function(M){return 
L[M]}).join("&")};c.noEscape=function(J){J=J||"";var 
I=$.map(J.split(""),encodeURIComponent);g=new 
RegExp(I.join("|"),"g")};c.noEscape(",/");c.ajaxCrawlable=function(I){if(I!==h){if(I){u=/^.*(?:#!|#)/;H=/^([^#]*)(?:#!|#)?(.*)$/;C="#!"}else{u=/^.*#/;H=/^([^#]*)#?(.*)$/;C="#"}i=!!I}return
 i};c.ajaxCrawlable(0);$.deparam=m=function(L,I){var 
K={},J={"true":!0,"false":!1,"null":null};$.each(L.replace(/\+/g," 
").split("&"),function(O,T){var 
N=T.split("="),S=t(N[0]),M,R=K,P=0,U=S.split("]["),Q=U.length-1;if(/\[/.test(U[0])&&/\]$/.test(U[Q])){U[Q]=U[Q].replace(/\]$/,"");U=U.shift().split("[").concat(U);Q=U.length-1}else{Q=0}if(N.length===2){M=t(N[1]);if(I){M=M&&!isNaN(M)?+M:M==="undefined"?h:J[M]!==h?J[M]:M}if(Q){for(;P<=Q;P++){S=U[P]===""?R.length:U[P];R=R[S]=P<Q?R[S]||(U[P+1]&&isNaN(U[P+1])?{}:[]):M}}else{if($.isArray(K[S])){K[S].push(M)}else{if(K[S]!==h){K[S]=[K[S],M]}else{K[S]=M}}}}else{if(S){K[S]=I?h:""}}});return
 K};function A(K,I,J){i
 f(I===h||typeof 
I==="boolean"){J=I;I=a[K?F:B]()}else{I=G(I)?I.replace(K?u:p,""):I}return 
m(I,J)}m[B]=D(A,0);m[F]=y=D(A,1);$[z]||($[z]=function(I){return 
$.extend(E,I)})({a:l,base:l,iframe:w,img:w,input:w,form:"action",link:l,script:w});k=$[z];function
 v(L,J,K,I){if(!G(K)&&typeof K!=="object"){I=K;K=J;J=h}return 
this.each(function(){var 
O=$(this),M=J||k()[(this.nodeName||"").toLowerCase()]||"",N=M&&O.attr(M)||"";O.attr(M,a[L](N,K,I))})}$.fn[B]=D(v,B);$.fn[F]=D(v,F);b.pushState=s=function(L,I){if(G(L)&&/^#/.test(L)&&I===h){I=2}var
 
K=L!==h,J=c(location.href,K?L:{},K?I:2);location.href=J};b.getState=x=function(I,J){return
 I===h||typeof I==="boolean"?y(I):y(J)[I]};b.removeState=function(I){var 
J={};if(I!==h){J=x();$.each($.isArray(I)?I:arguments,function(L,K){delete 
J[K]})}s(J,2)};e[d]=$.extend(e[d],{add:function(I){var K;function J(M){var 
L=M[F]=c();M.getState=function(N,O){return N===h||typeof 
N==="boolean"?m(L,N):m(L,O)[N]};K.apply(this,arguments)}if($.isFunction(I)){K=I;return
 J}else
 {K=I.handler;I.handler=J}}})})(jQuery,this);
+/*
+ * jQuery hashchange event - v1.3 - 7/21/2010
+ * http://benalman.com/projects/jquery-hashchange-plugin/
+ * 
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,e,b){var 
c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in 
e&&(i===b||i>7);function 
a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return
 
j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return
 false}$(f.start)},teardown:function(){if(d){return 
false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return 
q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function
 n(){var 
r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var
 q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe 
tabindex="-1" 
title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.docu
 ment.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return 
a(q.location.href)};l=function(v,s){var 
u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return
 j})()})(jQuery,this);
\ No newline at end of file

Added: helix/site-content/1.0.2-docs/js/jquery.smooth-scroll.min.js
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/js/jquery.smooth-scroll.min.js?rev=1906412&view=auto
==============================================================================
--- helix/site-content/1.0.2-docs/js/jquery.smooth-scroll.min.js (added)
+++ helix/site-content/1.0.2-docs/js/jquery.smooth-scroll.min.js Thu Jan  5 
19:48:20 2023
@@ -0,0 +1,3 @@
+/*! Smooth Scroll - v1.4.6 - 2012-08-23
+* Copyright (c) 2012 Karl Swedberg; Licensed MIT, GPL */
+(function(a){function f(a){return a.replace(/(:|\.)/g,"\\$1")}var 
b="1.4.6",c={exclude:[],excludeWithin:[],offset:0,direction:"top",scrollElement:null,scrollTarget:null,beforeScroll:function(){},afterScroll:function(){},easing:"swing",speed:400,autoCoefficent:2},d=function(b){var
 c=[],d=!1,e=b.dir&&b.dir=="left"?"scrollLeft":"scrollTop";return 
this.each(function(){if(this==document||this==window)return;var 
b=a(this);b[e]()>0?c.push(this):(b[e](1),d=b[e]()>0,d&&c.push(this),b[e](0))}),c.length||this.each(function(a){this.nodeName==="BODY"&&(c=[this])}),b.el==="first"&&c.length>1&&(c=[c[0]]),c},e="ontouchend"in
 document;a.fn.extend({scrollable:function(a){var b=d.call(this,{dir:a});return 
this.pushStack(b)},firstScrollable:function(a){var 
b=d.call(this,{el:"first",dir:a});return 
this.pushStack(b)},smoothScroll:function(b){b=b||{};var 
c=a.extend({},a.fn.smoothScroll.defaults,b),d=a.smoothScroll.filterPath(location.pathname);return
 this.unbind("click.smoothscroll").bind("click.smoothscr
 oll",function(b){var 
e=this,g=a(this),h=c.exclude,i=c.excludeWithin,j=0,k=0,l=!0,m={},n=location.hostname===e.hostname||!e.hostname,o=c.scrollTarget||(a.smoothScroll.filterPath(e.pathname)||d)===d,p=f(e.hash);if(!c.scrollTarget&&(!n||!o||!p))l=!1;else{while(l&&j<h.length)g.is(f(h[j++]))&&(l=!1);while(l&&k<i.length)g.closest(i[k++]).length&&(l=!1)}l&&(b.preventDefault(),a.extend(m,c,{scrollTarget:c.scrollTarget||p,link:e}),a.smoothScroll(m))}),this}}),a.smoothScroll=function(b,c){var
 d,e,f,g,h=0,i="offset",j="scrollTop",k={},l={},m=[];typeof 
b=="number"?(d=a.fn.smoothScroll.defaults,f=b):(d=a.extend({},a.fn.smoothScroll.defaults,b||{}),d.scrollElement&&(i="position",d.scrollElement.css("position")=="static"&&d.scrollElement.css("position","relative")),f=c||a(d.scrollTarget)[i]()&&a(d.scrollTarget)[i]()[d.direction]||0),d=a.extend({link:null},d),j=d.direction=="left"?"scrollLeft":j,d.scrollElement?(e=d.scrollElement,h=e[j]()):e=a("html,
 body").firstScrollable(),k[j]=f+h+d.offset,d.bef
 
oreScroll.call(e,d),g=d.speed,g==="auto"&&(g=k[j]||e.scrollTop(),g=g/d.autoCoefficent),l={duration:g,easing:d.easing,complete:function(){d.afterScroll.call(d.link,d)}},d.step&&(l.step=d.step),e.length?e.stop().animate(k,l):d.afterScroll.call(d.link,d)},a.smoothScroll.version=b,a.smoothScroll.filterPath=function(a){return
 
a.replace(/^\//,"").replace(/(index|default).[a-zA-Z]{3,4}$/,"").replace(/\/$/,"")},a.fn.smoothScroll.defaults=c})(jQuery);
\ No newline at end of file

Added: helix/site-content/1.0.2-docs/js/lightbox.js
URL: 
http://svn.apache.org/viewvc/helix/site-content/1.0.2-docs/js/lightbox.js?rev=1906412&view=auto
==============================================================================
--- helix/site-content/1.0.2-docs/js/lightbox.js (added)
+++ helix/site-content/1.0.2-docs/js/lightbox.js Thu Jan  5 19:48:20 2023
@@ -0,0 +1,351 @@
+
+/*
+Lightbox v2.51
+by Lokesh Dhakar - http://www.lokeshdhakar.com
+
+For more information, visit:
+http://lokeshdhakar.com/projects/lightbox2/
+
+Licensed under the Creative Commons Attribution 2.5 License - 
http://creativecommons.org/licenses/by/2.5/
+- free for use in both personal and commercial projects
+- attribution requires leaving author name, author link, and the license info 
intact
+       
+Thanks
+- Scott Upton(uptonic.com), Peter-Paul Koch(quirksmode.com), and Thomas 
Fuchs(mir.aculo.us) for ideas, libs, and snippets.
+- Artemy Tregubenko (arty.name) for cleanup and help in updating to latest 
proto-aculous in v2.05.
+
+
+Table of Contents
+=================
+LightboxOptions
+
+Lightbox
+- constructor
+- init
+- enable
+- build
+- start
+- changeImage
+- sizeContainer
+- showImage
+- updateNav
+- updateDetails
+- preloadNeigbhoringImages
+- enableKeyboardNav
+- disableKeyboardNav
+- keyboardAction
+- end
+
+options = new LightboxOptions
+lightbox = new Lightbox options
+*/
+
+(function() {
+  var $, Lightbox, LightboxOptions;
+
+  $ = jQuery;
+
+  LightboxOptions = (function() {
+
+    function LightboxOptions() {
+      this.fileLoadingImage = 'images/loading.gif';
+      this.fileCloseImage = 'images/close.png';
+      this.resizeDuration = 700;
+      this.fadeDuration = 500;
+      this.labelImage = "Image";
+      this.labelOf = "of";
+    }
+
+    return LightboxOptions;
+
+  })();
+
+  Lightbox = (function() {
+
+    function Lightbox(options) {
+      this.options = options;
+      this.album = [];
+      this.currentImageIndex = void 0;
+      this.init();
+    }
+
+    Lightbox.prototype.init = function() {
+      this.enable();
+      return this.build();
+    };
+
+    Lightbox.prototype.enable = function() {
+      var _this = this;
+      return $('body').on('click', 'a[rel^=lightbox], area[rel^=lightbox]', 
function(e) {
+        _this.start($(e.currentTarget));
+        return false;
+      });
+    };
+
+    Lightbox.prototype.build = function() {
+      var $lightbox,
+        _this = this;
+      $("<div>", {
+        id: 'lightboxOverlay'
+      }).after($('<div/>', {
+        id: 'lightbox'
+      }).append($('<div/>', {
+        "class": 'lb-outerContainer'
+      }).append($('<div/>', {
+        "class": 'lb-container'
+      }).append($('<img/>', {
+        "class": 'lb-image'
+      }), $('<div/>', {
+        "class": 'lb-nav'
+      }).append($('<a/>', {
+        "class": 'lb-prev'
+      }), $('<a/>', {
+        "class": 'lb-next'
+      })), $('<div/>', {
+        "class": 'lb-loader'
+      }).append($('<a/>', {
+        "class": 'lb-cancel'
+      }).append($('<img/>', {
+        src: this.options.fileLoadingImage
+      }))))), $('<div/>', {
+        "class": 'lb-dataContainer'
+      }).append($('<div/>', {
+        "class": 'lb-data'
+      }).append($('<div/>', {
+        "class": 'lb-details'
+      }).append($('<span/>', {
+        "class": 'lb-caption'
+      }), $('<span/>', {
+        "class": 'lb-number'
+      })), $('<div/>', {
+        "class": 'lb-closeContainer'
+      }).append($('<a/>', {
+        "class": 'lb-close'
+      }).append($('<img/>', {
+        src: this.options.fileCloseImage
+      }))))))).appendTo($('body'));
+      $('#lightboxOverlay').hide().on('click', function(e) {
+        _this.end();
+        return false;
+      });
+      $lightbox = $('#lightbox');
+      $lightbox.hide().on('click', function(e) {
+        if ($(e.target).attr('id') === 'lightbox') _this.end();
+        return false;
+      });
+      $lightbox.find('.lb-outerContainer').on('click', function(e) {
+        if ($(e.target).attr('id') === 'lightbox') _this.end();
+        return false;
+      });
+      $lightbox.find('.lb-prev').on('click', function(e) {
+        _this.changeImage(_this.currentImageIndex - 1);
+        return false;
+      });
+      $lightbox.find('.lb-next').on('click', function(e) {
+        _this.changeImage(_this.currentImageIndex + 1);
+        return false;
+      });
+      $lightbox.find('.lb-loader, .lb-close').on('click', function(e) {
+        _this.end();
+        return false;
+      });
+    };
+
+    Lightbox.prototype.start = function($link) {
+      var $lightbox, $window, a, i, imageNumber, left, top, _len, _ref;
+      $(window).on("resize", this.sizeOverlay);
+      $('select, object, embed').css({
+        visibility: "hidden"
+      });
+      
$('#lightboxOverlay').width($(document).width()).height($(document).height()).fadeIn(this.options.fadeDuration);
+      this.album = [];
+      imageNumber = 0;
+      if ($link.attr('rel') === 'lightbox') {
+        this.album.push({
+          link: $link.attr('href'),
+          title: $link.attr('title')
+        });
+      } else {
+        _ref = $($link.prop("tagName") + '[rel="' + $link.attr('rel') + '"]');
+        for (i = 0, _len = _ref.length; i < _len; i++) {
+          a = _ref[i];
+          this.album.push({
+            link: $(a).attr('href'),
+            title: $(a).attr('title')
+          });
+          if ($(a).attr('href') === $link.attr('href')) imageNumber = i;
+        }
+      }
+      $window = $(window);
+      top = $window.scrollTop() + $window.height() / 10;
+      left = $window.scrollLeft();
+      $lightbox = $('#lightbox');
+      $lightbox.css({
+        top: top + 'px',
+        left: left + 'px'
+      }).fadeIn(this.options.fadeDuration);
+      this.changeImage(imageNumber);
+    };
+
+    Lightbox.prototype.changeImage = function(imageNumber) {
+      var $image, $lightbox, preloader,
+        _this = this;
+      this.disableKeyboardNav();
+      $lightbox = $('#lightbox');
+      $image = $lightbox.find('.lb-image');
+      this.sizeOverlay();
+      $('#lightboxOverlay').fadeIn(this.options.fadeDuration);
+      $('.loader').fadeIn('slow');
+      $lightbox.find('.lb-image, .lb-nav, .lb-prev, .lb-next, 
.lb-dataContainer, .lb-numbers, .lb-caption').hide();
+      $lightbox.find('.lb-outerContainer').addClass('animating');
+      preloader = new Image;
+      preloader.onload = function() {
+        $image.attr('src', _this.album[imageNumber].link);
+        $image.width = preloader.width;
+        $image.height = preloader.height;
+        return _this.sizeContainer(preloader.width, preloader.height);
+      };
+      preloader.src = this.album[imageNumber].link;
+      this.currentImageIndex = imageNumber;
+    };
+
+    Lightbox.prototype.sizeOverlay = function() {
+      return 
$('#lightboxOverlay').width($(document).width()).height($(document).height());
+    };
+
+    Lightbox.prototype.sizeContainer = function(imageWidth, imageHeight) {
+      var $container, $lightbox, $outerContainer, containerBottomPadding, 
containerLeftPadding, containerRightPadding, containerTopPadding, newHeight, 
newWidth, oldHeight, oldWidth,
+        _this = this;
+      $lightbox = $('#lightbox');
+      $outerContainer = $lightbox.find('.lb-outerContainer');
+      oldWidth = $outerContainer.outerWidth();
+      oldHeight = $outerContainer.outerHeight();
+      $container = $lightbox.find('.lb-container');
+      containerTopPadding = parseInt($container.css('padding-top'), 10);
+      containerRightPadding = parseInt($container.css('padding-right'), 10);
+      containerBottomPadding = parseInt($container.css('padding-bottom'), 10);
+      containerLeftPadding = parseInt($container.css('padding-left'), 10);
+      newWidth = imageWidth + containerLeftPadding + containerRightPadding;
+      newHeight = imageHeight + containerTopPadding + containerBottomPadding;
+      if (newWidth !== oldWidth && newHeight !== oldHeight) {
+        $outerContainer.animate({
+          width: newWidth,
+          height: newHeight
+        }, this.options.resizeDuration, 'swing');
+      } else if (newWidth !== oldWidth) {
+        $outerContainer.animate({
+          width: newWidth
+        }, this.options.resizeDuration, 'swing');
+      } else if (newHeight !== oldHeight) {
+        $outerContainer.animate({
+          height: newHeight
+        }, this.options.resizeDuration, 'swing');
+      }
+      setTimeout(function() {
+        $lightbox.find('.lb-dataContainer').width(newWidth);
+        $lightbox.find('.lb-prevLink').height(newHeight);
+        $lightbox.find('.lb-nextLink').height(newHeight);
+        _this.showImage();
+      }, this.options.resizeDuration);
+    };
+
+    Lightbox.prototype.showImage = function() {
+      var $lightbox;
+      $lightbox = $('#lightbox');
+      $lightbox.find('.lb-loader').hide();
+      $lightbox.find('.lb-image').fadeIn('slow');
+      this.updateNav();
+      this.updateDetails();
+      this.preloadNeighboringImages();
+      this.enableKeyboardNav();
+    };
+
+    Lightbox.prototype.updateNav = function() {
+      var $lightbox;
+      $lightbox = $('#lightbox');
+      $lightbox.find('.lb-nav').show();
+      if (this.currentImageIndex > 0) $lightbox.find('.lb-prev').show();
+      if (this.currentImageIndex < this.album.length - 1) {
+        $lightbox.find('.lb-next').show();
+      }
+    };
+
+    Lightbox.prototype.updateDetails = function() {
+      var $lightbox,
+        _this = this;
+      $lightbox = $('#lightbox');
+      if (typeof this.album[this.currentImageIndex].title !== 'undefined' && 
this.album[this.currentImageIndex].title !== "") {
+        
$lightbox.find('.lb-caption').html(this.album[this.currentImageIndex].title).fadeIn('fast');
+      }
+      if (this.album.length > 1) {
+        $lightbox.find('.lb-number').html(this.options.labelImage + ' ' + 
(this.currentImageIndex + 1) + ' ' + this.options.labelOf + '  ' + 
this.album.length).fadeIn('fast');
+      } else {
+        $lightbox.find('.lb-number').hide();
+      }
+      $lightbox.find('.lb-outerContainer').removeClass('animating');
+      $lightbox.find('.lb-dataContainer').fadeIn(this.resizeDuration, 
function() {
+        return _this.sizeOverlay();
+      });
+    };
+
+    Lightbox.prototype.preloadNeighboringImages = function() {
+      var preloadNext, preloadPrev;
+      if (this.album.length > this.currentImageIndex + 1) {
+        preloadNext = new Image;
+        preloadNext.src = this.album[this.currentImageIndex + 1].link;
+      }
+      if (this.currentImageIndex > 0) {
+        preloadPrev = new Image;
+        preloadPrev.src = this.album[this.currentImageIndex - 1].link;
+      }
+    };
+
+    Lightbox.prototype.enableKeyboardNav = function() {
+      $(document).on('keyup.keyboard', $.proxy(this.keyboardAction, this));
+    };
+
+    Lightbox.prototype.disableKeyboardNav = function() {
+      $(document).off('.keyboard');
+    };
+
+    Lightbox.prototype.keyboardAction = function(event) {
+      var KEYCODE_ESC, KEYCODE_LEFTARROW, KEYCODE_RIGHTARROW, key, keycode;
+      KEYCODE_ESC = 27;
+      KEYCODE_LEFTARROW = 37;
+      KEYCODE_RIGHTARROW = 39;
+      keycode = event.keyCode;
+      key = String.fromCharCode(keycode).toLowerCase();
+      if (keycode === KEYCODE_ESC || key.match(/x|o|c/)) {
+        this.end();
+      } else if (key === 'p' || keycode === KEYCODE_LEFTARROW) {
+        if (this.currentImageIndex !== 0) {
+          this.changeImage(this.currentImageIndex - 1);
+        }
+      } else if (key === 'n' || keycode === KEYCODE_RIGHTARROW) {
+        if (this.currentImageIndex !== this.album.length - 1) {
+          this.changeImage(this.currentImageIndex + 1);
+        }
+      }
+    };
+
+    Lightbox.prototype.end = function() {
+      this.disableKeyboardNav();
+      $(window).off("resize", this.sizeOverlay);
+      $('#lightbox').fadeOut(this.options.fadeDuration);
+      $('#lightboxOverlay').fadeOut(this.options.fadeDuration);
+      return $('select, object, embed').css({
+        visibility: "visible"
+      });
+    };
+
+    return Lightbox;
+
+  })();
+
+  $(function() {
+    var lightbox, options;
+    options = new LightboxOptions;
+    return lightbox = new Lightbox(options);
+  });
+
+}).call(this);
\ No newline at end of file



Reply via email to