sunspot_solr 2.2.0 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (410) hide show
  1. checksums.yaml +7 -0
  2. data/bin/sunspot-solr +0 -4
  3. data/lib/sunspot/solr/installer.rb +1 -1
  4. data/lib/sunspot/solr/installer/config_installer.rb +55 -21
  5. data/lib/sunspot/solr/java.rb +1 -1
  6. data/lib/sunspot/solr/server.rb +21 -21
  7. data/solr/.gitignore +2 -0
  8. data/solr/README.txt +157 -18
  9. data/solr/bin/init.d/solr +78 -0
  10. data/solr/bin/install_solr_service.sh +270 -0
  11. data/solr/bin/oom_solr.sh +30 -0
  12. data/solr/bin/post +218 -0
  13. data/solr/bin/solr +1531 -0
  14. data/solr/bin/solr.cmd +1384 -0
  15. data/solr/bin/solr.in.cmd +89 -0
  16. data/solr/bin/solr.in.sh +103 -0
  17. data/solr/server/README.txt +113 -0
  18. data/solr/{contexts/solr.xml → server/contexts/solr-jetty-context.xml} +1 -0
  19. data/solr/server/etc/jetty-https-ssl.xml +159 -0
  20. data/solr/{etc → server/etc}/jetty.xml +0 -0
  21. data/solr/{etc → server/etc}/webdefault.xml +1 -1
  22. data/solr/server/lib/ext/jcl-over-slf4j-1.7.7.jar +0 -0
  23. data/solr/server/lib/ext/jul-to-slf4j-1.7.7.jar +0 -0
  24. data/solr/server/lib/ext/log4j-1.2.17.jar +0 -0
  25. data/solr/server/lib/ext/slf4j-api-1.7.7.jar +0 -0
  26. data/solr/server/lib/ext/slf4j-log4j12-1.7.7.jar +0 -0
  27. data/solr/{lib/jetty-continuation-8.1.8.v20121106.jar → server/lib/jetty-continuation-8.1.10.v20130312.jar} +0 -0
  28. data/solr/{lib/jetty-deploy-8.1.8.v20121106.jar → server/lib/jetty-deploy-8.1.10.v20130312.jar} +0 -0
  29. data/solr/server/lib/jetty-http-8.1.10.v20130312.jar +0 -0
  30. data/solr/{lib/jetty-io-8.1.8.v20121106.jar → server/lib/jetty-io-8.1.10.v20130312.jar} +0 -0
  31. data/solr/{lib/jetty-jmx-8.1.8.v20121106.jar → server/lib/jetty-jmx-8.1.10.v20130312.jar} +0 -0
  32. data/solr/{lib/jetty-security-8.1.8.v20121106.jar → server/lib/jetty-security-8.1.10.v20130312.jar} +0 -0
  33. data/solr/server/lib/jetty-server-8.1.10.v20130312.jar +0 -0
  34. data/solr/server/lib/jetty-servlet-8.1.10.v20130312.jar +0 -0
  35. data/solr/{lib/jetty-util-8.1.8.v20121106.jar → server/lib/jetty-util-8.1.10.v20130312.jar} +0 -0
  36. data/solr/{lib/jetty-webapp-8.1.8.v20121106.jar → server/lib/jetty-webapp-8.1.10.v20130312.jar} +0 -0
  37. data/solr/server/lib/jetty-xml-8.1.10.v20130312.jar +0 -0
  38. data/solr/{lib → server/lib}/servlet-api-3.0.jar +0 -0
  39. data/solr/server/resources/log4j.properties +24 -0
  40. data/solr/server/solr-webapp/webapp/.gitignore +1 -0
  41. data/solr/server/solr-webapp/webapp/WEB-INF/lib/antlr-runtime-3.5.jar +0 -0
  42. data/solr/server/solr-webapp/webapp/WEB-INF/lib/asm-4.1.jar +0 -0
  43. data/solr/server/solr-webapp/webapp/WEB-INF/lib/asm-commons-4.1.jar +0 -0
  44. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-cli-1.2.jar +0 -0
  45. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-codec-1.10.jar +0 -0
  46. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-collections-3.2.1.jar +0 -0
  47. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-configuration-1.6.jar +0 -0
  48. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-fileupload-1.2.1.jar +0 -0
  49. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-io-2.4.jar +0 -0
  50. data/solr/server/solr-webapp/webapp/WEB-INF/lib/commons-lang-2.6.jar +0 -0
  51. data/solr/server/solr-webapp/webapp/WEB-INF/lib/concurrentlinkedhashmap-lru-1.2.jar +0 -0
  52. data/solr/server/solr-webapp/webapp/WEB-INF/lib/dom4j-1.6.1.jar +0 -0
  53. data/solr/server/solr-webapp/webapp/WEB-INF/lib/guava-14.0.1.jar +0 -0
  54. data/solr/server/solr-webapp/webapp/WEB-INF/lib/hadoop-annotations-2.3.0.jar +0 -0
  55. data/solr/server/solr-webapp/webapp/WEB-INF/lib/hadoop-auth-2.3.0.jar +0 -0
  56. data/solr/server/solr-webapp/webapp/WEB-INF/lib/hadoop-common-2.3.0.jar +0 -0
  57. data/solr/server/solr-webapp/webapp/WEB-INF/lib/hadoop-hdfs-2.3.0.jar +0 -0
  58. data/solr/server/solr-webapp/webapp/WEB-INF/lib/hppc-0.5.2.jar +0 -0
  59. data/solr/server/solr-webapp/webapp/WEB-INF/lib/httpclient-4.3.1.jar +0 -0
  60. data/solr/server/solr-webapp/webapp/WEB-INF/lib/httpcore-4.3.jar +0 -0
  61. data/solr/server/solr-webapp/webapp/WEB-INF/lib/httpmime-4.3.1.jar +0 -0
  62. data/solr/server/solr-webapp/webapp/WEB-INF/lib/joda-time-2.2.jar +0 -0
  63. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-analyzers-common-5.0.0.jar +0 -0
  64. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-analyzers-kuromoji-5.0.0.jar +0 -0
  65. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-analyzers-phonetic-5.0.0.jar +0 -0
  66. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-backward-codecs-5.0.0.jar +0 -0
  67. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-codecs-5.0.0.jar +0 -0
  68. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-core-5.0.0.jar +0 -0
  69. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-expressions-5.0.0.jar +0 -0
  70. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-grouping-5.0.0.jar +0 -0
  71. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-highlighter-5.0.0.jar +0 -0
  72. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-join-5.0.0.jar +0 -0
  73. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-memory-5.0.0.jar +0 -0
  74. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-misc-5.0.0.jar +0 -0
  75. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-queries-5.0.0.jar +0 -0
  76. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-queryparser-5.0.0.jar +0 -0
  77. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-spatial-5.0.0.jar +0 -0
  78. data/solr/server/solr-webapp/webapp/WEB-INF/lib/lucene-suggest-5.0.0.jar +0 -0
  79. data/solr/server/solr-webapp/webapp/WEB-INF/lib/noggit-0.6.jar +0 -0
  80. data/solr/server/solr-webapp/webapp/WEB-INF/lib/org.restlet-2.1.1.jar +0 -0
  81. data/solr/server/solr-webapp/webapp/WEB-INF/lib/org.restlet.ext.servlet-2.1.1.jar +0 -0
  82. data/solr/server/solr-webapp/webapp/WEB-INF/lib/protobuf-java-2.5.0.jar +0 -0
  83. data/solr/server/solr-webapp/webapp/WEB-INF/lib/solr-core-5.0.0.jar +0 -0
  84. data/solr/server/solr-webapp/webapp/WEB-INF/lib/solr-solrj-5.0.0.jar +0 -0
  85. data/solr/server/solr-webapp/webapp/WEB-INF/lib/spatial4j-0.4.1.jar +0 -0
  86. data/solr/server/solr-webapp/webapp/WEB-INF/lib/stax2-api-3.1.4.jar +0 -0
  87. data/solr/server/solr-webapp/webapp/WEB-INF/lib/woodstox-core-asl-4.4.1.jar +0 -0
  88. data/solr/server/solr-webapp/webapp/WEB-INF/lib/zookeeper-3.4.6.jar +0 -0
  89. data/solr/server/solr-webapp/webapp/WEB-INF/web.xml +181 -0
  90. data/solr/server/solr-webapp/webapp/WEB-INF/weblogic.xml +28 -0
  91. data/solr/server/solr-webapp/webapp/admin.html +163 -0
  92. data/solr/server/solr-webapp/webapp/css/chosen.css +421 -0
  93. data/solr/server/solr-webapp/webapp/css/styles/analysis.css +311 -0
  94. data/solr/server/solr-webapp/webapp/css/styles/cloud.css +410 -0
  95. data/solr/server/solr-webapp/webapp/css/styles/common.css +701 -0
  96. data/solr/server/solr-webapp/webapp/css/styles/cores.css +244 -0
  97. data/solr/server/solr-webapp/webapp/css/styles/dashboard.css +155 -0
  98. data/solr/server/solr-webapp/webapp/css/styles/dataimport.css +403 -0
  99. data/solr/server/solr-webapp/webapp/css/styles/documents.css +197 -0
  100. data/solr/server/solr-webapp/webapp/css/styles/files.css +54 -0
  101. data/solr/server/solr-webapp/webapp/css/styles/index.css +207 -0
  102. data/solr/server/solr-webapp/webapp/css/styles/java-properties.css +52 -0
  103. data/solr/server/solr-webapp/webapp/css/styles/logging.css +391 -0
  104. data/solr/server/solr-webapp/webapp/css/styles/menu.css +328 -0
  105. data/solr/server/solr-webapp/webapp/css/styles/plugins.css +195 -0
  106. data/solr/server/solr-webapp/webapp/css/styles/query.css +173 -0
  107. data/solr/server/solr-webapp/webapp/css/styles/replication.css +515 -0
  108. data/solr/server/solr-webapp/webapp/css/styles/schema-browser.css +578 -0
  109. data/solr/server/solr-webapp/webapp/css/styles/threads.css +172 -0
  110. data/solr/server/solr-webapp/webapp/favicon.ico +0 -0
  111. data/solr/server/solr-webapp/webapp/img/ZeroClipboard.swf +0 -0
  112. data/solr/server/solr-webapp/webapp/img/chosen-sprite.png +0 -0
  113. data/solr/server/solr-webapp/webapp/img/div.gif +0 -0
  114. data/solr/server/solr-webapp/webapp/img/favicon.ico +0 -0
  115. data/solr/server/solr-webapp/webapp/img/filetypes/7z.png +0 -0
  116. data/solr/server/solr-webapp/webapp/img/filetypes/README +27 -0
  117. data/solr/server/solr-webapp/webapp/img/filetypes/ai.png +0 -0
  118. data/solr/server/solr-webapp/webapp/img/filetypes/aiff.png +0 -0
  119. data/solr/server/solr-webapp/webapp/img/filetypes/asc.png +0 -0
  120. data/solr/server/solr-webapp/webapp/img/filetypes/audio.png +0 -0
  121. data/solr/server/solr-webapp/webapp/img/filetypes/bin.png +0 -0
  122. data/solr/server/solr-webapp/webapp/img/filetypes/bz2.png +0 -0
  123. data/solr/server/solr-webapp/webapp/img/filetypes/c.png +0 -0
  124. data/solr/server/solr-webapp/webapp/img/filetypes/cfc.png +0 -0
  125. data/solr/server/solr-webapp/webapp/img/filetypes/cfm.png +0 -0
  126. data/solr/server/solr-webapp/webapp/img/filetypes/chm.png +0 -0
  127. data/solr/server/solr-webapp/webapp/img/filetypes/class.png +0 -0
  128. data/solr/server/solr-webapp/webapp/img/filetypes/conf.png +0 -0
  129. data/solr/server/solr-webapp/webapp/img/filetypes/cpp.png +0 -0
  130. data/solr/server/solr-webapp/webapp/img/filetypes/cs.png +0 -0
  131. data/solr/server/solr-webapp/webapp/img/filetypes/css.png +0 -0
  132. data/solr/server/solr-webapp/webapp/img/filetypes/csv.png +0 -0
  133. data/solr/server/solr-webapp/webapp/img/filetypes/deb.png +0 -0
  134. data/solr/server/solr-webapp/webapp/img/filetypes/divx.png +0 -0
  135. data/solr/server/solr-webapp/webapp/img/filetypes/doc.png +0 -0
  136. data/solr/server/solr-webapp/webapp/img/filetypes/dot.png +0 -0
  137. data/solr/server/solr-webapp/webapp/img/filetypes/eml.png +0 -0
  138. data/solr/server/solr-webapp/webapp/img/filetypes/enc.png +0 -0
  139. data/solr/server/solr-webapp/webapp/img/filetypes/file.png +0 -0
  140. data/solr/server/solr-webapp/webapp/img/filetypes/gif.png +0 -0
  141. data/solr/server/solr-webapp/webapp/img/filetypes/gz.png +0 -0
  142. data/solr/server/solr-webapp/webapp/img/filetypes/hlp.png +0 -0
  143. data/solr/server/solr-webapp/webapp/img/filetypes/htm.png +0 -0
  144. data/solr/server/solr-webapp/webapp/img/filetypes/html.png +0 -0
  145. data/solr/server/solr-webapp/webapp/img/filetypes/image.png +0 -0
  146. data/solr/server/solr-webapp/webapp/img/filetypes/iso.png +0 -0
  147. data/solr/server/solr-webapp/webapp/img/filetypes/jar.png +0 -0
  148. data/solr/server/solr-webapp/webapp/img/filetypes/java.png +0 -0
  149. data/solr/server/solr-webapp/webapp/img/filetypes/jpeg.png +0 -0
  150. data/solr/server/solr-webapp/webapp/img/filetypes/jpg.png +0 -0
  151. data/solr/server/solr-webapp/webapp/img/filetypes/js.png +0 -0
  152. data/solr/server/solr-webapp/webapp/img/filetypes/lua.png +0 -0
  153. data/solr/server/solr-webapp/webapp/img/filetypes/m.png +0 -0
  154. data/solr/server/solr-webapp/webapp/img/filetypes/mm.png +0 -0
  155. data/solr/server/solr-webapp/webapp/img/filetypes/mov.png +0 -0
  156. data/solr/server/solr-webapp/webapp/img/filetypes/mp3.png +0 -0
  157. data/solr/server/solr-webapp/webapp/img/filetypes/mpg.png +0 -0
  158. data/solr/server/solr-webapp/webapp/img/filetypes/odc.png +0 -0
  159. data/solr/server/solr-webapp/webapp/img/filetypes/odf.png +0 -0
  160. data/solr/server/solr-webapp/webapp/img/filetypes/odg.png +0 -0
  161. data/solr/server/solr-webapp/webapp/img/filetypes/odi.png +0 -0
  162. data/solr/server/solr-webapp/webapp/img/filetypes/odp.png +0 -0
  163. data/solr/server/solr-webapp/webapp/img/filetypes/ods.png +0 -0
  164. data/solr/server/solr-webapp/webapp/img/filetypes/odt.png +0 -0
  165. data/solr/server/solr-webapp/webapp/img/filetypes/ogg.png +0 -0
  166. data/solr/server/solr-webapp/webapp/img/filetypes/pdf.png +0 -0
  167. data/solr/server/solr-webapp/webapp/img/filetypes/pgp.png +0 -0
  168. data/solr/server/solr-webapp/webapp/img/filetypes/php.png +0 -0
  169. data/solr/server/solr-webapp/webapp/img/filetypes/pl.png +0 -0
  170. data/solr/server/solr-webapp/webapp/img/filetypes/png.png +0 -0
  171. data/solr/server/solr-webapp/webapp/img/filetypes/ppt.png +0 -0
  172. data/solr/server/solr-webapp/webapp/img/filetypes/ps.png +0 -0
  173. data/solr/server/solr-webapp/webapp/img/filetypes/py.png +0 -0
  174. data/solr/server/solr-webapp/webapp/img/filetypes/ram.png +0 -0
  175. data/solr/server/solr-webapp/webapp/img/filetypes/rar.png +0 -0
  176. data/solr/server/solr-webapp/webapp/img/filetypes/rb.png +0 -0
  177. data/solr/server/solr-webapp/webapp/img/filetypes/rm.png +0 -0
  178. data/solr/server/solr-webapp/webapp/img/filetypes/rpm.png +0 -0
  179. data/solr/server/solr-webapp/webapp/img/filetypes/rtf.png +0 -0
  180. data/solr/server/solr-webapp/webapp/img/filetypes/sig.png +0 -0
  181. data/solr/server/solr-webapp/webapp/img/filetypes/sql.png +0 -0
  182. data/solr/server/solr-webapp/webapp/img/filetypes/swf.png +0 -0
  183. data/solr/server/solr-webapp/webapp/img/filetypes/sxc.png +0 -0
  184. data/solr/server/solr-webapp/webapp/img/filetypes/sxd.png +0 -0
  185. data/solr/server/solr-webapp/webapp/img/filetypes/sxi.png +0 -0
  186. data/solr/server/solr-webapp/webapp/img/filetypes/sxw.png +0 -0
  187. data/solr/server/solr-webapp/webapp/img/filetypes/tar.png +0 -0
  188. data/solr/server/solr-webapp/webapp/img/filetypes/tex.png +0 -0
  189. data/solr/server/solr-webapp/webapp/img/filetypes/tgz.png +0 -0
  190. data/solr/server/solr-webapp/webapp/img/filetypes/txt.png +0 -0
  191. data/solr/server/solr-webapp/webapp/img/filetypes/vcf.png +0 -0
  192. data/solr/server/solr-webapp/webapp/img/filetypes/video.png +0 -0
  193. data/solr/server/solr-webapp/webapp/img/filetypes/vsd.png +0 -0
  194. data/solr/server/solr-webapp/webapp/img/filetypes/wav.png +0 -0
  195. data/solr/server/solr-webapp/webapp/img/filetypes/wma.png +0 -0
  196. data/solr/server/solr-webapp/webapp/img/filetypes/wmv.png +0 -0
  197. data/solr/server/solr-webapp/webapp/img/filetypes/xls.png +0 -0
  198. data/solr/server/solr-webapp/webapp/img/filetypes/xml.png +0 -0
  199. data/solr/server/solr-webapp/webapp/img/filetypes/xpi.png +0 -0
  200. data/solr/server/solr-webapp/webapp/img/filetypes/xvid.png +0 -0
  201. data/solr/server/solr-webapp/webapp/img/filetypes/zip.png +0 -0
  202. data/solr/server/solr-webapp/webapp/img/ico/arrow-000-small.png +0 -0
  203. data/solr/server/solr-webapp/webapp/img/ico/arrow-circle.png +0 -0
  204. data/solr/server/solr-webapp/webapp/img/ico/arrow-switch.png +0 -0
  205. data/solr/server/solr-webapp/webapp/img/ico/asterisk.png +0 -0
  206. data/solr/server/solr-webapp/webapp/img/ico/battery.png +0 -0
  207. data/solr/server/solr-webapp/webapp/img/ico/block-small.png +0 -0
  208. data/solr/server/solr-webapp/webapp/img/ico/block.png +0 -0
  209. data/solr/server/solr-webapp/webapp/img/ico/book-open-text.png +0 -0
  210. data/solr/server/solr-webapp/webapp/img/ico/box.png +0 -0
  211. data/solr/server/solr-webapp/webapp/img/ico/bug.png +0 -0
  212. data/solr/server/solr-webapp/webapp/img/ico/chart.png +0 -0
  213. data/solr/server/solr-webapp/webapp/img/ico/chevron-small-expand.png +0 -0
  214. data/solr/server/solr-webapp/webapp/img/ico/chevron-small.png +0 -0
  215. data/solr/server/solr-webapp/webapp/img/ico/clipboard-list.png +0 -0
  216. data/solr/server/solr-webapp/webapp/img/ico/clipboard-paste-document-text.png +0 -0
  217. data/solr/server/solr-webapp/webapp/img/ico/clipboard-paste.png +0 -0
  218. data/solr/server/solr-webapp/webapp/img/ico/clock-select-remain.png +0 -0
  219. data/solr/server/solr-webapp/webapp/img/ico/clock-select.png +0 -0
  220. data/solr/server/solr-webapp/webapp/img/ico/construction.png +0 -0
  221. data/solr/server/solr-webapp/webapp/img/ico/cross-0.png +0 -0
  222. data/solr/server/solr-webapp/webapp/img/ico/cross-1.png +0 -0
  223. data/solr/server/solr-webapp/webapp/img/ico/cross-button.png +0 -0
  224. data/solr/server/solr-webapp/webapp/img/ico/cross.png +0 -0
  225. data/solr/server/solr-webapp/webapp/img/ico/dashboard.png +0 -0
  226. data/solr/server/solr-webapp/webapp/img/ico/database--plus.png +0 -0
  227. data/solr/server/solr-webapp/webapp/img/ico/database.png +0 -0
  228. data/solr/server/solr-webapp/webapp/img/ico/databases.png +0 -0
  229. data/solr/server/solr-webapp/webapp/img/ico/disk-black.png +0 -0
  230. data/solr/server/solr-webapp/webapp/img/ico/document-convert.png +0 -0
  231. data/solr/server/solr-webapp/webapp/img/ico/document-import.png +0 -0
  232. data/solr/server/solr-webapp/webapp/img/ico/document-list.png +0 -0
  233. data/solr/server/solr-webapp/webapp/img/ico/document-text.png +0 -0
  234. data/solr/server/solr-webapp/webapp/img/ico/documents-stack.png +0 -0
  235. data/solr/server/solr-webapp/webapp/img/ico/download-cloud.png +0 -0
  236. data/solr/server/solr-webapp/webapp/img/ico/drive-upload.png +0 -0
  237. data/solr/server/solr-webapp/webapp/img/ico/exclamation-button.png +0 -0
  238. data/solr/server/solr-webapp/webapp/img/ico/eye.png +0 -0
  239. data/solr/server/solr-webapp/webapp/img/ico/folder-export.png +0 -0
  240. data/solr/server/solr-webapp/webapp/img/ico/folder-tree.png +0 -0
  241. data/solr/server/solr-webapp/webapp/img/ico/folder.png +0 -0
  242. data/solr/server/solr-webapp/webapp/img/ico/funnel-small.png +0 -0
  243. data/solr/server/solr-webapp/webapp/img/ico/funnel.png +0 -0
  244. data/solr/server/solr-webapp/webapp/img/ico/gear.png +0 -0
  245. data/solr/server/solr-webapp/webapp/img/ico/globe-network.png +0 -0
  246. data/solr/server/solr-webapp/webapp/img/ico/globe.png +0 -0
  247. data/solr/server/solr-webapp/webapp/img/ico/hammer-screwdriver.png +0 -0
  248. data/solr/server/solr-webapp/webapp/img/ico/hammer.png +0 -0
  249. data/solr/server/solr-webapp/webapp/img/ico/hand.png +0 -0
  250. data/solr/server/solr-webapp/webapp/img/ico/highlighter-text.png +0 -0
  251. data/solr/server/solr-webapp/webapp/img/ico/home.png +0 -0
  252. data/solr/server/solr-webapp/webapp/img/ico/hourglass--exclamation.png +0 -0
  253. data/solr/server/solr-webapp/webapp/img/ico/hourglass.png +0 -0
  254. data/solr/server/solr-webapp/webapp/img/ico/inbox-document-text.png +0 -0
  255. data/solr/server/solr-webapp/webapp/img/ico/information-button.png +0 -0
  256. data/solr/server/solr-webapp/webapp/img/ico/information-small.png +0 -0
  257. data/solr/server/solr-webapp/webapp/img/ico/information-white.png +0 -0
  258. data/solr/server/solr-webapp/webapp/img/ico/information.png +0 -0
  259. data/solr/server/solr-webapp/webapp/img/ico/jar.png +0 -0
  260. data/solr/server/solr-webapp/webapp/img/ico/magnifier.png +0 -0
  261. data/solr/server/solr-webapp/webapp/img/ico/mail.png +0 -0
  262. data/solr/server/solr-webapp/webapp/img/ico/memory.png +0 -0
  263. data/solr/server/solr-webapp/webapp/img/ico/minus-button.png +0 -0
  264. data/solr/server/solr-webapp/webapp/img/ico/molecule.png +0 -0
  265. data/solr/server/solr-webapp/webapp/img/ico/network-cloud.png +0 -0
  266. data/solr/server/solr-webapp/webapp/img/ico/network-status-away.png +0 -0
  267. data/solr/server/solr-webapp/webapp/img/ico/network-status-busy.png +0 -0
  268. data/solr/server/solr-webapp/webapp/img/ico/network-status-offline.png +0 -0
  269. data/solr/server/solr-webapp/webapp/img/ico/network-status.png +0 -0
  270. data/solr/server/solr-webapp/webapp/img/ico/network.png +0 -0
  271. data/solr/server/solr-webapp/webapp/img/ico/node-design.png +0 -0
  272. data/solr/server/solr-webapp/webapp/img/ico/node-master.png +0 -0
  273. data/solr/server/solr-webapp/webapp/img/ico/node-select.png +0 -0
  274. data/solr/server/solr-webapp/webapp/img/ico/node-slave.png +0 -0
  275. data/solr/server/solr-webapp/webapp/img/ico/node.png +0 -0
  276. data/solr/server/solr-webapp/webapp/img/ico/pencil-small.png +0 -0
  277. data/solr/server/solr-webapp/webapp/img/ico/pencil.png +0 -0
  278. data/solr/server/solr-webapp/webapp/img/ico/plus-button.png +0 -0
  279. data/solr/server/solr-webapp/webapp/img/ico/processor.png +0 -0
  280. data/solr/server/solr-webapp/webapp/img/ico/prohibition.png +0 -0
  281. data/solr/server/solr-webapp/webapp/img/ico/property.png +0 -0
  282. data/solr/server/solr-webapp/webapp/img/ico/question-small-white.png +0 -0
  283. data/solr/server/solr-webapp/webapp/img/ico/question-white.png +0 -0
  284. data/solr/server/solr-webapp/webapp/img/ico/question.png +0 -0
  285. data/solr/server/solr-webapp/webapp/img/ico/receipt-invoice.png +0 -0
  286. data/solr/server/solr-webapp/webapp/img/ico/receipt.png +0 -0
  287. data/solr/server/solr-webapp/webapp/img/ico/script-code.png +0 -0
  288. data/solr/server/solr-webapp/webapp/img/ico/server-cast.png +0 -0
  289. data/solr/server/solr-webapp/webapp/img/ico/server.png +0 -0
  290. data/solr/server/solr-webapp/webapp/img/ico/sitemap.png +0 -0
  291. data/solr/server/solr-webapp/webapp/img/ico/slash.png +0 -0
  292. data/solr/server/solr-webapp/webapp/img/ico/status-away.png +0 -0
  293. data/solr/server/solr-webapp/webapp/img/ico/status-busy.png +0 -0
  294. data/solr/server/solr-webapp/webapp/img/ico/status-offline.png +0 -0
  295. data/solr/server/solr-webapp/webapp/img/ico/status.png +0 -0
  296. data/solr/server/solr-webapp/webapp/img/ico/system-monitor--exclamation.png +0 -0
  297. data/solr/server/solr-webapp/webapp/img/ico/system-monitor.png +0 -0
  298. data/solr/server/solr-webapp/webapp/img/ico/table.png +0 -0
  299. data/solr/server/solr-webapp/webapp/img/ico/terminal.png +0 -0
  300. data/solr/server/solr-webapp/webapp/img/ico/tick-circle.png +0 -0
  301. data/solr/server/solr-webapp/webapp/img/ico/tick-red.png +0 -0
  302. data/solr/server/solr-webapp/webapp/img/ico/tick.png +0 -0
  303. data/solr/server/solr-webapp/webapp/img/ico/toggle-small-expand.png +0 -0
  304. data/solr/server/solr-webapp/webapp/img/ico/toggle-small.png +0 -0
  305. data/solr/server/solr-webapp/webapp/img/ico/toolbox.png +0 -0
  306. data/solr/server/solr-webapp/webapp/img/ico/ui-accordion.png +0 -0
  307. data/solr/server/solr-webapp/webapp/img/ico/ui-address-bar.png +0 -0
  308. data/solr/server/solr-webapp/webapp/img/ico/ui-check-box-uncheck.png +0 -0
  309. data/solr/server/solr-webapp/webapp/img/ico/ui-check-box.png +0 -0
  310. data/solr/server/solr-webapp/webapp/img/ico/ui-radio-button-uncheck.png +0 -0
  311. data/solr/server/solr-webapp/webapp/img/ico/ui-radio-button.png +0 -0
  312. data/solr/server/solr-webapp/webapp/img/ico/ui-text-field-select.png +0 -0
  313. data/solr/server/solr-webapp/webapp/img/ico/users.png +0 -0
  314. data/solr/server/solr-webapp/webapp/img/ico/wooden-box.png +0 -0
  315. data/solr/server/solr-webapp/webapp/img/ico/zone.png +0 -0
  316. data/solr/server/solr-webapp/webapp/img/loader-light.gif +0 -0
  317. data/solr/server/solr-webapp/webapp/img/loader.gif +0 -0
  318. data/solr/server/solr-webapp/webapp/img/lucene-ico.png +0 -0
  319. data/solr/server/solr-webapp/webapp/img/solr-ico.png +0 -0
  320. data/solr/server/solr-webapp/webapp/img/solr.svg +39 -0
  321. data/solr/server/solr-webapp/webapp/img/tree.png +0 -0
  322. data/solr/server/solr-webapp/webapp/js/lib/ZeroClipboard.js +342 -0
  323. data/solr/server/solr-webapp/webapp/js/lib/chosen.js +982 -0
  324. data/solr/server/solr-webapp/webapp/js/lib/console.js +29 -0
  325. data/solr/server/solr-webapp/webapp/js/lib/d3.js +9373 -0
  326. data/solr/server/solr-webapp/webapp/js/lib/highlight.js +31 -0
  327. data/solr/server/solr-webapp/webapp/js/lib/jquery-1.7.2.min.js +30 -0
  328. data/solr/server/solr-webapp/webapp/js/lib/jquery.ajaxfileupload.js +184 -0
  329. data/solr/server/solr-webapp/webapp/js/lib/jquery.blockUI.js +523 -0
  330. data/solr/server/solr-webapp/webapp/js/lib/jquery.cookie.js +71 -0
  331. data/solr/server/solr-webapp/webapp/js/lib/jquery.form.js +806 -0
  332. data/solr/server/solr-webapp/webapp/js/lib/jquery.jstree.js +3534 -0
  333. data/solr/server/solr-webapp/webapp/js/lib/jquery.sammy.js +1863 -0
  334. data/solr/server/solr-webapp/webapp/js/lib/jquery.timeago.js +189 -0
  335. data/solr/server/solr-webapp/webapp/js/lib/linker.js +48 -0
  336. data/solr/server/solr-webapp/webapp/js/lib/order.js +216 -0
  337. data/solr/server/solr-webapp/webapp/js/main.js +58 -0
  338. data/solr/server/solr-webapp/webapp/js/require.js +11349 -0
  339. data/solr/server/solr-webapp/webapp/js/scripts/analysis.js +545 -0
  340. data/solr/server/solr-webapp/webapp/js/scripts/app.js +679 -0
  341. data/solr/server/solr-webapp/webapp/js/scripts/cloud.js +877 -0
  342. data/solr/server/solr-webapp/webapp/js/scripts/cores.js +719 -0
  343. data/solr/server/solr-webapp/webapp/js/scripts/dashboard.js +562 -0
  344. data/solr/server/solr-webapp/webapp/js/scripts/dataimport.js +812 -0
  345. data/solr/server/solr-webapp/webapp/js/scripts/documents.js +370 -0
  346. data/solr/server/solr-webapp/webapp/js/scripts/files.js +265 -0
  347. data/solr/server/solr-webapp/webapp/js/scripts/index.js +340 -0
  348. data/solr/server/solr-webapp/webapp/js/scripts/java-properties.js +106 -0
  349. data/solr/server/solr-webapp/webapp/js/scripts/logging.js +576 -0
  350. data/solr/server/solr-webapp/webapp/js/scripts/ping.js +72 -0
  351. data/solr/server/solr-webapp/webapp/js/scripts/plugins.js +462 -0
  352. data/solr/server/solr-webapp/webapp/js/scripts/query.js +229 -0
  353. data/solr/server/solr-webapp/webapp/js/scripts/replication.js +527 -0
  354. data/solr/server/solr-webapp/webapp/js/scripts/schema-browser.js +1229 -0
  355. data/solr/server/solr-webapp/webapp/js/scripts/threads.js +158 -0
  356. data/solr/server/solr-webapp/webapp/tpl/analysis.html +83 -0
  357. data/solr/server/solr-webapp/webapp/tpl/cloud.html +87 -0
  358. data/solr/server/solr-webapp/webapp/tpl/cores.html +226 -0
  359. data/solr/server/solr-webapp/webapp/tpl/dashboard.html +201 -0
  360. data/solr/server/solr-webapp/webapp/tpl/dataimport.html +183 -0
  361. data/solr/server/solr-webapp/webapp/tpl/documents.html +107 -0
  362. data/solr/server/solr-webapp/webapp/tpl/files.html +44 -0
  363. data/solr/server/solr-webapp/webapp/tpl/index.html +250 -0
  364. data/solr/server/solr-webapp/webapp/tpl/logging.html +23 -0
  365. data/solr/server/solr-webapp/webapp/tpl/plugins.html +39 -0
  366. data/solr/server/solr-webapp/webapp/tpl/query.html +361 -0
  367. data/solr/server/solr-webapp/webapp/tpl/replication.html +216 -0
  368. data/solr/server/solr-webapp/webapp/tpl/schema-browser.html +192 -0
  369. data/solr/server/solr-webapp/webapp/tpl/threads.html +56 -0
  370. data/solr/server/solr/README.txt +77 -0
  371. data/solr/server/solr/solr.xml +51 -0
  372. data/solr/server/solr/zoo.cfg +17 -0
  373. data/solr/server/start.jar +0 -0
  374. data/solr/server/webapps/solr.war +0 -0
  375. data/solr/solr/README.txt +77 -0
  376. data/solr/solr/configsets/sunspot/conf/_rest_managed.json +1 -0
  377. data/solr/solr/{conf → configsets/sunspot/conf}/admin-extra.html +0 -0
  378. data/solr/solr/configsets/sunspot/conf/currency.xml +67 -0
  379. data/solr/solr/{conf → configsets/sunspot/conf}/elevate.xml +0 -0
  380. data/solr/solr/{conf/stopwords.txt → configsets/sunspot/conf/lang/stopwords_en.txt} +1 -5
  381. data/solr/solr/{conf → configsets/sunspot/conf}/mapping-ISOLatin1Accent.txt +0 -0
  382. data/solr/solr/{conf → configsets/sunspot/conf}/protwords.txt +0 -0
  383. data/solr/solr/{conf → configsets/sunspot/conf}/schema.xml +36 -33
  384. data/solr/solr/{conf → configsets/sunspot/conf}/scripts.conf +0 -0
  385. data/solr/solr/{conf → configsets/sunspot/conf}/solrconfig.xml +269 -318
  386. data/solr/solr/{conf → configsets/sunspot/conf}/spellings.txt +0 -0
  387. data/solr/solr/{conf → configsets/sunspot/conf}/synonyms.txt +3 -5
  388. data/solr/solr/default/core.properties +3 -0
  389. data/solr/solr/development/core.properties +3 -0
  390. data/solr/solr/solr.xml +49 -6
  391. data/solr/solr/test/core.properties +3 -0
  392. data/solr/solr/zoo.cfg +17 -0
  393. data/spec/server_spec.rb +0 -6
  394. data/sunspot_solr.gemspec +1 -1
  395. metadata +390 -48
  396. data/solr/lib/jetty-http-8.1.8.v20121106.jar +0 -0
  397. data/solr/lib/jetty-server-8.1.8.v20121106.jar +0 -0
  398. data/solr/lib/jetty-servlet-8.1.8.v20121106.jar +0 -0
  399. data/solr/lib/jetty-xml-8.1.8.v20121106.jar +0 -0
  400. data/solr/lib/jsp-2.1/ant-1.6.5.jar +0 -0
  401. data/solr/lib/jsp-2.1/core-3.1.1.jar +0 -0
  402. data/solr/lib/jsp-2.1/jsp-2.1.jar +0 -0
  403. data/solr/lib/jsp-2.1/jsp-api-2.1.jar +0 -0
  404. data/solr/solr/conf/xslt/example.xsl +0 -132
  405. data/solr/solr/conf/xslt/example_atom.xsl +0 -67
  406. data/solr/solr/conf/xslt/example_rss.xsl +0 -66
  407. data/solr/solr/conf/xslt/luke.xsl +0 -337
  408. data/solr/solr/default/README.txt +0 -54
  409. data/solr/start.jar +0 -0
  410. data/solr/webapps/solr.war +0 -0
