rjack-solr 3.6.2.0-java → 4.0.0.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (315) hide show
  1. data/History.rdoc +5 -0
  2. data/Manifest.txt +268 -33
  3. data/NOTICE.txt +1 -1
  4. data/README.rdoc +6 -6
  5. data/assembly.xml +2 -2
  6. data/bin/rjack-solr-fg +1 -1
  7. data/init/rjack-solr +2 -2
  8. data/lib/rjack-solr.rb +7 -2
  9. data/lib/rjack-solr/base.rb +2 -2
  10. data/lib/rjack-solr/commons-cli-1.2.jar +0 -0
  11. data/lib/rjack-solr/config.rb +1 -1
  12. data/lib/rjack-solr/server.rb +1 -1
  13. data/lib/rjack-solr/solr-core-4.0.0.jar +0 -0
  14. data/lib/rjack-solr/solr-solrj-4.0.0.jar +0 -0
  15. data/pom.xml +19 -6
  16. data/test/test_solr.rb +7 -5
  17. data/webapp/META-INF/LICENSE.txt +0 -940
  18. data/webapp/META-INF/MANIFEST.MF +5 -5
  19. data/webapp/META-INF/NOTICE.txt +160 -93
  20. data/webapp/WEB-INF/web.xml +57 -43
  21. data/webapp/admin.html +140 -0
  22. data/webapp/css/chosen.css +392 -0
  23. data/webapp/css/styles/analysis.css +293 -0
  24. data/webapp/css/styles/cloud.css +331 -0
  25. data/webapp/css/styles/common.css +593 -0
  26. data/webapp/css/styles/cores.css +203 -0
  27. data/webapp/css/styles/dashboard.css +127 -0
  28. data/webapp/css/styles/dataimport.css +222 -0
  29. data/webapp/css/styles/index.css +195 -0
  30. data/webapp/css/styles/java-properties.css +33 -0
  31. data/webapp/css/styles/logging.css +323 -0
  32. data/webapp/css/styles/menu.css +272 -0
  33. data/webapp/css/styles/plugins.css +175 -0
  34. data/webapp/css/styles/query.css +137 -0
  35. data/webapp/css/styles/replication.css +494 -0
  36. data/webapp/css/styles/schema-browser.css +476 -0
  37. data/webapp/css/styles/threads.css +153 -0
  38. data/webapp/img/ZeroClipboard.swf +0 -0
  39. data/webapp/img/chosen-sprite.png +0 -0
  40. data/webapp/img/div.gif +0 -0
  41. data/webapp/{admin → img}/favicon.ico +0 -0
  42. data/webapp/img/filetypes/7z.png +0 -0
  43. data/webapp/img/filetypes/README +27 -0
  44. data/webapp/img/filetypes/ai.png +0 -0
  45. data/webapp/img/filetypes/aiff.png +0 -0
  46. data/webapp/img/filetypes/asc.png +0 -0
  47. data/webapp/img/filetypes/audio.png +0 -0
  48. data/webapp/img/filetypes/bin.png +0 -0
  49. data/webapp/img/filetypes/bz2.png +0 -0
  50. data/webapp/img/filetypes/c.png +0 -0
  51. data/webapp/img/filetypes/cfc.png +0 -0
  52. data/webapp/img/filetypes/cfm.png +0 -0
  53. data/webapp/img/filetypes/chm.png +0 -0
  54. data/webapp/img/filetypes/class.png +0 -0
  55. data/webapp/img/filetypes/conf.png +0 -0
  56. data/webapp/img/filetypes/cpp.png +0 -0
  57. data/webapp/img/filetypes/cs.png +0 -0
  58. data/webapp/img/filetypes/css.png +0 -0
  59. data/webapp/img/filetypes/csv.png +0 -0
  60. data/webapp/img/filetypes/deb.png +0 -0
  61. data/webapp/img/filetypes/divx.png +0 -0
  62. data/webapp/img/filetypes/doc.png +0 -0
  63. data/webapp/img/filetypes/dot.png +0 -0
  64. data/webapp/img/filetypes/eml.png +0 -0
  65. data/webapp/img/filetypes/enc.png +0 -0
  66. data/webapp/img/filetypes/file.png +0 -0
  67. data/webapp/img/filetypes/gif.png +0 -0
  68. data/webapp/img/filetypes/gz.png +0 -0
  69. data/webapp/img/filetypes/hlp.png +0 -0
  70. data/webapp/img/filetypes/htm.png +0 -0
  71. data/webapp/img/filetypes/html.png +0 -0
  72. data/webapp/img/filetypes/image.png +0 -0
  73. data/webapp/img/filetypes/iso.png +0 -0
  74. data/webapp/img/filetypes/jar.png +0 -0
  75. data/webapp/img/filetypes/java.png +0 -0
  76. data/webapp/img/filetypes/jpeg.png +0 -0
  77. data/webapp/img/filetypes/jpg.png +0 -0
  78. data/webapp/img/filetypes/js.png +0 -0
  79. data/webapp/img/filetypes/lua.png +0 -0
  80. data/webapp/img/filetypes/m.png +0 -0
  81. data/webapp/img/filetypes/mm.png +0 -0
  82. data/webapp/img/filetypes/mov.png +0 -0
  83. data/webapp/img/filetypes/mp3.png +0 -0
  84. data/webapp/img/filetypes/mpg.png +0 -0
  85. data/webapp/img/filetypes/odc.png +0 -0
  86. data/webapp/img/filetypes/odf.png +0 -0
  87. data/webapp/img/filetypes/odg.png +0 -0
  88. data/webapp/img/filetypes/odi.png +0 -0
  89. data/webapp/img/filetypes/odp.png +0 -0
  90. data/webapp/img/filetypes/ods.png +0 -0
  91. data/webapp/img/filetypes/odt.png +0 -0
  92. data/webapp/img/filetypes/ogg.png +0 -0
  93. data/webapp/img/filetypes/pdf.png +0 -0
  94. data/webapp/img/filetypes/pgp.png +0 -0
  95. data/webapp/img/filetypes/php.png +0 -0
  96. data/webapp/img/filetypes/pl.png +0 -0
  97. data/webapp/img/filetypes/png.png +0 -0
  98. data/webapp/img/filetypes/ppt.png +0 -0
  99. data/webapp/img/filetypes/ps.png +0 -0
  100. data/webapp/img/filetypes/py.png +0 -0
  101. data/webapp/img/filetypes/ram.png +0 -0
  102. data/webapp/img/filetypes/rar.png +0 -0
  103. data/webapp/img/filetypes/rb.png +0 -0
  104. data/webapp/img/filetypes/rm.png +0 -0
  105. data/webapp/img/filetypes/rpm.png +0 -0
  106. data/webapp/img/filetypes/rtf.png +0 -0
  107. data/webapp/img/filetypes/sig.png +0 -0
  108. data/webapp/img/filetypes/sql.png +0 -0
  109. data/webapp/img/filetypes/swf.png +0 -0
  110. data/webapp/img/filetypes/sxc.png +0 -0
  111. data/webapp/img/filetypes/sxd.png +0 -0
  112. data/webapp/img/filetypes/sxi.png +0 -0
  113. data/webapp/img/filetypes/sxw.png +0 -0
  114. data/webapp/img/filetypes/tar.png +0 -0
  115. data/webapp/img/filetypes/tex.png +0 -0
  116. data/webapp/img/filetypes/tgz.png +0 -0
  117. data/webapp/img/filetypes/txt.png +0 -0
  118. data/webapp/img/filetypes/vcf.png +0 -0
  119. data/webapp/img/filetypes/video.png +0 -0
  120. data/webapp/img/filetypes/vsd.png +0 -0
  121. data/webapp/img/filetypes/wav.png +0 -0
  122. data/webapp/img/filetypes/wma.png +0 -0
  123. data/webapp/img/filetypes/wmv.png +0 -0
  124. data/webapp/img/filetypes/xls.png +0 -0
  125. data/webapp/img/filetypes/xml.png +0 -0
  126. data/webapp/img/filetypes/xpi.png +0 -0
  127. data/webapp/img/filetypes/xvid.png +0 -0
  128. data/webapp/img/filetypes/zip.png +0 -0
  129. data/webapp/img/ico/arrow-000-small.png +0 -0
  130. data/webapp/img/ico/arrow-circle.png +0 -0
  131. data/webapp/img/ico/arrow-switch.png +0 -0
  132. data/webapp/img/ico/asterisk.png +0 -0
  133. data/webapp/img/ico/battery.png +0 -0
  134. data/webapp/img/ico/block-small.png +0 -0
  135. data/webapp/img/ico/block.png +0 -0
  136. data/webapp/img/ico/book-open-text.png +0 -0
  137. data/webapp/img/ico/box.png +0 -0
  138. data/webapp/img/ico/bug.png +0 -0
  139. data/webapp/img/ico/chart.png +0 -0
  140. data/webapp/img/ico/chevron-small-expand.png +0 -0
  141. data/webapp/img/ico/chevron-small.png +0 -0
  142. data/webapp/img/ico/clipboard-list.png +0 -0
  143. data/webapp/img/ico/clipboard-paste-document-text.png +0 -0
  144. data/webapp/img/ico/clipboard-paste.png +0 -0
  145. data/webapp/img/ico/clock-select-remain.png +0 -0
  146. data/webapp/img/ico/clock-select.png +0 -0
  147. data/webapp/img/ico/construction.png +0 -0
  148. data/webapp/img/ico/cross-0.png +0 -0
  149. data/webapp/img/ico/cross-1.png +0 -0
  150. data/webapp/img/ico/cross.png +0 -0
  151. data/webapp/img/ico/dashboard.png +0 -0
  152. data/webapp/img/ico/database.png +0 -0
  153. data/webapp/img/ico/databases.png +0 -0
  154. data/webapp/img/ico/disk-black.png +0 -0
  155. data/webapp/img/ico/document-convert.png +0 -0
  156. data/webapp/img/ico/document-import.png +0 -0
  157. data/webapp/img/ico/document-list.png +0 -0
  158. data/webapp/img/ico/document-text.png +0 -0
  159. data/webapp/img/ico/download-cloud.png +0 -0
  160. data/webapp/img/ico/exclamation-button.png +0 -0
  161. data/webapp/img/ico/eye.png +0 -0
  162. data/webapp/img/ico/folder-export.png +0 -0
  163. data/webapp/img/ico/folder-tree.png +0 -0
  164. data/webapp/img/ico/folder.png +0 -0
  165. data/webapp/img/ico/funnel-small.png +0 -0
  166. data/webapp/img/ico/funnel.png +0 -0
  167. data/webapp/img/ico/gear.png +0 -0
  168. data/webapp/img/ico/globe-network.png +0 -0
  169. data/webapp/img/ico/globe.png +0 -0
  170. data/webapp/img/ico/hammer-screwdriver.png +0 -0
  171. data/webapp/img/ico/hand.png +0 -0
  172. data/webapp/img/ico/highlighter-text.png +0 -0
  173. data/webapp/img/ico/hourglass--exclamation.png +0 -0
  174. data/webapp/img/ico/hourglass.png +0 -0
  175. data/webapp/img/ico/inbox-document-text.png +0 -0
  176. data/webapp/img/ico/information-button.png +0 -0
  177. data/webapp/img/ico/information-small.png +0 -0
  178. data/webapp/img/ico/information-white.png +0 -0
  179. data/webapp/img/ico/information.png +0 -0
  180. data/webapp/img/ico/jar.png +0 -0
  181. data/webapp/img/ico/magnifier.png +0 -0
  182. data/webapp/img/ico/mail.png +0 -0
  183. data/webapp/img/ico/memory.png +0 -0
  184. data/webapp/img/ico/molecule.png +0 -0
  185. data/webapp/img/ico/network-cloud.png +0 -0
  186. data/webapp/img/ico/network-status-away.png +0 -0
  187. data/webapp/img/ico/network-status-busy.png +0 -0
  188. data/webapp/img/ico/network-status-offline.png +0 -0
  189. data/webapp/img/ico/network-status.png +0 -0
  190. data/webapp/img/ico/network.png +0 -0
  191. data/webapp/img/ico/node-design.png +0 -0
  192. data/webapp/img/ico/node-master.png +0 -0
  193. data/webapp/img/ico/node-select.png +0 -0
  194. data/webapp/img/ico/node-slave.png +0 -0
  195. data/webapp/img/ico/node.png +0 -0
  196. data/webapp/img/ico/pencil-small.png +0 -0
  197. data/webapp/img/ico/plus-button.png +0 -0
  198. data/webapp/img/ico/processor.png +0 -0
  199. data/webapp/img/ico/prohibition.png +0 -0
  200. data/webapp/img/ico/property.png +0 -0
  201. data/webapp/img/ico/question-small-white.png +0 -0
  202. data/webapp/img/ico/question-white.png +0 -0
  203. data/webapp/img/ico/question.png +0 -0
  204. data/webapp/img/ico/receipt-invoice.png +0 -0
  205. data/webapp/img/ico/receipt.png +0 -0
  206. data/webapp/img/ico/script-code.png +0 -0
  207. data/webapp/img/ico/server-cast.png +0 -0
  208. data/webapp/img/ico/server.png +0 -0
  209. data/webapp/img/ico/sitemap.png +0 -0
  210. data/webapp/img/ico/slash.png +0 -0
  211. data/webapp/img/ico/status-away.png +0 -0
  212. data/webapp/img/ico/status-busy.png +0 -0
  213. data/webapp/img/ico/status-offline.png +0 -0
  214. data/webapp/img/ico/status.png +0 -0
  215. data/webapp/img/ico/system-monitor--exclamation.png +0 -0
  216. data/webapp/img/ico/system-monitor.png +0 -0
  217. data/webapp/img/ico/table.png +0 -0
  218. data/webapp/img/ico/terminal.png +0 -0
  219. data/webapp/img/ico/tick-circle.png +0 -0
  220. data/webapp/img/ico/tick-red.png +0 -0
  221. data/webapp/img/ico/tick.png +0 -0
  222. data/webapp/img/ico/toggle-small-expand.png +0 -0
  223. data/webapp/img/ico/toggle-small.png +0 -0
  224. data/webapp/img/ico/toolbox.png +0 -0
  225. data/webapp/img/ico/ui-accordion.png +0 -0
  226. data/webapp/img/ico/ui-address-bar.png +0 -0
  227. data/webapp/img/ico/ui-check-box-uncheck.png +0 -0
  228. data/webapp/img/ico/ui-check-box.png +0 -0
  229. data/webapp/img/ico/ui-radio-button-uncheck.png +0 -0
  230. data/webapp/img/ico/ui-radio-button.png +0 -0
  231. data/webapp/img/ico/ui-text-field-select.png +0 -0
  232. data/webapp/img/ico/users.png +0 -0
  233. data/webapp/img/ico/wooden-box.png +0 -0
  234. data/webapp/img/ico/zone.png +0 -0
  235. data/webapp/img/loader-light.gif +0 -0
  236. data/webapp/img/loader.gif +0 -0
  237. data/webapp/img/lucene-ico.png +0 -0
  238. data/webapp/img/solr-ico.png +0 -0
  239. data/webapp/{admin/solr_small.png → img/solr.png} +0 -0
  240. data/webapp/img/tree.png +0 -0
  241. data/webapp/js/lib/ZeroClipboard.js +317 -0
  242. data/webapp/js/lib/chosen.js +953 -0
  243. data/webapp/{admin/get-properties.jsp → js/lib/console.js} +13 -10
  244. data/webapp/js/lib/d3.js +9342 -0
  245. data/webapp/js/lib/highlight.js +1 -0
  246. data/webapp/{admin/jquery-1.4.3.min.js → js/lib/jquery-1.7.2.min.js} +0 -0
  247. data/webapp/js/lib/jquery.blockUI.js +499 -0
  248. data/webapp/js/lib/jquery.cookie.js +47 -0
  249. data/webapp/js/lib/jquery.form.js +782 -0
  250. data/webapp/js/lib/jquery.jstree.js +3510 -0
  251. data/webapp/js/lib/jquery.sammy.js +1856 -0
  252. data/webapp/js/lib/jquery.sparkline.js +1271 -0
  253. data/webapp/js/lib/jquery.timeago.js +165 -0
  254. data/webapp/js/lib/linker.js +48 -0
  255. data/webapp/js/lib/order.js +189 -0
  256. data/webapp/js/main.js +57 -0
  257. data/webapp/js/require.js +11319 -0
  258. data/webapp/js/scripts/analysis.js +549 -0
  259. data/webapp/js/scripts/app.js +368 -0
  260. data/webapp/js/scripts/cloud.js +719 -0
  261. data/webapp/js/scripts/cores.js +540 -0
  262. data/webapp/js/scripts/dashboard.js +540 -0
  263. data/webapp/js/scripts/dataimport.js +567 -0
  264. data/webapp/js/scripts/file.js +56 -0
  265. data/webapp/js/scripts/index.js +344 -0
  266. data/webapp/js/scripts/java-properties.js +107 -0
  267. data/webapp/js/scripts/logging.js +519 -0
  268. data/webapp/js/scripts/ping.js +72 -0
  269. data/webapp/js/scripts/plugins.js +426 -0
  270. data/webapp/js/scripts/query.js +170 -0
  271. data/webapp/js/scripts/replication.js +557 -0
  272. data/webapp/js/scripts/schema-browser.js +1206 -0
  273. data/webapp/js/scripts/threads.js +159 -0
  274. data/webapp/tpl/analysis.html +83 -0
  275. data/webapp/tpl/cloud.html +54 -0
  276. data/webapp/tpl/cores.html +215 -0
  277. data/webapp/tpl/dashboard.html +164 -0
  278. data/webapp/tpl/dataimport.html +123 -0
  279. data/webapp/tpl/index.html +250 -0
  280. data/webapp/tpl/logging.html +23 -0
  281. data/webapp/tpl/plugins.html +39 -0
  282. data/webapp/tpl/query.html +318 -0
  283. data/webapp/tpl/replication.html +207 -0
  284. data/webapp/tpl/schema-browser.html +178 -0
  285. data/webapp/tpl/threads.html +56 -0
  286. metadata +307 -40
  287. data/lib/rjack-solr/solr-core-3.6.2.jar +0 -0
  288. data/lib/rjack-solr/solr-solrj-3.6.2.jar +0 -0
  289. data/webapp/admin/_info.jsp +0 -120
  290. data/webapp/admin/action.jsp +0 -94
  291. data/webapp/admin/analysis.jsp +0 -496
  292. data/webapp/admin/analysis.xsl +0 -179
  293. data/webapp/admin/dataimport.jsp +0 -53
  294. data/webapp/admin/debug.jsp +0 -103
  295. data/webapp/admin/distributiondump.jsp +0 -160
  296. data/webapp/admin/form.jsp +0 -152
  297. data/webapp/admin/get-file.jsp +0 -72
  298. data/webapp/admin/header.jsp +0 -44
  299. data/webapp/admin/index.jsp +0 -162
  300. data/webapp/admin/meta.xsl +0 -34
  301. data/webapp/admin/ping.jsp +0 -52
  302. data/webapp/admin/ping.xsl +0 -71
  303. data/webapp/admin/raw-schema.jsp +0 -38
  304. data/webapp/admin/registry.jsp +0 -107
  305. data/webapp/admin/registry.xsl +0 -321
  306. data/webapp/admin/replication/header.jsp +0 -89
  307. data/webapp/admin/replication/index.jsp +0 -378
  308. data/webapp/admin/schema.jsp +0 -690
  309. data/webapp/admin/solr-admin.css +0 -215
  310. data/webapp/admin/stats.jsp +0 -92
  311. data/webapp/admin/stats.xsl +0 -220
  312. data/webapp/admin/tabular.xsl +0 -141
  313. data/webapp/admin/threaddump.jsp +0 -110
  314. data/webapp/admin/threaddump.xsl +0 -103
  315. data/webapp/index.jsp +0 -49
