mirror of https://github.com/apache/lucene.git
240 lines
8.5 KiB
HTML
240 lines
8.5 KiB
HTML
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<div id="replication" class="clearfix" ng-class="{replicating:settings.isReplicating}">
|
|
|
|
<div id="frame">
|
|
|
|
<div id="error" ng-show="progress.ERROR">{{ progress.ERROR }}</div>
|
|
|
|
<div class="replicating block" ng-show="settings.isReplicating">
|
|
|
|
<div id="progress">
|
|
|
|
<div id="start"><div class="info">
|
|
|
|
<span>{{progress.replicationStartTime}}</span>
|
|
|
|
</div></div>
|
|
|
|
<div id="speed"><div class="info">
|
|
|
|
<span>5.1 MB</span>/s
|
|
|
|
</div></div>
|
|
|
|
<div id="bar">
|
|
|
|
<div id="bar-info"><div class="info">
|
|
|
|
<div class="files"><span>{{progress.numFilesToDownload}}</span> File<span ng-show="progress.numFilesToDownload>1">s</span></div>
|
|
<div class="size"><span>{{progress.bytesToDownload}}</span></div>
|
|
|
|
</div></div>
|
|
|
|
<div id="eta"><div class="info">
|
|
|
|
ETA: <span>{{progress.timeRemaining | readableSeconds }}</span>
|
|
|
|
</div></div>
|
|
|
|
<div id="done" style="width: {{progress.totalPercentWidth}}">
|
|
|
|
<div class="percent">
|
|
|
|
<span>{{progress.totalPercent}}</span>%
|
|
|
|
</div>
|
|
|
|
<div id="done-info"><div class="info">
|
|
|
|
<div class="files"><span>{{progress.numFilesDownloaded}}</span> File<span ng-show="progress.numFilesDownloaded>1">s</span></div>
|
|
<div class="size"><span>{{progress.bytesDownloaded}}</span></div>
|
|
|
|
</div></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div id="current-file" class="clearfix">
|
|
|
|
<div class="label"><span class="loader">Current File:</span></div>
|
|
<div class="file">{{progress.currentFile}}</div>
|
|
<div class="progress">
|
|
<span class="done">{{progress.currentFileSizeDownloaded}}</span> / <span class="total">{{progress.currentFileSize}}</span> [<span class="percent">{{progress.currentFileSizePercent}}</span>%]
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div id="iterations" class="slaveOnly block clearfix" ng-show="isSlave">
|
|
|
|
<div class="label"><span class="">Iterations:</span></div>
|
|
<div class="iterations" ng-show="iterations && showIterations">
|
|
<ul>
|
|
<li class="{{iteration.status}}" ng-class="{latest:iteration.latest}" ng-repeat="iteration in iterations |limitTo:iterationCount">{{iteration.date}}</li>
|
|
</ul>
|
|
<span ng-show="iterations.length>1">
|
|
<a ng-show="iterationCount==1" ng-click="showIterations()"><span class="expand">Show all Iterations</span></a>
|
|
<a ng-show="iterationCount>1" ng-click="hideIterations()"><span class="collapse">Hide past Iterations</span></a>
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div id="details" class="block clearfix">
|
|
|
|
<table border="0" cellspacing="0" cellpadding="0">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<td><span>Index</span></td>
|
|
<th>Version</th>
|
|
<th><abbr title="Generation">Gen</abbr></th>
|
|
<th>Size</th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
<tbody>
|
|
|
|
<tr class="masterSearch">
|
|
|
|
<th>Master (Searching)</th>
|
|
<td class="version" ng-class="{diff:versions.changedVersion}">
|
|
<div>{{versions.masterSearch.version}}</div>
|
|
</td>
|
|
<td class="generation" ng-class="{diff:versions.changedGeneration}">
|
|
<div>{{versions.masterSearch.generation}}</div>
|
|
</td>
|
|
<td class="size">
|
|
<div>{{versions.masterSearch.size}}</div>
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="master">
|
|
|
|
<th>Master (Replicable)</th>
|
|
<td class="version" ng-class="{diff:versions.changedVersion}">
|
|
<div>{{versions.master.version}}</div>
|
|
</td>
|
|
<td class="generation" ng-class="{diff:versions.changedGeneration}">
|
|
<div>{{versions.master.generation}}</div>
|
|
</td>
|
|
<td class="size">
|
|
<div>{{versions.master.size}}</div>
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="slave slaveOnly" ng-show="isSlave">
|
|
|
|
<th>Slave (Searching)</th>
|
|
<td class="version" ng-class="{diff:versions.changedVersion}">
|
|
<div>{{versions.slave.version}}</div>
|
|
</td>
|
|
<td class="generation" ng-class="{diff:versions.changedGeneration}">
|
|
<div>{{versions.slave.generation}}</div>
|
|
</td>
|
|
<td class="size">
|
|
<div>{{versions.slave.size}}</div>
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
<div id="settings" class="settings block clearfix slaveOnly" ng-show="isSlave">
|
|
|
|
<div class="label"><span>Settings:</span></div>
|
|
<ul>
|
|
<li class="masterUrl" ng-show="settings.masterUrl">
|
|
<dl class="clearfix">
|
|
<dt>master url:</dt>
|
|
<dd>{{settings.masterUrl}}</dd>
|
|
</dl>
|
|
</li>
|
|
<li class="isPollingDisabled"><dl class="clearfix">
|
|
<dt>polling enable:</dt>
|
|
<dd class="ico" ng-class="{'ico-0':settings.isPollingDisabled, 'ico-1':!settings.isPollingDisabled}">
|
|
<span ng-show="settings.pollInterval">(interval: {{settings.pollInterval}})</span>
|
|
</dd>
|
|
</dl></li>
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
<div id="master-settings" class="settings block clearfix">
|
|
|
|
<div class="label"><span>Settings (Master):</span></div>
|
|
<ul>
|
|
<li class="replicationEnabled"><dl class="clearfix">
|
|
<dt>replication enable:</dt>
|
|
<dd class="ico" ng-class="{'ico-0':!master.replicationEnabled, 'ico-1':master.replicationEnabled}"> </dd>
|
|
</dl></li>
|
|
<li class="replicateAfter"><dl class="clearfix">
|
|
<dt>replicateAfter:</dt>
|
|
<dd>{{master.replicateAfter}}</dd>
|
|
</dl></li>
|
|
<li class="confFiles" ng-show="master.files"><dl class="clearfix">
|
|
<dt>confFiles:</dt>
|
|
<dd><span ng-repeat="file in master.files"><attr title="{{file.title}}">{{file.name}}</attr>{{ $last ? '' :', '}}</span></dd>
|
|
</dl></li>
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div id="navigation">
|
|
|
|
<div class="timer" ng-show="isSlave && !settings.isPollingDisabled &&!settings.isReplicating">
|
|
|
|
<p>Next Run: <span class="approx" ng-show="settings.isApprox">~</span><span class="tick">{{settings.tick | readableSeconds}}</span></p>
|
|
<small ng-show="settings.nextExecutionAt">{{settings.nextExecutionAt}}</small>
|
|
</div>
|
|
|
|
<button class="refresh-status" ng-click="refresh()"><span>Refresh Status</span></button>
|
|
|
|
<div class="slaveOnly" ng-show="isSlave">
|
|
<button class="optional replicate-now primary" ng-click="execute('fetchindex')" ng-show="!settings.isReplicating"><span>Replicate now</span></button>
|
|
<button class="optional abort-replication warn" ng-click="execute('abortfetch')" ng-show="settings.isReplicating"><span>Abort Replication</span></button>
|
|
|
|
<button class="optional disable-polling" ng-click="execute('disablepoll')" ng-show="!settings.isPollingDisabled"><span>Disable Polling</span></button>
|
|
<button class="optional enable-polling" ng-click="execute('enablepoll')" ng-show="settings.isPollingDisabled"><span>Enable Polling</span></button>
|
|
</div>
|
|
|
|
<div class="masterOnly" ng-show="!isSlave">
|
|
<button class="optional disable-replication warn" ng-click="execute('disablereplication')" ng-show="master.replicationEnabled"><span>Disable Replication</span></button>
|
|
<button class="optional enable-replication warn" ng-click="execute('enablereplication')" ng-show="!master.replicationEnabled"><span>Enable Replication</span></button>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|