@@ -0,0 +1,340 @@
1
+ /*
2
+ Licensed to the Apache Software Foundation (ASF) under one or more
3
+ contributor license agreements. See the NOTICE file distributed with
4
+ this work for additional information regarding copyright ownership.
5
+ The ASF licenses this file to You under the Apache License, Version 2.0
6
+ (the "License"); you may not use this file except in compliance with
7
+ the License. You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
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
+
18
+ var parse_memory_value = function( value )
19
+ {
20
+ if( value !== Number( value ) )
21
+ {
22
+ var units = 'BKMGTPEZY';
23
+ var match = value.match( /^(\d+([,\.]\d+)?) (\w)\w?$/ );
24
+ var value = parseFloat( match[1] ) * Math.pow( 1024, units.indexOf( match[3].toUpperCase() ) );
25
+ }
26
+
27
+ return value;
28
+ };
29
+
30
+ var generate_bar = function( bar_container, bar_data, convert_label_values )
31
+ {
32
+ bar_holder = $( '.bar-holder', bar_container );
33
+
34
+ var bar_level = 1;
35
+ var max_width = Math.round( $( '.bar-max', bar_holder ).width() );
36
+ $( '.bar-max.val', bar_holder ).text( bar_data['max'] );
37
+
38
+ bar_level++;
39
+ $( '.bar-total.bar', bar_holder ).width( new String( (bar_data['total']/bar_data['max'])*100 ) + '%' );
40
+ $( '.bar-total.val', bar_holder ).text( bar_data['total'] );
41
+
42
+ if( bar_data['used'] )
43
+ {
44
+ bar_level++;
45
+ $( '.bar-used.bar', bar_holder ).width( new String( (bar_data['used']/bar_data['total'])*100 ) + '%' );
46
+ $( '.bar-used.val', bar_holder ).text( bar_data['used'] );
47
+ }
48
+
49
+ bar_holder
50
+ .addClass( 'bar-lvl-' + bar_level );
51
+
52
+ var percentage = ( ( ( bar_data['used'] || bar_data['total'] ) / bar_data['max'] ) * 100 ).toFixed(1);
53
+
54
+ var hl = $( '[data-desc="' + bar_container.attr( 'id' ) + '"]' );
55
+
56
+ $( '.bar-desc', hl )
57
+ .remove();
58
+
59
+ hl
60
+ .append( ' <small class="bar-desc">' + percentage + '%</small>' );
61
+
62
+ if( !!convert_label_values )
63
+ {
64
+ $( '.val', bar_holder )
65
+ .each
66
+ (
67
+ function()
68
+ {
69
+ var self = $( this );
70
+
71
+ var unit = null;
72
+ var byte_value = parseInt( self.html() );
73
+
74
+ self
75
+ .attr( 'title', 'raw: ' + byte_value + ' B' );
76
+
77
+ byte_value /= 1024;
78
+ byte_value /= 1024;
79
+ unit = 'MB';
80
+
81
+ if( 1024 <= byte_value )
82
+ {
83
+ byte_value /= 1024;
84
+ unit = 'GB';
85
+ }
86
+
87
+ byte_value = byte_value.toFixed( 2 ) + ' ' + unit;
88
+
89
+ self
90
+ .text( byte_value );
91
+ }
92
+ );
93
+ }
94
+ };
95
+
96
+ var system_info = function( element, system_data )
97
+ {
98
+ // -- usage
99
+
100
+ var load_average = ( system_data['system']['uptime'] || '' ).match( /load averages?: (\d+[.,]\d\d),? (\d+[.,]\d\d),? (\d+[.,]\d\d)/ );
101
+ if( load_average )
102
+ {
103
+ var hl = $( '#system h2', element );
104
+
105
+ $( '.bar-desc', hl )
106
+ .remove();
107
+
108
+ hl
109
+ .append( ' <small class="bar-desc">' + load_average.slice( 1 ).join( ' ' ).replace( /,/g, '.' ).esc() + '</small>' );
110
+ }
111
+
112
+ // -- physical-memory-bar
113
+
114
+ var bar_holder = $( '#physical-memory-bar', element );
115
+ if( system_data['system']['totalPhysicalMemorySize'] === undefined || system_data['system']['freePhysicalMemorySize'] === undefined )
116
+ {
117
+ bar_holder.hide();
118
+ }
119
+ else
120
+ {
121
+ bar_holder.show();
122
+
123
+ var bar_data = {
124
+ 'max' : parse_memory_value( system_data['system']['totalPhysicalMemorySize'] ),
125
+ 'total' : parse_memory_value( system_data['system']['totalPhysicalMemorySize'] - system_data['system']['freePhysicalMemorySize'] )
126
+ };
127
+
128
+ generate_bar( bar_holder, bar_data, true );
129
+ }
130
+
131
+ // -- swap-space-bar
132
+
133
+ var bar_holder = $( '#swap-space-bar', element );
134
+ if( system_data['system']['totalSwapSpaceSize'] === undefined || system_data['system']['freeSwapSpaceSize'] === undefined )
135
+ {
136
+ bar_holder.hide();
137
+ }
138
+ else
139
+ {
140
+ bar_holder.show();
141
+
142
+ var bar_data = {
143
+ 'max' : parse_memory_value( system_data['system']['totalSwapSpaceSize'] ),
144
+ 'total' : parse_memory_value( system_data['system']['totalSwapSpaceSize'] - system_data['system']['freeSwapSpaceSize'] )
145
+ };
146
+
147
+ generate_bar( bar_holder, bar_data, true );
148
+ }
149
+
150
+ // -- file-descriptor-bar
151
+
152
+ var bar_holder = $( '#file-descriptor-bar', element );
153
+ if( system_data['system']['maxFileDescriptorCount'] === undefined || system_data['system']['openFileDescriptorCount'] === undefined )
154
+ {
155
+ bar_holder.hide();
156
+ }
157
+ else
158
+ {
159
+ bar_holder.show();
160
+
161
+ var bar_data = {
162
+ 'max' : parse_memory_value( system_data['system']['maxFileDescriptorCount'] ),
163
+ 'total' : parse_memory_value( system_data['system']['openFileDescriptorCount'] )
164
+ };
165
+
166
+ generate_bar( bar_holder, bar_data );
167
+ }
168
+
169
+ 0 === $( '#system div[id$="-bar"]:visible', element ).size()
170
+ ? $( '#system .no-info', element ).show()
171
+ : $( '#system .no-info', element ).hide();
172
+
173
+ // -- memory-bar
174
+
175
+ var bar_holder = $( '#jvm-memory-bar', element );
176
+ if( system_data['jvm']['memory'] === undefined )
177
+ {
178
+ bar_holder.hide();
179
+ }
180
+ else
181
+ {
182
+ bar_holder.show();
183
+
184
+ var jvm_memory = $.extend
185
+ (
186
+ {
187
+ 'free' : null,
188
+ 'total' : null,
189
+ 'max' : null,
190
+ 'used' : null,
191
+ 'raw' : {
192
+ 'free' : null,
193
+ 'total' : null,
194
+ 'max' : null,
195
+ 'used' : null,
196
+ 'used%' : null
197
+ }
198
+ },
199
+ system_data['jvm']['memory']
200
+ );
201
+
202
+ var bar_data = {
203
+ 'max' : parse_memory_value( jvm_memory['raw']['max'] || jvm_memory['max'] ),
204
+ 'total' : parse_memory_value( jvm_memory['raw']['total'] || jvm_memory['total'] ),
205
+ 'used' : parse_memory_value( jvm_memory['raw']['used'] || jvm_memory['used'] )
206
+ };
207
+
208
+ generate_bar( bar_holder, bar_data, true );
209
+ }
210
+
211
+ }
212
+
213
+ // #/
214
+ sammy.get
215
+ (
216
+ /^#\/$/,
217
+ function( context )
218
+ {
219
+ var content_element = $( '#content' );
220
+
221
+ content_element
222
+ .html( '<div id="index"></div>' );
223
+
224
+ $.ajax
225
+ (
226
+ {
227
+ url : 'tpl/index.html',
228
+ context : $( '#index', content_element ),
229
+ beforeSend : function( arr, form, options )
230
+ {
231
+ },
232
+ success : function( template )
233
+ {
234
+ var self = this;
235
+
236
+ this
237
+ .html( template );
238
+
239
+ var data = {
240
+ 'start_time' : app.dashboard_values['jvm']['jmx']['startTime'],
241
+ 'jvm_version' : app.dashboard_values['jvm']['name'] + ' (' + app.dashboard_values['jvm']['version'] + ')',
242
+ 'processors' : app.dashboard_values['jvm']['processors'],
243
+ 'solr_spec_version' : app.dashboard_values['lucene']['solr-spec-version'] || '-',
244
+ 'solr_impl_version' : app.dashboard_values['lucene']['solr-impl-version'] || '-',
245
+ 'lucene_spec_version' : app.dashboard_values['lucene']['lucene-spec-version'] || '-',
246
+ 'lucene_impl_version' : app.dashboard_values['lucene']['lucene-impl-version'] || '-'
247
+ };
248
+
249
+ for( var key in data )
250
+ {
251
+ var value_element = $( '.' + key + ' dd', this );
252
+
253
+ value_element
254
+ .text( data[key].esc() );
255
+
256
+ value_element.closest( 'li' )
257
+ .show();
258
+ }
259
+
260
+ var commandLineArgs = app.dashboard_values['jvm']['jmx']['commandLineArgs'].sort().reverse();
261
+ if( 0 !== commandLineArgs.length )
262
+ {
263
+ var cmd_arg_element = $( '.command_line_args dt', this );
264
+ var cmd_arg_key_element = $( '.command_line_args dt', this );
265
+ var cmd_arg_element = $( '.command_line_args dd', this );
266
+
267
+ for( var key in commandLineArgs )
268
+ {
269
+ cmd_arg_element = cmd_arg_element.clone();
270
+ cmd_arg_element.text( commandLineArgs[key] );
271
+
272
+ cmd_arg_key_element
273
+ .after( cmd_arg_element );
274
+ }
275
+
276
+ cmd_arg_key_element.closest( 'li' )
277
+ .show();
278
+
279
+ $( '.command_line_args dd:last', this )
280
+ .remove();
281
+
282
+ $( '.command_line_args dd:odd', this )
283
+ .addClass( 'odd' );
284
+ }
285
+
286
+ $( '.timeago', this )
287
+ .timeago();
288
+
289
+ $( '.index-left .block li:visible:odd', this )
290
+ .addClass( 'odd' );
291
+
292
+ // -- system_info
293
+
294
+ system_info( this, app.dashboard_values );
295
+
296
+ $( '#system a.reload', this )
297
+ .die( 'click' )
298
+ .live
299
+ (
300
+ 'click',
301
+ function( event )
302
+ {
303
+ $.ajax
304
+ (
305
+ {
306
+ url : config.solr_path + '/admin/info/system?wt=json',
307
+ dataType : 'json',
308
+ context : this,
309
+ beforeSend : function( arr, form, options )
310
+ {
311
+ loader.show( this );
312
+ },
313
+ success : function( response )
314
+ {
315
+ system_info( self, response );
316
+ },
317
+ error : function()
318
+ {
319
+ },
320
+ complete : function()
321
+ {
322
+ loader.hide( this );
323
+ }
324
+ }
325
+ );
326
+
327
+ return false;
328
+ }
329
+ );
330
+ },
331
+ error : function( xhr, text_status, error_thrown )
332
+ {
333
+ },
334
+ complete : function( xhr, text_status )
335
+ {
336
+ }
337
+ }
338
+ );
339
+ }
340
+ );
@@ -0,0 +1,106 @@
1
+ /*
2
+ Licensed to the Apache Software Foundation (ASF) under one or more
3
+ contributor license agreements. See the NOTICE file distributed with
4
+ this work for additional information regarding copyright ownership.
5
+ The ASF licenses this file to You under the Apache License, Version 2.0
6
+ (the "License"); you may not use this file except in compliance with
7
+ the License. You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
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
+
18
+ // #/~java-properties
19
+ sammy.get
20
+ (
21
+ /^#\/(~java-properties)$/,
22
+ function( context )
23
+ {
24
+ var content_element = $( '#content' );
25
+
26
+ content_element
27
+ .html( '<div id="java-properties"></div>' );
28
+
29
+ $.ajax
30
+ (
31
+ {
32
+ url : app.config.solr_path + '/admin/info/properties?wt=json',
33
+ dataType : 'json',
34
+ context : $( '#java-properties', content_element ),
35
+ beforeSend : function( xhr, settings )
36
+ {
37
+ this
38
+ .html( '<div class="loader">Loading ...</div>' );
39
+ },
40
+ success : function( response, text_status, xhr )
41
+ {
42
+ var system_properties = response['system.properties'];
43
+ var properties_data = {};
44
+ var properties_content = [];
45
+ var properties_order = [];
46
+
47
+ var workaround = xhr.responseText.match( /"(line\.separator)"\s*:\s*"(.+?)"/ );
48
+ if( workaround && workaround[2] )
49
+ {
50
+ system_properties[workaround[1]] = workaround[2];
51
+ }
52
+
53
+ for( var key in system_properties )
54
+ {
55
+ var displayed_key = key.replace( /\./g, '.&#8203;' );
56
+ var displayed_value = [ system_properties[key] ];
57
+ var item_class = 'clearfix';
58
+
59
+ if( -1 !== key.indexOf( '.path' ) || -1 !== key.indexOf( '.dirs' ) )
60
+ {
61
+ displayed_value = system_properties[key].split( system_properties['path.separator'] );
62
+ if( 1 < displayed_value.length )
63
+ {
64
+ item_class += ' multi';
65
+ }
66
+ }
67
+
68
+ var item_content = '<li><dl class="' + item_class + '">' + "\n"
69
+ + '<dt>' + displayed_key.esc() + '</dt>' + "\n";
70
+
71
+ for( var i in displayed_value )
72
+ {
73
+ item_content += '<dd>' + displayed_value[i].esc() + '</dd>' + "\n";
74
+ }
75
+
76
+ item_content += '</dl></li>';
77
+
78
+ properties_data[key] = item_content;
79
+ properties_order.push( key );
80
+ }
81
+
82
+ properties_order.sort();
83
+ for( var i in properties_order )
84
+ {
85
+ properties_content.push( properties_data[properties_order[i]] );
86
+ }
87
+
88
+ this
89
+ .html( '<ul>' + properties_content.join( "\n" ) + '</ul>' );
90
+
91
+ $( 'li:odd', this )
92
+ .addClass( 'odd' );
93
+
94
+ $( '.multi dd:odd', this )
95
+ .addClass( 'odd' );
96
+ },
97
+ error : function( xhr, text_status, error_thrown)
98
+ {
99
+ },
100
+ complete : function( xhr, text_status )
101
+ {
102
+ }
103
+ }
104
+ );
105
+ }
106
+ );
@@ -0,0 +1,576 @@
1
+ /*
2
+ Licensed to the Apache Software Foundation (ASF) under one or more
3
+ contributor license agreements. See the NOTICE file distributed with
4
+ this work for additional information regarding copyright ownership.
5
+ The ASF licenses this file to You under the Apache License, Version 2.0
6
+ (the "License"); you may not use this file except in compliance with
7
+ the License. You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
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
+
18
+ var loglevel_path = app.config.solr_path + '/admin/info/logging';
19
+ var cookie_logging_timezone = 'logging_timezone';
20
+ var frame_element = null;
21
+
22
+ var logging_handler = function( response, text_status, xhr )
23
+ {
24
+ var self = this;
25
+ var loggers = response.loggers;
26
+
27
+ var levels = '<div class="selector-holder"><div class="selector">' + "\n"
28
+ + '<a class="trigger"><span><em>null</em></span></a>' + "\n"
29
+ + '<ul>' + "\n";
30
+
31
+ for( var key in response.levels )
32
+ {
33
+ var level = response.levels[key].esc();
34
+ levels += '<li><a href="#" data-level="' + level + '">' + level + '</a></li>' + "\n";
35
+ }
36
+
37
+ levels += '<li class="unset"><a href="#" data-level="unset">UNSET</a></li>' + "\n"
38
+ + '</ul>' + "\n"
39
+ + '<a class="close"><span>[x]</span></a>' + "\n"
40
+ + '</div></div>';
41
+
42
+ var logger_tree = function( filter )
43
+ {
44
+ var logger_content = '';
45
+ var filter_regex = new RegExp( '^' + filter + '\\.\\w+$' );
46
+
47
+ for( var i in loggers )
48
+ {
49
+ var logger = loggers[i];
50
+ var continue_matcher = false;
51
+
52
+ if( !filter )
53
+ {
54
+ continue_matcher = logger.name.indexOf( '.' ) !== -1;
55
+ }
56
+ else
57
+ {
58
+ continue_matcher = !logger.name.match( filter_regex );
59
+ }
60
+
61
+ if( continue_matcher )
62
+ {
63
+ continue;
64
+ }
65
+
66
+ var logger_class = '';
67
+
68
+ if( logger.set )
69
+ {
70
+ logger_class = 'set';
71
+ }
72
+
73
+ if( !logger.level )
74
+ {
75
+ logger_class = 'null';
76
+ }
77
+
78
+ var logger_name = logger.name.split( '.' );
79
+ var display_name = logger_name.pop();
80
+
81
+ var leaf_class = 'jstree-leaf';
82
+ if( logger.level )
83
+ {
84
+ leaf_class += ' level-' + logger.level.esc().toLowerCase();
85
+ }
86
+
87
+ logger_content += '<li class="' + leaf_class + '" data-logger="' + logger.name.esc() + '">';
88
+ logger_content += '<ins class="trigger jstree-icon">&nbsp;</ins>' + "\n";
89
+ logger_content += '<a href="#" class="trigger '+ logger_class + '"' ;
90
+
91
+ if( logger.level )
92
+ {
93
+ logger_content += 'rel="' + logger.level.esc() + '" ';
94
+ }
95
+
96
+ logger_content += 'title="' + logger.name.esc() + '">' + "\n";
97
+
98
+ if( 0 !== logger_name.length )
99
+ {
100
+ logger_content += '<span class="ns">' + logger_name.join( '.' ).esc() + '.</span>';
101
+ }
102
+
103
+ logger_content += '<span class="name">' + ( display_name ? display_name.esc() : '<em>empty</em>' ) + '</span>' + "\n";
104
+ logger_content += '</a>';
105
+
106
+ logger_content += levels;
107
+
108
+ if( !!logger.name )
109
+ {
110
+ var child_logger_content = logger_tree( logger.name );
111
+ if( child_logger_content )
112
+ {
113
+ logger_content += '<ul>';
114
+ logger_content += child_logger_content;
115
+ logger_content += '</ul>';
116
+ }
117
+ }
118
+
119
+ logger_content += '</li>';
120
+ }
121
+
122
+ return logger_content;
123
+ };
124
+
125
+ var logger_content = '<div class="block">' + "\n"
126
+ + '<h2><span>' + response.watcher.esc() + '</span></h2>' + "\n"
127
+ + '<ul class="tree jstree">' + logger_tree( null ) + '</ul>' + "\n"
128
+ + '</div>';
129
+
130
+ self
131
+ .html( logger_content );
132
+
133
+ self
134
+ .die( 'clear' )
135
+ .live
136
+ (
137
+ 'clear',
138
+ function( event )
139
+ {
140
+ $( '.open', this )
141
+ .removeClass( 'open' );
142
+ }
143
+ );
144
+
145
+ $( 'li:last-child', this )
146
+ .addClass( 'jstree-last' );
147
+
148
+ $( 'li.jstree-leaf > a', this )
149
+ .each
150
+ (
151
+ function( index, element )
152
+ {
153
+ element = $( element );
154
+ var level = element.attr( 'rel' );
155
+
156
+ if( level )
157
+ {
158
+ var selector = $( '.selector-holder', element.closest( 'li' ) );
159
+
160
+ var trigger = $( 'a.trigger', selector );
161
+
162
+ trigger
163
+ .text( level.esc() );
164
+
165
+ if( element.hasClass( 'set' ) )
166
+ {
167
+ trigger.first()
168
+ .addClass( 'set' );
169
+ }
170
+
171
+ $( 'ul a[data-level="' + level + '"]', selector ).first()
172
+ .addClass( 'level' );
173
+ }
174
+ }
175
+ )
176
+
177
+ $( '.trigger', this )
178
+ .die( 'click' )
179
+ .live
180
+ (
181
+ 'click',
182
+ function( event )
183
+ {
184
+ self.trigger( 'clear' );
185
+
186
+ $( '.selector-holder', $( this ).parents( 'li' ).first() ).first()
187
+ .trigger( 'toggle' );
188
+
189
+ return false;
190
+ }
191
+ );
192
+
193
+ $( '.selector .close', this )
194
+ .die( 'click' )
195
+ .live
196
+ (
197
+ 'click',
198
+ function( event )
199
+ {
200
+ self.trigger( 'clear' );
201
+ return false;
202
+ }
203
+ );
204
+
205
+ $( '.selector-holder', this )
206
+ .die( 'toggle')
207
+ .live
208
+ (
209
+ 'toggle',
210
+ function( event )
211
+ {
212
+ var row = $( this ).closest( 'li' );
213
+
214
+ $( 'a:first', row )
215
+ .toggleClass( 'open' );
216
+
217
+ $( '.selector-holder:first', row )
218
+ .toggleClass( 'open' );
219
+ }
220
+ );
221
+
222
+ $( '.selector ul a', this )
223
+ .die( 'click' )
224
+ .live
225
+ (
226
+ 'click',
227
+ function( event )
228
+ {
229
+ var element = $( this );
230
+
231
+ $.ajax
232
+ (
233
+ {
234
+ url : loglevel_path,
235
+ dataType : 'json',
236
+ data : {
237
+ 'wt' : 'json',
238
+ 'set' : $( this ).parents( 'li[data-logger]' ).data( 'logger' ) + ':' + element.data( 'level' )
239
+ },
240
+ type : 'POST',
241
+ context : self,
242
+ beforeSend : function( xhr, settings )
243
+ {
244
+ element
245
+ .addClass( 'loader' );
246
+ },
247
+ success : logging_handler
248
+ }
249
+ );
250
+
251
+ return false;
252
+ }
253
+ );
254
+
255
+ };
256
+
257
+ var format_time_options = {};
258
+
259
+ var format_time = function( time )
260
+ {
261
+ time = time ? new Date( time ) : new Date();
262
+ return '<time datetime="' + time.toISOString().esc() + '">' + format_time_content( time ) + '</abbr>';
263
+ }
264
+
265
+ var format_time_content = function( time )
266
+ {
267
+ return time.toLocaleString( undefined, format_time_options ).esc();
268
+ }
269
+
270
+ var load_logging_viewer = function()
271
+ {
272
+ var table = $( 'table', frame_element );
273
+ var state = $( '#state', frame_element );
274
+ var since = table.data( 'latest' ) || 0;
275
+ var sticky_mode = null;
276
+
277
+ $.ajax
278
+ (
279
+ {
280
+ url : loglevel_path + '?wt=json&since=' + since,
281
+ dataType : 'json',
282
+ beforeSend : function( xhr, settings )
283
+ {
284
+ // initial request
285
+ if( 0 === since )
286
+ {
287
+ sticky_mode = true;
288
+ }
289
+
290
+ // state element is in viewport
291
+ else if( state.position().top <= $( window ).scrollTop() + $( window ).height() - ( $( 'body' ).height() - state.position().top ) )
292
+ {
293
+ sticky_mode = true;
294
+ }
295
+
296
+ else
297
+ {
298
+ sticky_mode = false;
299
+ }
300
+ },
301
+ success : function( response, text_status, xhr )
302
+ {
303
+ var docs = response.history.docs;
304
+ var docs_count = docs.length;
305
+
306
+ var table = $( 'table', frame_element );
307
+
308
+ $( 'h2 span', frame_element )
309
+ .text( response.watcher.esc() );
310
+
311
+ state
312
+ .html( 'Last Check: ' + format_time() );
313
+
314
+ app.timeout = setTimeout
315
+ (
316
+ load_logging_viewer,
317
+ 10000
318
+ );
319
+
320
+ if( 0 === docs_count )
321
+ {
322
+ table.trigger( 'update' );
323
+ return false;
324
+ }
325
+
326
+ var content = '<tbody>';
327
+
328
+ for( var i = 0; i < docs_count; i++ )
329
+ {
330
+ var doc = docs[i];
331
+
332
+ if( 1 === doc.time.length )
333
+ {
334
+ for( var key in doc )
335
+ {
336
+ doc[key] = doc[key][0];
337
+ }
338
+ }
339
+
340
+ if( !doc.trace )
341
+ {
342
+ var lines = doc.message.split( "\n" );
343
+ if( 1 < lines.length )
344
+ {
345
+ doc.trace = doc.message;
346
+ doc.message = lines[0];
347
+ delete lines;
348
+ }
349
+ }
350
+
351
+ var has_trace = 'undefined' !== typeof( doc.trace );
352
+
353
+ doc.logger = '<abbr title="' + doc.logger.esc() + '">' + doc.logger.split( '.' ).pop().esc() + '</abbr>';
354
+
355
+ var classes = [ 'level-' + doc.level.toLowerCase().esc() ];
356
+ if( has_trace )
357
+ {
358
+ classes.push( 'has-trace' );
359
+ }
360
+
361
+ content += '<tr class="' + classes.join( ' ' ) + '">' + "\n";
362
+ content += '<td class="span"><a><span>' + format_time( doc.time ) + '</span></a></td>' + "\n";
363
+ content += '<td class="level span"><a><span>' + doc.level.esc() + '</span></span></a></td>' + "\n";
364
+ content += '<td class="span"><a><span>' + doc.logger + '</span></a></td>' + "\n";
365
+ content += '<td class="message span"><a><span>' + doc.message.replace( /,/g, ',&#8203;' ).esc() + '</span></a></td>' + "\n";
366
+ content += '</tr>' + "\n";
367
+
368
+ if( has_trace )
369
+ {
370
+ content += '<tr class="trace">' + "\n";
371
+ content += '<td colspan="4"><pre>' + doc.trace.esc() + '</pre></td>' + "\n";
372
+ content += '</tr>' + "\n";
373
+ }
374
+
375
+ }
376
+
377
+ content += '</tbody>';
378
+
379
+ $( 'table', frame_element )
380
+ .append( content );
381
+
382
+ table
383
+ .data( 'latest', response.info.last )
384
+ .removeClass( 'has-data' )
385
+ .trigger( 'update' );
386
+
387
+ if( sticky_mode )
388
+ {
389
+ $( 'body' )
390
+ .animate
391
+ (
392
+ { scrollTop: state.position().top },
393
+ 1000
394
+ );
395
+ }
396
+ },
397
+ error : function( xhr, text_status, error_thrown)
398
+ {
399
+ },
400
+ complete : function( xhr, text_status )
401
+ {
402
+ }
403
+ }
404
+ );
405
+ }
406
+
407
+ // #/~logging
408
+ sammy.get
409
+ (
410
+ /^#\/(~logging)$/,
411
+ function( context )
412
+ {
413
+ var content_element = $( '#content' );
414
+
415
+ $.get
416
+ (
417
+ 'tpl/logging.html',
418
+ function( template )
419
+ {
420
+ content_element
421
+ .html( template );
422
+
423
+ frame_element = $( '#frame', content_element );
424
+ frame_element
425
+ .html
426
+ (
427
+ '<div id="viewer">' + "\n" +
428
+ '<div class="block">' + "\n" +
429
+ '<h2><span>&nbsp;</span></h2>' + "\n" +
430
+ '</div>' + "\n" +
431
+ '<table border="0" cellpadding="0" cellspacing="0">' + "\n" +
432
+ '<thead>' + "\n" +
433
+ '<tr>' + "\n" +
434
+ '<th class="time">Time (<span>Local</span>)</th>' + "\n" +
435
+ '<th class="level">Level</th>' + "\n" +
436
+ '<th class="logger">Logger</th>' + "\n" +
437
+ '<th class="message">Message</th>' + "\n" +
438
+ '</tr>' + "\n" +
439
+ '</thead>' + "\n" +
440
+ '<tfoot>' + "\n" +
441
+ '<tr>' + "\n" +
442
+ '<td colspan="4">No Events available</td>' + "\n" +
443
+ '</tr>' + "\n" +
444
+ '</thead>' + "\n" +
445
+ '</table>' + "\n" +
446
+ '<div id="footer" class="clearfix">' + "\n" +
447
+ '<div id="state" class="loader">&nbsp;</div>' + "\n" +
448
+ '<div id="date-format"><a>Show dates in UTC</a></div>' + "\n" +
449
+ '</div>' + "\n" +
450
+ '</div>'
451
+ );
452
+
453
+ var table = $( 'table', frame_element );
454
+
455
+ table
456
+ .die( 'update' )
457
+ .live
458
+ (
459
+ 'update',
460
+ function( event )
461
+ {
462
+ var table = $( this );
463
+ var tbody = $( 'tbody', table );
464
+
465
+ 0 !== tbody.size()
466
+ ? table.addClass( 'has-data' )
467
+ : table.removeClass( 'has-data' );
468
+
469
+ return false;
470
+ }
471
+ );
472
+
473
+ load_logging_viewer();
474
+
475
+ $( '.has-trace a', table )
476
+ .die( 'click' )
477
+ .live
478
+ (
479
+ 'click',
480
+ function( event )
481
+ {
482
+ $( this ).closest( 'tr' )
483
+ .toggleClass( 'open' )
484
+ .next().toggle();
485
+
486
+ return false;
487
+ }
488
+ );
489
+
490
+ var date_format = $( '#date-format a', frame_element );
491
+
492
+ date_format
493
+ .off( 'click' )
494
+ .on
495
+ (
496
+ 'click',
497
+ function( event )
498
+ {
499
+ var self = $( this );
500
+
501
+ if( !self.hasClass( 'on' ) )
502
+ {
503
+ self.addClass( 'on' );
504
+ $( 'table th.time span', frame_element ).text( 'UTC' );
505
+ format_time_options.timeZone = 'UTC';
506
+ $.cookie( cookie_logging_timezone, 'UTC' );
507
+ }
508
+ else
509
+ {
510
+ self.removeClass( 'on' );
511
+ $( 'table th.time span', frame_element ).text( 'Local' );
512
+ delete format_time_options.timeZone;
513
+ $.cookie( cookie_logging_timezone, null );
514
+ }
515
+
516
+ $( 'time', frame_element )
517
+ .each
518
+ (
519
+ function( index, element )
520
+ {
521
+ var self = $( element );
522
+ self.text( format_time_content( new Date( self.attr( 'datetime' ) ) ) );
523
+ }
524
+ )
525
+
526
+ return false;
527
+ }
528
+ );
529
+
530
+ if( 'UTC' === $.cookie( cookie_logging_timezone ) )
531
+ {
532
+ date_format
533
+ .trigger( 'click' );
534
+ }
535
+ }
536
+ );
537
+ }
538
+ );
539
+
540
+ // #/~logging/level
541
+ sammy.get
542
+ (
543
+ /^#\/(~logging)\/level$/,
544
+ function( context )
545
+ {
546
+ var content_element = $( '#content' );
547
+
548
+ $.get
549
+ (
550
+ 'tpl/logging.html',
551
+ function( template )
552
+ {
553
+ content_element
554
+ .html( template );
555
+
556
+ $( '#menu a[href="' + context.path + '"]' )
557
+ .parent().addClass( 'active' );
558
+
559
+ $.ajax
560
+ (
561
+ {
562
+ url : loglevel_path + '?wt=json',
563
+ dataType : 'json',
564
+ context : $( '#frame', content_element ),
565
+ beforeSend : function( xhr, settings )
566
+ {
567
+ this
568
+ .html( '<div class="loader">Loading ...</div>' );
569
+ },
570
+ success : logging_handler
571
+ }
572
+ );
573
+ }
574
+ );
575
+ }
576
+ );