@@ -1,89 +0,0 @@
1
- <%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
2
- <%--
3
- Licensed to the Apache Software Foundation (ASF) under one or more
4
- contributor license agreements. See the NOTICE file distributed with
5
- this work for additional information regarding copyright ownership.
6
- The ASF licenses this file to You under the Apache License, Version 2.0
7
- (the "License"); you may not use this file except in compliance with
8
- the License. You may obtain a copy of the License at
9
-
10
- http://www.apache.org/licenses/LICENSE-2.0
11
-
12
- Unless required by applicable law or agreed to in writing, software
13
- distributed under the License is distributed on an "AS IS" BASIS,
14
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- See the License for the specific language governing permissions and
16
- limitations under the License.
17
- --%>
18
- <!-- $Id: header.jsp 1151947 2011-07-28 18:07:54Z hossman $ -->
19
- <%@ page import="org.apache.solr.common.util.NamedList,
20
- org.apache.solr.common.util.SimpleOrderedMap,
21
- org.apache.solr.request.LocalSolrQueryRequest,
22
- org.apache.solr.response.SolrQueryResponse,
23
- org.apache.solr.request.SolrRequestHandler,
24
- java.util.Map"%>
25
- <%@ page import="org.apache.solr.handler.ReplicationHandler" %>
26
- <%
27
- request.setCharacterEncoding("UTF-8");
28
- %>
29
-
30
- <html>
31
- <head>
32
-
33
- <%@include file="../_info.jsp" %>
34
-
35
- <script>
36
- var host_name="<%= hostname %>"
37
- </script>
38
-
39
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
40
- <link rel="stylesheet" type="text/css" href="../solr-admin.css">
41
- <link rel="icon" href="../favicon.ico" type="image/ico" />
42
- <link rel="shortcut icon" href="../favicon.ico" type="image/ico" />
43
- <title>Solr replication admin page</title>
44
- <script type="text/javascript" src="../jquery-1.4.3.min.js"></script>
45
-
46
- <%!
47
- public NamedList executeCommand(String command, SolrCore core, SolrRequestHandler rh){
48
- NamedList namedlist = new SimpleOrderedMap();
49
- namedlist.add("command", command);
50
- LocalSolrQueryRequest solrqreq = new LocalSolrQueryRequest(core, namedlist);
51
- SolrQueryResponse rsp = new SolrQueryResponse();
52
- core.execute(rh, solrqreq, rsp);
53
- namedlist = rsp.getValues();
54
- return namedlist;
55
- }
56
- %>
57
-
58
- <%
59
- final Map<String,SolrRequestHandler> all = core.getRequestHandlers(ReplicationHandler.class);
60
- if(all.isEmpty()){
61
- response.sendError( 404, "No ReplicationHandler registered" );
62
- return;
63
- }
64
-
65
- // :HACK: we should be more deterministic if multiple instances
66
- final SolrRequestHandler rh = all.values().iterator().next();
67
-
68
- NamedList namedlist = executeCommand("details",core,rh);
69
- NamedList detailsMap = (NamedList)namedlist.get("details");
70
- %>
71
- </head>
72
-
73
- <body>
74
- <a href=".."><img border="0" align="right" height="78" width="142" src="../solr_small.png" alt="Solr"></a>
75
- <h1>Solr replication (<%= collectionName %>)
76
-
77
- <%
78
- if(detailsMap != null){
79
- if( "true".equals(detailsMap.get("isMaster")) && "true".equals(detailsMap.get("isSlave")))
80
- out.println(" Master & Slave");
81
- else if("true".equals(detailsMap.get("isMaster")))
82
- out.println(" Master");
83
- else if("true".equals(detailsMap.get("isSlave")))
84
- out.println(" Slave");
85
- }
86
- %></h1>
87
-
88
- <%= hostname %>:<%= port %><br/>
89
- cwd=<%= cwd %> SolrHome=<%= solrHome %>
@@ -1,378 +0,0 @@
1
- <%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8" %>
2
- <%--
3
- Licensed to the Apache Software Foundation (ASF) under one or more
4
- contributor license agreements. See the NOTICE file distributed with
5
- this work for additional information regarding copyright ownership.
6
- The ASF licenses this file to You under the Apache License, Version 2.0
7
- (the "License"); you may not use this file except in compliance with
8
- the License. You may obtain a copy of the License at
9
-
10
- http://www.apache.org/licenses/LICENSE-2.0
11
- Unless required by applicable law or agreed to in writing, software
12
- distributed under the License is distributed on an "AS IS" BASIS,
13
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- See the License for the specific language governing permissions and
15
- limitations under the License.
16
- --%>
17
- <%@ page import="java.util.Collection" %>
18
- <%@ page import="java.util.Date" %>
19
-
20
-
21
- <%-- do a verbatim include so we can use the local vars --%>
22
- <%@include file="header.jsp"%>
23
-
24
- <br clear="all" />
25
- (<a href="http://wiki.apache.org/solr/SolrReplication">What Is This Page?</a>)
26
- <br clear="all" />
27
- <table>
28
-
29
- <%
30
-
31
- final SolrCore solrcore = core;
32
-
33
- %>
34
- <%
35
- NamedList slave = null, master = null;
36
- if (detailsMap != null)
37
- if ("true".equals(detailsMap.get("isSlave")))
38
- if(detailsMap.get("slave") != null){
39
- slave = (NamedList)detailsMap.get("slave");%>
40
- <tr>
41
- <td>
42
- <strong>Master</strong>
43
- </td>
44
- <td>
45
- <%=slave.get("masterUrl")%>
46
- <%
47
- NamedList nl = (NamedList) slave.get("masterDetails");
48
- if(nl == null)
49
- out.print(" - <b>Unreachable</b>");
50
- %>
51
- </td>
52
- </tr>
53
- <%
54
- if (nl != null) {
55
- nl = (NamedList) nl.get("master");
56
- if(nl != null){
57
- %>
58
- <tr>
59
- <td>
60
- </td>
61
- <td>Latest Index Version:<%=nl.get("indexVersion")%>, Generation: <%=nl.get("generation")%>
62
- </td>
63
- </tr>
64
- <tr>
65
- <td></td>
66
- <td>Replicatable Index Version:<%=nl.get("replicatableIndexVersion")%>, Generation: <%=nl.get("replicatableGeneration")%>
67
- </td>
68
- </tr>
69
- <%
70
- }
71
- }%>
72
-
73
- <tr>
74
- <td>
75
- <strong>Poll Interval</strong>
76
- </td>
77
- <td>
78
- <%=slave.get("pollInterval")%>
79
- </td>
80
- </tr>
81
- <%}%>
82
-
83
- <tr>
84
- <td>
85
- <strong>Local Index</strong>
86
- </td>
87
- <td>
88
- <%
89
- if (detailsMap != null)
90
- out.println("Index Version: " + detailsMap.get("indexVersion") + ", Generation: " + detailsMap.get("generation"));
91
- %>
92
- </td>
93
- </tr>
94
-
95
- <tr>
96
- <td>
97
- </td>
98
- <td>
99
- <% if (null != core.getIndexDir()) {
100
- File dir = new File(core.getIndexDir());
101
- out.println("Location: " + dir.getCanonicalPath());
102
- }%>
103
- </td>
104
- </tr>
105
-
106
- <tr>
107
- <td></td>
108
- <td><% if (detailsMap != null)
109
- out.println("Size: " + detailsMap.get("indexSize"));
110
- %>
111
- </td>
112
- </tr>
113
-
114
- <%
115
- if (detailsMap != null)
116
- if ("true".equals(detailsMap.get("isMaster")))
117
- if(detailsMap.get("master") != null){
118
- master = (NamedList) detailsMap.get("master");
119
- %>
120
-
121
- <tr>
122
- <td></td>
123
- <td>
124
- <%out.println("Config Files To Replicate: " + master.get("confFiles"));%>
125
- </td>
126
- </tr>
127
-
128
- <tr>
129
- <td></td>
130
- <td>
131
- <%out.println("Trigger Replication On: " + master.get("replicateAfter")); %>
132
- </td>
133
- </tr>
134
- <%}%>
135
-
136
- <%
137
- if ("true".equals(detailsMap.get("isSlave")))
138
- if (slave != null) {%>
139
- <tr>
140
- <td>
141
- </td>
142
- <td>
143
- <%
144
- out.println("Times Replicated Since Startup: " + slave.get("timesIndexReplicated"));
145
- %>
146
- </td>
147
- </tr>
148
-
149
- <tr>
150
- <td>
151
- </td>
152
- <td>
153
- <%
154
- out.println("Previous Replication Done At: " + slave.get("indexReplicatedAt"));
155
- %>
156
- </td>
157
- </tr>
158
-
159
- <tr>
160
- <td>
161
- </td>
162
- <td>
163
- <%
164
- out.println("Config Files Replicated At: " + slave.get("confFilesReplicatedAt"));
165
- %>
166
- </td>
167
- </tr>
168
-
169
- <tr>
170
- <td>
171
- </td>
172
- <td>
173
- <%
174
- out.println("Config Files Replicated: " + slave.get("confFilesReplicated"));
175
- %>
176
- </td>
177
- </tr>
178
-
179
- <tr>
180
- <td>
181
- </td>
182
- <td>
183
- <%
184
- out.println("Times Config Files Replicated Since Startup: " + slave.get("timesConfigReplicated"));
185
- %>
186
- </td>
187
- </tr>
188
-
189
- <tr>
190
- <td>
191
- </td>
192
- <td>
193
- <%
194
- if (slave.get("nextExecutionAt") != null)
195
- if (slave.get("nextExecutionAt") != "")
196
- out.println("Next Replication Cycle At: " + slave.get("nextExecutionAt"));
197
- else if ("true".equals(slave.get("isPollingDisabled")))
198
- out.println("Next Replication Cycle At: Polling disabled.");
199
- else {
200
- NamedList nl1 = (NamedList) slave.get("masterDetails");
201
- if(nl1 != null){
202
- NamedList nl2 = (NamedList) nl1.get("master");
203
- if(nl2 != null)
204
- out.println("Next Replication Cycle At: After " + nl2.get("replicateAfter") + " on master.");
205
- }
206
- }
207
- %>
208
- </td>
209
- </tr>
210
-
211
- <%
212
- if ("true".equals(slave.get("isReplicating"))) {
213
- %>
214
- <tr>
215
- <td><strong>Current Replication Status</strong>
216
-
217
- <td>
218
- <%out.println("Start Time: " + slave.get("replicationStartTime"));%>
219
- </td>
220
- </tr>
221
-
222
- <tr>
223
- <td></td>
224
- <td>
225
- <%
226
- out.println("Files Downloaded: " + slave.get("numFilesDownloaded") + " / " + slave.get("numFilesToDownload"));%>
227
- </td>
228
- </tr>
229
-
230
- <tr>
231
- <td></td>
232
- <td>
233
- <%
234
- out.println("Downloaded: " + slave.get("bytesDownloaded") + " / " + slave.get("bytesToDownload") + " [" + slave.get("totalPercent") + "%]");%>
235
- </td>
236
- </tr>
237
-
238
- <tr>
239
- <td></td>
240
- <td>
241
- <%
242
- out.println("Downloading File: " + slave.get("currentFile") + ", Downloaded: " + slave.get("currentFileSizeDownloaded") + " / " + slave.get("currentFileSize") + " [" + slave.get("currentFileSizePercent") + "%]");%>
243
- </td>
244
- </tr>
245
-
246
- <tr>
247
- <td></td>
248
- <td>
249
- <%
250
- out.println("Time Elapsed: " + slave.get("timeElapsed") + ", Estimated Time Remaining: " + slave.get("timeRemaining") + ", Speed: " + slave.get("downloadSpeed") + "/s");%>
251
- </td>
252
- </tr>
253
- <%}%>
254
-
255
- <tr>
256
- <td><strong>Controls</strong>
257
- </td>
258
- <td><%
259
- String pollVal = request.getParameter("poll");
260
- if (pollVal != null)
261
- if (pollVal.equals("disable"))
262
- executeCommand("disablepoll", core, rh);
263
- else if (pollVal.equals("enable"))
264
- executeCommand("enablepoll", core, rh);
265
- if(slave != null)
266
- if ("false".equals(slave.get("isPollingDisabled"))) {
267
- %>
268
-
269
- <form name=polling method="POST" action="./index.jsp" accept-charset="UTF-8">
270
- <input name="poll" type="hidden" value="disable">
271
- <input class="stdbutton" type="submit" value="Disable Poll">
272
- </form>
273
-
274
- <%}%>
275
- <%
276
- if(slave != null)
277
- if ("true".equals(slave.get("isPollingDisabled"))) {
278
- %>
279
-
280
- <form name=polling method="POST" action="./index.jsp" accept-charset="UTF-8">
281
- <input name="poll" type="hidden" value="enable">
282
- <input class="stdbutton" type="submit" value="Enable Poll">
283
- </form>
284
- <%
285
- }
286
- %>
287
-
288
- </td>
289
- </tr>
290
-
291
- <tr>
292
- <td></td>
293
- <td>
294
- <form name=replicate method="POST" action="./index.jsp" accept-charset="UTF-8">
295
- <input name="replicate" type="hidden" value="now">
296
- <input name="replicateButton" class="stdbutton" type="submit" value="Replicate Now">
297
- </form>
298
- <%
299
- if(slave != null)
300
- if ("true".equals(slave.get("isReplicating"))) {
301
- %>
302
- <script type="text/javascript">
303
- document["replicate"].replicateButton.disabled = true;
304
- document["replicate"].replicateButton.className = 'stdbuttondis';
305
- </script>
306
- <form name=abort method="POST" action="./index.jsp" accept-charset="UTF-8">
307
- <input name="abort" type="hidden" value="stop">
308
- <input name="abortButton" class="stdbutton" type="submit" value="Abort">
309
- </form>
310
-
311
- <%} else {%>
312
- <script type="text/javascript">
313
- document["replicate"].replicateButton.disabled = false;
314
- document["replicate"].replicateButton.className = 'stdbutton';
315
- </script>
316
- <%
317
- }
318
- String replicateParam = request.getParameter("replicate");
319
- String abortParam = request.getParameter("abort");
320
- if (replicateParam != null)
321
- if (replicateParam.equals("now")) {
322
- executeCommand("fetchindex", solrcore, rh);
323
- }
324
- if (abortParam != null)
325
- if (abortParam.equals("stop")) {
326
- executeCommand("abortfetch", solrcore, rh);
327
- }
328
- %>
329
- </td>
330
-
331
- </tr>
332
-
333
- <%}%>
334
-
335
- <%-- List the cores (that arent this one) so we can switch --%>
336
- <% org.apache.solr.core.CoreContainer cores = (org.apache.solr.core.CoreContainer) request.getAttribute("org.apache.solr.CoreContainer");
337
- if (cores != null) {
338
- Collection<String> names = cores.getCoreNames();
339
- if (names.size() > 1) {%>
340
- <tr>
341
- <td><strong>Cores:</strong><br></td>
342
- <td><%
343
- for (String name : names) {
344
- %>[<a href="../../../<%=name%>/admin/index.jsp"><%=name%>
345
- </a>]<%
346
- }%></td>
347
- </tr>
348
- <%
349
- }
350
- }%>
351
-
352
-
353
- </table>
354
- <P>
355
-
356
- <p>
357
-
358
- <table>
359
- <tr>
360
- <td>
361
- </td>
362
- <td>
363
- Current Time: <%= new Date() %>
364
- </td>
365
- </tr>
366
- <tr>
367
- <td>
368
- </td>
369
- <td>
370
- Server Start At: <%= new Date(core.getStartTime()) %>
371
- </td>
372
- </tr>
373
- </table>
374
-
375
- <br>
376
- <a href="..">Return to Admin Page</a>
377
- </body>
378
- </html>