You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by kr...@apache.org on 2019/02/02 14:46:57 UTC
[lucene-solr] branch branch_8x updated: SOLR-9515: Update to Hadoop
3 (Mark Miller, Kevin Risden)
This is an automated email from the ASF dual-hosted git repository.
krisden pushed a commit to branch branch_8x
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
The following commit(s) were added to refs/heads/branch_8x by this push:
new f20d2d0 SOLR-9515: Update to Hadoop 3 (Mark Miller, Kevin Risden)
f20d2d0 is described below
commit f20d2d01544c631ef55c529f4d5a07d6f7e645ed
Author: markrmiller <ma...@apache.org>
AuthorDate: Sat Sep 17 22:59:31 2016 -0400
SOLR-9515: Update to Hadoop 3 (Mark Miller, Kevin Risden)
Signed-off-by: Kevin Risden <kr...@apache.org>
---
lucene/ivy-versions.properties | 86 +-
.../tools/src/groovy/check-source-patterns.groovy | 1 +
solr/CHANGES.txt | 5 +-
solr/core/build.xml | 1 +
solr/core/ivy.xml | 94 +-
.../src/java/org/apache/solr/util/FSHDFSUtils.java | 3 +-
.../datanode/fsdataset/impl/BlockPoolSlice.java | 1044 ++++++++++++
.../test/org/apache/hadoop/http/HttpServer2.java | 1685 ++++++++++++++++++++
.../org/apache/solr/cloud/hdfs/HdfsTestUtil.java | 166 +-
.../solr/handler/export/TestExportWriter.java | 2 +-
.../solr/response/TestCustomDocTransformer.java | 3 +-
.../apache/solr/store/hdfs/HdfsDirectoryTest.java | 2 +-
solr/licenses/antlr-2.7.7.jar.sha1 | 1 -
solr/licenses/antlr-LICENSE-PD.txt | 31 -
solr/licenses/antlr-NOTICE.txt | 1 -
solr/licenses/apacheds-core-2.0.0-M15.jar.sha1 | 1 -
solr/licenses/apacheds-core-NOTICE.txt | 23 -
solr/licenses/apacheds-core-api-2.0.0-M15.jar.sha1 | 1 -
solr/licenses/apacheds-core-api-NOTICE.txt | 23 -
solr/licenses/apacheds-core-avl-2.0.0-M15.jar.sha1 | 1 -
solr/licenses/apacheds-core-avl-NOTICE.txt | 23 -
.../apacheds-core-shared-2.0.0-M15.jar.sha1 | 1 -
solr/licenses/apacheds-core-shared-NOTICE.txt | 23 -
solr/licenses/apacheds-i18n-2.0.0-M15.jar.sha1 | 1 -
solr/licenses/apacheds-i18n-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-i18n-NOTICE.txt | 23 -
...pacheds-interceptor-kerberos-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptor-kerberos-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptor-kerberos-NOTICE.txt | 23 -
.../apacheds-interceptors-admin-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-admin-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-admin-NOTICE.txt | 23 -
.../apacheds-interceptors-authn-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-authn-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-authn-NOTICE.txt | 23 -
.../apacheds-interceptors-authz-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-authz-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-authz-NOTICE.txt | 23 -
...cheds-interceptors-changelog-2.0.0-M15.jar.sha1 | 1 -
...apacheds-interceptors-changelog-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-changelog-NOTICE.txt | 23 -
...heds-interceptors-collective-2.0.0-M15.jar.sha1 | 1 -
...pacheds-interceptors-collective-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-collective-NOTICE.txt | 23 -
.../apacheds-interceptors-event-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-event-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-event-NOTICE.txt | 23 -
...cheds-interceptors-exception-2.0.0-M15.jar.sha1 | 1 -
...apacheds-interceptors-exception-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-exception-NOTICE.txt | 23 -
...pacheds-interceptors-journal-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-journal-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-journal-NOTICE.txt | 23 -
...s-interceptors-normalization-2.0.0-M15.jar.sha1 | 1 -
...heds-interceptors-normalization-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-normalization-NOTICE.txt | 23 -
...eds-interceptors-operational-2.0.0-M15.jar.sha1 | 1 -
...acheds-interceptors-operational-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-operational-NOTICE.txt | 23 -
...acheds-interceptors-referral-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-referral-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-referral-NOTICE.txt | 23 -
...apacheds-interceptors-schema-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-schema-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-schema-NOTICE.txt | 23 -
...pacheds-interceptors-subtree-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-subtree-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-subtree-NOTICE.txt | 23 -
...pacheds-interceptors-trigger-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-interceptors-trigger-LICENSE-ASL.txt | 341 ----
.../apacheds-interceptors-trigger-NOTICE.txt | 23 -
.../apacheds-jdbm-partition-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-jdbm-partition-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-jdbm-partition-NOTICE.txt | 23 -
solr/licenses/apacheds-jdbm1-2.0.0-M2.jar.sha1 | 1 -
solr/licenses/apacheds-jdbm1-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-jdbm1-NOTICE.txt | 23 -
.../apacheds-kerberos-codec-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-kerberos-codec-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-kerberos-codec-NOTICE.txt | 23 -
.../apacheds-ldif-partition-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-ldif-partition-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-ldif-partition-NOTICE.txt | 23 -
.../apacheds-mavibot-partition-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-mavibot-partition-LICENSE-ASL.txt | 341 ----
.../licenses/apacheds-mavibot-partition-NOTICE.txt | 23 -
.../apacheds-protocol-kerberos-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-protocol-kerberos-LICENSE-ASL.txt | 341 ----
.../licenses/apacheds-protocol-kerberos-NOTICE.txt | 23 -
.../apacheds-protocol-ldap-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-protocol-ldap-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-protocol-ldap-NOTICE.txt | 23 -
.../apacheds-protocol-shared-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-protocol-shared-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-protocol-shared-NOTICE.txt | 23 -
.../apacheds-xdbm-partition-2.0.0-M15.jar.sha1 | 1 -
.../apacheds-xdbm-partition-LICENSE-ASL.txt | 341 ----
solr/licenses/apacheds-xdbm-partition-NOTICE.txt | 23 -
solr/licenses/api-all-1.0.0-M20.jar.sha1 | 1 -
solr/licenses/api-all-LICENSE-ASL.txt | 341 ----
solr/licenses/api-all-NOTICE.txt | 23 -
solr/licenses/commons-beanutils-1.9.3.jar.sha1 | 1 +
...E-ASL.txt => commons-beanutils-LICENSE-ASL.txt} | 139 --
solr/licenses/commons-beanutils-NOTICE.txt | 5 +
solr/licenses/commons-configuration-1.6.jar.sha1 | 1 -
.../licenses/commons-configuration2-2.1.1.jar.sha1 | 1 +
....txt => commons-configuration2-LICENSE-ASL.txt} | 342 ++--
solr/licenses/commons-configuration2-NOTICE.txt | 5 +
solr/licenses/commons-lang3-3.6.jar.sha1 | 1 -
solr/licenses/commons-lang3-3.8.1.jar.sha1 | 1 +
solr/licenses/commons-logging-1.1.3.jar.sha1 | 1 +
...NSE-ASL.txt => commons-logging-LICENSE-ASL.txt} | 30 +-
solr/licenses/commons-logging-NOTICE.txt | 5 +
solr/licenses/commons-text-1.4.jar.sha1 | 1 +
...ICENSE-ASL.txt => commons-text-LICENSE-ASL.txt} | 30 +-
solr/licenses/commons-text-NOTICE.txt | 5 +
solr/licenses/ehcache-core-2.4.4.jar.sha1 | 1 -
solr/licenses/ehcache-core-LICENSE-ASL.txt | 15 -
solr/licenses/ehcache-core-NOTICE.txt | 0
solr/licenses/hadoop-annotations-2.7.4.jar.sha1 | 1 -
solr/licenses/hadoop-annotations-3.2.0.jar.sha1 | 1 +
solr/licenses/hadoop-auth-2.7.4.jar.sha1 | 1 -
solr/licenses/hadoop-auth-3.2.0.jar.sha1 | 1 +
solr/licenses/hadoop-common-2.7.4-tests.jar.sha1 | 1 -
solr/licenses/hadoop-common-2.7.4.jar.sha1 | 1 -
solr/licenses/hadoop-common-3.2.0-tests.jar.sha1 | 1 +
solr/licenses/hadoop-common-3.2.0.jar.sha1 | 1 +
solr/licenses/hadoop-hdfs-2.7.4-tests.jar.sha1 | 1 -
solr/licenses/hadoop-hdfs-2.7.4.jar.sha1 | 1 -
solr/licenses/hadoop-hdfs-3.2.0-tests.jar.sha1 | 1 +
solr/licenses/hadoop-hdfs-3.2.0.jar.sha1 | 1 +
solr/licenses/hadoop-hdfs-client-3.2.0.jar.sha1 | 1 +
...-ASL.txt => hadoop-hdfs-client-LICENSE-ASL.txt} | 177 +-
solr/licenses/hadoop-hdfs-client-NOTICE.txt | 2 +
solr/licenses/hadoop-minicluster-3.2.0.jar.sha1 | 1 +
...-ASL.txt => hadoop-minicluster-LICENSE-ASL.txt} | 177 +-
solr/licenses/hadoop-minicluster-NOTICE.txt | 2 +
solr/licenses/hadoop-minikdc-2.7.4.jar.sha1 | 1 -
solr/licenses/hadoop-minikdc-3.2.0.jar.sha1 | 1 +
.../licenses/htrace-core-3.2.0-incubating.jar.sha1 | 1 -
.../htrace-core4-4.1.0-incubating.jar.sha1 | 1 +
...ICENSE-ASL.txt => htrace-core4-LICENSE-ASL.txt} | 0
...ace-core-NOTICE.txt => htrace-core4-NOTICE.txt} | 0
solr/licenses/jackson-core-asl-1.9.13.jar.sha1 | 1 -
solr/licenses/jackson-mapper-asl-1.9.13.jar.sha1 | 1 -
solr/licenses/jersey-core-1.19.jar.sha1 | 1 +
solr/licenses/jersey-core-1.9.jar.sha1 | 1 -
solr/licenses/jersey-server-1.19.jar.sha1 | 1 +
solr/licenses/jersey-server-1.9.jar.sha1 | 1 -
solr/licenses/jersey-servlet-1.19.jar.sha1 | 1 +
solr/licenses/jersey-servlet-LICENSE-CDDL.txt | 85 +
solr/licenses/jetty-6.1.26.jar.sha1 | 1 -
solr/licenses/jetty-sslengine-6.1.26.jar.sha1 | 1 -
solr/licenses/jetty-util-6.1.26.jar.sha1 | 1 -
solr/licenses/kerb-admin-1.0.1.jar.sha1 | 1 +
...-LICENSE-ASL.txt => kerb-admin-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-admin-NOTICE.txt | 5 +
solr/licenses/kerb-client-1.0.1.jar.sha1 | 1 +
...LICENSE-ASL.txt => kerb-client-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-client-NOTICE.txt | 5 +
solr/licenses/kerb-common-1.0.1.jar.sha1 | 1 +
...LICENSE-ASL.txt => kerb-common-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-common-NOTICE.txt | 5 +
solr/licenses/kerb-core-1.0.1.jar.sha1 | 1 +
...e-LICENSE-ASL.txt => kerb-core-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-core-NOTICE.txt | 5 +
solr/licenses/kerb-crypto-1.0.1.jar.sha1 | 1 +
...LICENSE-ASL.txt => kerb-crypto-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-crypto-NOTICE.txt | 5 +
solr/licenses/kerb-identity-1.0.1.jar.sha1 | 1 +
...CENSE-ASL.txt => kerb-identity-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-identity-NOTICE.txt | 5 +
solr/licenses/kerb-server-1.0.1.jar.sha1 | 1 +
...LICENSE-ASL.txt => kerb-server-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-server-NOTICE.txt | 5 +
solr/licenses/kerb-simplekdc-1.0.1.jar.sha1 | 1 +
...ENSE-ASL.txt => kerb-simplekdc-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-simplekdc-NOTICE.txt | 5 +
solr/licenses/kerb-util-1.0.1.jar.sha1 | 1 +
...e-LICENSE-ASL.txt => kerb-util-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerb-util-NOTICE.txt | 5 +
solr/licenses/kerby-asn1-1.0.1.jar.sha1 | 1 +
...-LICENSE-ASL.txt => kerby-asn1-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerby-asn1-NOTICE.txt | 5 +
solr/licenses/kerby-config-1.0.1.jar.sha1 | 1 +
...ICENSE-ASL.txt => kerby-config-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerby-config-NOTICE.txt | 5 +
solr/licenses/kerby-kdc-1.0.1.jar.sha1 | 1 +
...e-LICENSE-ASL.txt => kerby-kdc-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerby-kdc-NOTICE.txt | 5 +
solr/licenses/kerby-pkix-1.0.1.jar.sha1 | 1 +
...-LICENSE-ASL.txt => kerby-pkix-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerby-pkix-NOTICE.txt | 5 +
solr/licenses/kerby-util-1.0.1.jar.sha1 | 1 +
...-LICENSE-ASL.txt => kerby-util-LICENSE-ASL.txt} | 31 +-
solr/licenses/kerby-util-NOTICE.txt | 5 +
solr/licenses/mina-core-2.0.0-M5.jar.sha1 | 1 -
solr/licenses/netty-all-4.0.36.Final.jar.sha1 | 1 -
solr/licenses/netty-all-4.0.52.Final.jar.sha1 | 1 +
solr/licenses/netty-all-NOTICE.txt | 140 +-
solr/licenses/protobuf-java-3.1.0.jar.sha1 | 1 -
solr/licenses/protobuf-java-3.6.1.jar.sha1 | 1 +
solr/licenses/re2j-1.2.jar.sha1 | 1 +
solr/licenses/re2j-LICENSE-BSD_LIKE.txt | 33 +
solr/licenses/re2j-NOTICE.txt | 5 +
.../org/apache/solr/util/BadHdfsThreadsFilter.java | 6 +-
206 files changed, 3967 insertions(+), 10507 deletions(-)
diff --git a/lucene/ivy-versions.properties b/lucene/ivy-versions.properties
index 367b8e1..8eea8e9 100644
--- a/lucene/ivy-versions.properties
+++ b/lucene/ivy-versions.properties
@@ -2,7 +2,6 @@
# Blank lines, comment lines, and keys that aren't in /org/name format are ignored
# when the lexical sort check is performed by the ant check-lib-versions target.
-/antlr/antlr = 2.7.7
/com.adobe.xmp/xmpcore = 5.1.3
com.carrotsearch.randomizedtesting.version = 2.7.2
@@ -26,8 +25,8 @@ com.fasterxml.jackson.core.version = 2.9.6
/com.github.virtuald/curvesapi = 1.04
/com.google.guava/guava = 14.0.1
-
-/com.google.protobuf/protobuf-java = 3.1.0
+/com.google.protobuf/protobuf-java = 3.6.1
+/com.google.re2j/re2j = 1.2
/com.googlecode.juniversalchardet/juniversalchardet = 1.0.3
/com.googlecode.mp4parser/isoparser = 1.1.22
/com.healthmarketscience.jackcess/jackcess = 2.1.12
@@ -39,19 +38,21 @@ com.fasterxml.jackson.core.version = 2.9.6
com.rometools.version = 1.5.1
/com.rometools/rome = ${com.rometools.version}
/com.rometools/rome-utils = ${com.rometools.version}
-com.sun.jersey.version = 1.9
+
+com.sun.jersey.version = 1.19
/com.sun.jersey/jersey-core = ${com.sun.jersey.version}
/com.sun.jersey/jersey-server = ${com.sun.jersey.version}
+/com.sun.jersey/jersey-servlet = ${com.sun.jersey.version}
/com.sun.mail/gimap = 1.5.1
/com.sun.mail/javax.mail = 1.5.1
/com.tdunning/t-digest = 3.1
/com.vaadin.external.google/android-json = 0.0.20131108.vaadin1
+/commons-beanutils/commons-beanutils = 1.9.3
/commons-cli/commons-cli = 1.2
/commons-codec/commons-codec = 1.11
/commons-collections/commons-collections = 3.2.2
-/commons-configuration/commons-configuration = 1.6
/commons-fileupload/commons-fileupload = 1.3.3
/commons-io/commons-io = 2.5
/commons-lang/commons-lang = 2.6
@@ -67,7 +68,7 @@ io.dropwizard.metrics.version = 3.2.6
/io.dropwizard.metrics/metrics-jetty9 = ${io.dropwizard.metrics.version}
/io.dropwizard.metrics/metrics-jvm = ${io.dropwizard.metrics.version}
-io.netty.netty-all.version = 4.0.36.Final
+io.netty.netty-all.version = 4.0.52.Final
/io.netty/netty-all = ${io.netty.netty-all.version}
io.prometheus.version = 0.2.0
@@ -87,7 +88,6 @@ io.prometheus.version = 0.2.0
/net.arnx/jsonic = 1.2.7
/net.bytebuddy/byte-buddy = 1.9.3
/net.hydromatic/eigenbase-properties = 1.1.5
-/net.sf.ehcache/ehcache-core = 2.4.4
net.sourceforge.argparse4j.version = 0.8.1
/net.sourceforge.argparse4j/argparse4j = ${net.sourceforge.argparse4j.version}
@@ -110,9 +110,11 @@ org.apache.calcite.version = 1.13.0
/org.apache.commons/commons-collections4 = 4.2
/org.apache.commons/commons-compress = 1.18
+/org.apache.commons/commons-configuration2 = 2.1.1
/org.apache.commons/commons-exec = 1.3
-/org.apache.commons/commons-lang3 = 3.6
+/org.apache.commons/commons-lang3 = 3.8.1
/org.apache.commons/commons-math3 = 3.6.1
+/org.apache.commons/commons-text = 1.4
org.apache.curator.version = 2.8.0
/org.apache.curator/curator-client = ${org.apache.curator.version}
@@ -121,47 +123,16 @@ org.apache.curator.version = 2.8.0
/org.apache.derby/derby = 10.9.1.0
-/org.apache.directory.api/api-all = 1.0.0-M20
-/org.apache.directory.jdbm/apacheds-jdbm1 = 2.0.0-M2
-
-org.apache.directory.server.version = 2.0.0-M15
-/org.apache.directory.server/apacheds-core = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-core-api = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-core-avl = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-core-shared = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-i18n = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptor-kerberos = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-admin = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-authn = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-authz = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-changelog = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-collective = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-event = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-exception = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-journal = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-normalization = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-operational = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-referral = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-schema = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-subtree = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-interceptors-trigger = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-jdbm-partition = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-kerberos-codec = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-ldif-partition = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-mavibot-partition = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-protocol-kerberos = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-protocol-ldap = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-protocol-shared = ${org.apache.directory.server.version}
-/org.apache.directory.server/apacheds-xdbm-partition = ${org.apache.directory.server.version}
-
-org.apache.hadoop.version = 2.7.4
+org.apache.hadoop.version = 3.2.0
/org.apache.hadoop/hadoop-annotations = ${org.apache.hadoop.version}
/org.apache.hadoop/hadoop-auth = ${org.apache.hadoop.version}
/org.apache.hadoop/hadoop-common = ${org.apache.hadoop.version}
/org.apache.hadoop/hadoop-hdfs = ${org.apache.hadoop.version}
+/org.apache.hadoop/hadoop-hdfs-client = ${org.apache.hadoop.version}
+/org.apache.hadoop/hadoop-minicluster = ${org.apache.hadoop.version}
/org.apache.hadoop/hadoop-minikdc = ${org.apache.hadoop.version}
-/org.apache.htrace/htrace-core = 3.2.0-incubating
+/org.apache.htrace/htrace-core4 = 4.1.0-incubating
# The httpcore version is often different from the httpclient and httpmime versions,
# so the httpcore version value should not share the same symbolic name with them.
@@ -175,14 +146,30 @@ org.apache.james.apache.mime4j.version = 0.8.2
/org.apache.james/apache-mime4j-core = ${org.apache.james.apache.mime4j.version}
/org.apache.james/apache-mime4j-dom = ${org.apache.james.apache.mime4j.version}
+org.apache.kerby.version = 1.0.1
+/org.apache.kerby/kerb-admin = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-client = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-common = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-core = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-crypto = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-identity= ${org.apache.kerby.version}
+/org.apache.kerby/kerb-server = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-simplekdc = ${org.apache.kerby.version}
+/org.apache.kerby/kerb-util = ${org.apache.kerby.version}
+
+/org.apache.kerby/kerby-asn1 = ${org.apache.kerby.version}
+/org.apache.kerby/kerby-config = ${org.apache.kerby.version}
+/org.apache.kerby/kerby-kdc = ${org.apache.kerby.version}
+/org.apache.kerby/kerby-kerb = ${org.apache.kerby.version}
+/org.apache.kerby/kerby-pkix = ${org.apache.kerby.version}
+/org.apache.kerby/kerby-util = ${org.apache.kerby.version}
+
org.apache.logging.log4j.version = 2.11.0
/org.apache.logging.log4j/log4j-1.2-api = ${org.apache.logging.log4j.version}
/org.apache.logging.log4j/log4j-api = ${org.apache.logging.log4j.version}
/org.apache.logging.log4j/log4j-core = ${org.apache.logging.log4j.version}
/org.apache.logging.log4j/log4j-slf4j-impl = ${org.apache.logging.log4j.version}
-/org.apache.mina/mina-core = 2.0.0-M5
-
/org.apache.opennlp/opennlp-tools = 1.9.1
org.apache.pdfbox.version = 2.0.12
@@ -233,10 +220,6 @@ org.carrot2.morfologik.version = 2.1.5
/org.ccil.cowan.tagsoup/tagsoup = 1.2.1
-org.codehaus.jackson.version = 1.9.13
-/org.codehaus.jackson/jackson-core-asl = ${org.codehaus.jackson.version}
-/org.codehaus.jackson/jackson-mapper-asl = ${org.codehaus.jackson.version}
-
org.codehaus.janino.version = 2.7.6
/org.codehaus.janino/commons-compiler = ${org.codehaus.janino.version}
/org.codehaus.janino/janino = ${org.codehaus.janino.version}
@@ -286,11 +269,6 @@ org.gagravarr.vorbis.java.version = 0.8
/org.mockito/mockito-core = 2.23.4
-org.mortbay.jetty.version = 6.1.26
-/org.mortbay.jetty/jetty = ${org.mortbay.jetty.version}
-/org.mortbay.jetty/jetty-sslengine = ${org.mortbay.jetty.version}
-/org.mortbay.jetty/jetty-util = ${org.mortbay.jetty.version}
-
/org.noggit/noggit = 0.8
/org.objenesis/objenesis = 2.6
diff --git a/lucene/tools/src/groovy/check-source-patterns.groovy b/lucene/tools/src/groovy/check-source-patterns.groovy
index c08a7a1..d370d9e 100644
--- a/lucene/tools/src/groovy/check-source-patterns.groovy
+++ b/lucene/tools/src/groovy/check-source-patterns.groovy
@@ -149,6 +149,7 @@ ant.fileScanner{
exclude(name: 'lucene/benchmark/temp/**')
exclude(name: '**/CheckLoggingConfiguration.java')
exclude(name: 'lucene/tools/src/groovy/check-source-patterns.groovy') // ourselves :-)
+ exclude(name: 'solr/core/src/test/org/apache/hadoop/**')
}
}.each{ f ->
task.log('Scanning file: ' + f, Project.MSG_VERBOSE);
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index d7dfb40..ba0410d 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -134,6 +134,8 @@ Upgrade Notes
* SOLR-11774: In 'langid' contrib, the LanguageIdentifierUpdateProcessor base class changed some method signatures.
If you have a custom language identifier implementation you will need to adapt your code.
+* SOLR-9515: Hadoop dependencies have been upgraded to Hadoop 3.2.0 from 2.7.2. (Mark Miller, Kevin Risden)
+
* SOLR-5211: Deleting (or updating) documents by their uniqueKey is now scoped to only consider root documents, not
child/nested documents. Thus a delete-by-id won't work on a child doc (no-op), and an attempt to update a child doc
by providing a new doc with the same ID would add a new doc (probably erroneous). Both these actions were and still
@@ -245,6 +247,8 @@ Other Changes
* SOLR-12365: Renamed class Config to XmlConfigFile (David Smiley)
+* SOLR-9515: Hadoop dependencies have been upgraded to Hadoop 3.2.0 from 2.7.2. (Mark Miller, Kevin Risden)
+
================== 7.8.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
@@ -260,7 +264,6 @@ Jetty 9.4.14.v20181114
(No Changes)
-
================== 7.7.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
diff --git a/solr/core/build.xml b/solr/core/build.xml
index 45bd1b4..3c3d28a 100644
--- a/solr/core/build.xml
+++ b/solr/core/build.xml
@@ -25,6 +25,7 @@
<property name="forbidden-tests-excludes" value="
org/apache/solr/internal/**
+ org/apache/hadoop/**
"/>
<import file="../common-build.xml"/>
diff --git a/solr/core/ivy.xml b/solr/core/ivy.xml
index 80aab20..e695bc5 100644
--- a/solr/core/ivy.xml
+++ b/solr/core/ivy.xml
@@ -63,83 +63,63 @@
<dependency org="com.fasterxml.jackson.core" name="jackson-annotations" rev="${/com.fasterxml.jackson.core/jackson-annotations}" conf="compile"/>
<dependency org="com.fasterxml.jackson.dataformat" name="jackson-dataformat-smile" rev="${/com.fasterxml.jackson.dataformat/jackson-dataformat-smile}" conf="compile"/>
-
+ <dependency org="org.apache.hadoop" name="hadoop-auth" rev="${/org.apache.hadoop/hadoop-auth}" conf="compile.hadoop"/>
<dependency org="org.apache.hadoop" name="hadoop-common" rev="${/org.apache.hadoop/hadoop-common}" conf="compile.hadoop"/>
+ <dependency org="org.apache.hadoop" name="hadoop-hdfs-client" rev="${/org.apache.hadoop/hadoop-hdfs-client}" conf="compile.hadoop"/>
<!--
- hadoop-hdfs, hadoop-annotations and hadoop-auth are runtime dependencies,
+ hadoop-annotations is a runtime dependencies,
so even though they are not compile-time dependencies, they are included
here as such so that they are included in the runtime distribution.
-->
- <dependency org="org.apache.hadoop" name="hadoop-hdfs" rev="${/org.apache.hadoop/hadoop-hdfs}" conf="compile.hadoop"/>
<dependency org="org.apache.hadoop" name="hadoop-annotations" rev="${/org.apache.hadoop/hadoop-annotations}" conf="compile.hadoop"/>
- <dependency org="org.apache.hadoop" name="hadoop-auth" rev="${/org.apache.hadoop/hadoop-auth}" conf="compile.hadoop"/>
- <dependency org="commons-configuration" name="commons-configuration" rev="${/commons-configuration/commons-configuration}" conf="compile.hadoop"/>
+
+ <dependency org="org.apache.commons" name="commons-configuration2" rev="${/org.apache.commons/commons-configuration2}" conf="compile.hadoop"/>
<dependency org="commons-collections" name="commons-collections" rev="${/commons-collections/commons-collections}" conf="compile.hadoop"/>
-
- <dependency org="com.google.protobuf" name="protobuf-java" rev="${/com.google.protobuf/protobuf-java}" conf="compile.hadoop"/>
+ <dependency org="commons-beanutils" name="commons-beanutils" rev="${/commons-beanutils/commons-beanutils}" conf="compile.hadoop"/>
<dependency org="com.github.ben-manes.caffeine" name="caffeine" rev="${/com.github.ben-manes.caffeine/caffeine}" conf="compile.hadoop"/>
- <dependency org="org.apache.htrace" name="htrace-core" rev="${/org.apache.htrace/htrace-core}" conf="compile.hadoop"/>
-
+ <dependency org="com.google.re2j" name="re2j" rev="${/com.google.re2j/re2j}" conf="compile"/>
+ <dependency org="org.apache.commons" name="commons-lang3" rev="${/org.apache.commons/commons-lang3}" conf="compile.hadoop"/>
+ <dependency org="org.apache.htrace" name="htrace-core4" rev="${/org.apache.htrace/htrace-core4}" conf="compile.hadoop"/>
+
+ <dependency org="org.apache.curator" name="curator-framework" rev="${/org.apache.curator/curator-framework}" conf="compile.hadoop"/>
+ <dependency org="org.apache.curator" name="curator-client" rev="${/org.apache.curator/curator-client}" conf="compile.hadoop"/>
+ <dependency org="org.apache.curator" name="curator-recipes" rev="${/org.apache.curator/curator-recipes}" conf="compile.hadoop"/>
+
+ <!-- Hadoop auth framework needs kerby jars on server classpath -->
+ <dependency org="org.apache.kerby" name="kerb-core" rev="${/org.apache.kerby/kerb-core}" conf="compile.hadoop"/>
+ <dependency org="org.apache.kerby" name="kerb-util" rev="${/org.apache.kerby/kerb-util}" conf="compile.hadoop"/>
+ <dependency org="org.apache.kerby" name="kerby-asn1" rev="${/org.apache.kerby/kerby-asn1}" conf="compile.hadoop"/>
+ <dependency org="org.apache.kerby" name="kerby-pkix" rev="${/org.apache.kerby/kerby-pkix}" conf="compile.hadoop"/>
+
<!-- Hadoop DfsMiniCluster Dependencies-->
+ <dependency org="org.apache.hadoop" name="hadoop-minicluster" rev="${/org.apache.hadoop/hadoop-minicluster}" conf="test.DfsMiniCluster" />
<dependency org="org.apache.hadoop" name="hadoop-common" rev="${/org.apache.hadoop/hadoop-common}" conf="test.DfsMiniCluster">
<artifact name="hadoop-common" type="test" ext="jar" maven:classifier="tests" />
</dependency>
<dependency org="org.apache.hadoop" name="hadoop-hdfs" rev="${/org.apache.hadoop/hadoop-hdfs}" conf="test.DfsMiniCluster">
+ <artifact name="hadoop-hdfs" ext="jar" />
<artifact name="hadoop-hdfs" type="test" ext="jar" maven:classifier="tests" />
</dependency>
- <dependency org="org.mortbay.jetty" name="jetty" rev="${/org.mortbay.jetty/jetty}" conf="test.DfsMiniCluster"/>
- <dependency org="org.codehaus.janino" name="commons-compiler" rev="${/org.codehaus.janino/commons-compiler}" conf="compile"/>
- <dependency org="org.mortbay.jetty" name="jetty-util" rev="${/org.mortbay.jetty/jetty-util}" conf="test.DfsMiniCluster"/>
- <dependency org="org.mortbay.jetty" name="jetty-sslengine" rev="${/org.mortbay.jetty/jetty-sslengine}" conf="test.DfsMiniCluster"/>
<dependency org="com.sun.jersey" name="jersey-core" rev="${/com.sun.jersey/jersey-core}" conf="test.DfsMiniCluster"/>
<dependency org="com.sun.jersey" name="jersey-server" rev="${/com.sun.jersey/jersey-server}" conf="test.DfsMiniCluster"/>
- <dependency org="commons-collections" name="commons-collections" rev="${/commons-collections/commons-collections}" conf="test.DfsMiniCluster"/>
+ <dependency org="com.sun.jersey" name="jersey-servlet" rev="${/com.sun.jersey/jersey-servlet}" conf="test.DfsMiniCluster"/>
+ <dependency org="commons-logging" name="commons-logging" rev="${/commons-logging/commons-logging}" conf="test.DfsMiniCluster"/>
<dependency org="io.netty" name="netty-all" rev="${/io.netty/netty-all}" conf="test.DfsMiniCluster"/>
- <dependency org="org.apache.htrace" name="htrace-core" rev="${/org.apache.htrace/htrace-core}" conf="test.DfsMiniCluster"/>
- <dependency org="org.codehaus.jackson" name="jackson-core-asl" rev="${/org.codehaus.jackson/jackson-core-asl}" conf="compile" />
- <dependency org="org.codehaus.jackson" name="jackson-mapper-asl" rev="${/org.codehaus.jackson/jackson-mapper-asl}" conf="compile" />
-
+ <dependency org="org.apache.commons" name="commons-text" rev="${/org.apache.commons/commons-text}" conf="test.DfsMiniCluster"/>
+
<!-- Hadoop MiniKdc Dependencies-->
<dependency org="org.apache.hadoop" name="hadoop-minikdc" rev="${/org.apache.hadoop/hadoop-minikdc}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-core" rev="${/org.apache.directory.server/apacheds-core}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-core-api" rev="${/org.apache.directory.server/apacheds-core-api}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-core-avl" rev="${/org.apache.directory.server/apacheds-core-avl}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-core-shared" rev="${/org.apache.directory.server/apacheds-core-shared}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptor-kerberos" rev="${/org.apache.directory.server/apacheds-interceptor-kerberos}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-admin" rev="${/org.apache.directory.server/apacheds-interceptors-admin}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-authn" rev="${/org.apache.directory.server/apacheds-interceptors-authn}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-authz" rev="${/org.apache.directory.server/apacheds-interceptors-authz}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-changelog" rev="${/org.apache.directory.server/apacheds-interceptors-changelog}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-collective" rev="${/org.apache.directory.server/apacheds-interceptors-collective}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-event" rev="${/org.apache.directory.server/apacheds-interceptors-event}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-exception" rev="${/org.apache.directory.server/apacheds-interceptors-exception}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-journal" rev="${/org.apache.directory.server/apacheds-interceptors-journal}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-normalization" rev="${/org.apache.directory.server/apacheds-interceptors-normalization}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-operational" rev="${/org.apache.directory.server/apacheds-interceptors-operational}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-referral" rev="${/org.apache.directory.server/apacheds-interceptors-referral}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-schema" rev="${/org.apache.directory.server/apacheds-interceptors-schema}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-subtree" rev="${/org.apache.directory.server/apacheds-interceptors-subtree}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-interceptors-trigger" rev="${/org.apache.directory.server/apacheds-interceptors-trigger}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-i18n" rev="${/org.apache.directory.server/apacheds-i18n}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-jdbm-partition" rev="${/org.apache.directory.server/apacheds-jdbm-partition}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-kerberos-codec" rev="${/org.apache.directory.server/apacheds-kerberos-codec}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-ldif-partition" rev="${/org.apache.directory.server/apacheds-ldif-partition}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-mavibot-partition" rev="${/org.apache.directory.server/apacheds-mavibot-partition}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-protocol-kerberos" rev="${/org.apache.directory.server/apacheds-protocol-kerberos}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-protocol-ldap" rev="${/org.apache.directory.server/apacheds-protocol-ldap}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-protocol-shared" rev="${/org.apache.directory.server/apacheds-protocol-shared}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.server" name="apacheds-xdbm-partition" rev="${/org.apache.directory.server/apacheds-xdbm-partition}" conf="test.MiniKdc"/>
-
- <dependency org="org.apache.directory.api" name="api-all" rev="${/org.apache.directory.api/api-all}" conf="test.MiniKdc"/>
- <dependency org="org.apache.directory.jdbm" name="apacheds-jdbm1" rev="${/org.apache.directory.jdbm/apacheds-jdbm1}" conf="test.MiniKdc"/>
- <dependency org="org.apache.mina" name="mina-core" rev="${/org.apache.mina/mina-core}" conf="test.MiniKdc"/>
- <dependency org="org.bouncycastle" name="bcprov-jdk15on" rev="${/org.bouncycastle/bcprov-jdk15on}" conf="test.MiniKdc"/>
- <dependency org="antlr" name="antlr" rev="${/antlr/antlr}" conf="test.MiniKdc"/>
- <dependency org="net.sf.ehcache" name="ehcache-core" rev="${/net.sf.ehcache/ehcache-core}" conf="test.MiniKdc"/>
-
- <dependency org="org.apache.curator" name="curator-framework" rev="${/org.apache.curator/curator-framework}" conf="compile"/>
- <dependency org="org.apache.curator" name="curator-client" rev="${/org.apache.curator/curator-client}" conf="compile"/>
- <dependency org="org.apache.curator" name="curator-recipes" rev="${/org.apache.curator/curator-recipes}" conf="compile"/>
+ <dependency org="org.apache.kerby" name="kerby-config" rev="${/org.apache.kerby/kerby-config}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerby-kerb" rev="${/org.apache.kerby/kerby-kerb}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-client" rev="${/org.apache.kerby/kerb-client}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-common" rev="${/org.apache.kerby/kerb-common}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-crypto" rev="${/org.apache.kerby/kerb-crypto}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-identity" rev="${/org.apache.kerby/kerb-identity}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-server" rev="${/org.apache.kerby/kerb-server}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-simplekdc" rev="${/org.apache.kerby/kerb-simplekdc}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerby-util" rev="${/org.apache.kerby/kerby-util}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerb-admin" rev="${/org.apache.kerby/kerb-admin}" conf="test.MiniKdc"/>
+ <dependency org="org.apache.kerby" name="kerby-kdc" rev="${/org.apache.kerby/kerby-kdc}" conf="test.MiniKdc"/>
<!-- StatsComponents percentiles Dependencies-->
<dependency org="com.tdunning" name="t-digest" rev="${/com.tdunning/t-digest}" conf="compile->*"/>
diff --git a/solr/core/src/java/org/apache/solr/util/FSHDFSUtils.java b/solr/core/src/java/org/apache/solr/util/FSHDFSUtils.java
index e806bab..2ed995c 100644
--- a/solr/core/src/java/org/apache/solr/util/FSHDFSUtils.java
+++ b/solr/core/src/java/org/apache/solr/util/FSHDFSUtils.java
@@ -28,7 +28,6 @@ import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hdfs.DistributedFileSystem;
-import org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -170,7 +169,7 @@ public class FSHDFSUtils {
log.info("recoverLease=" + recovered + ", " +
getLogMessageDetail(nbAttempt, p, startWaiting));
} catch (IOException e) {
- if (e instanceof LeaseExpiredException && e.getMessage().contains("File does not exist")) {
+ if (e.getMessage().contains("File does not exist")) {
// This exception comes out instead of FNFE, fix it
throw new FileNotFoundException("The given transactionlog file wasn't found at " + p);
} else if (e instanceof FileNotFoundException) {
diff --git a/solr/core/src/test/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/BlockPoolSlice.java b/solr/core/src/test/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/BlockPoolSlice.java
new file mode 100644
index 0000000..4564696
--- /dev/null
+++ b/solr/core/src/test/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/BlockPoolSlice.java
@@ -0,0 +1,1044 @@
+/*
+ * 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.
+ */
+package org.apache.hadoop.hdfs.server.datanode.fsdataset.impl;
+
+import java.io.BufferedInputStream;
+import java.io.DataInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStreamWriter;
+import java.io.RandomAccessFile;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Queue;
+import java.util.Scanner;
+import java.util.concurrent.ConcurrentLinkedQueue;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ForkJoinPool;
+import java.util.concurrent.ForkJoinTask;
+import java.util.concurrent.RecursiveAction;
+import java.util.concurrent.atomic.AtomicLong;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.CachingGetSpaceUsed;
+import org.apache.hadoop.fs.CommonConfigurationKeys;
+import org.apache.hadoop.fs.GetSpaceUsed;
+import org.apache.hadoop.hdfs.DFSConfigKeys;
+import org.apache.hadoop.hdfs.DFSUtilClient;
+import org.apache.hadoop.hdfs.protocol.Block;
+import org.apache.hadoop.hdfs.protocol.BlockListAsLongs;
+import org.apache.hadoop.hdfs.protocol.BlockListAsLongs.BlockReportReplica;
+import org.apache.hadoop.hdfs.server.common.HdfsServerConstants.ReplicaState;
+import org.apache.hadoop.hdfs.server.datanode.FileIoProvider;
+import org.apache.hadoop.hdfs.server.datanode.BlockMetadataHeader;
+import org.apache.hadoop.hdfs.server.datanode.DataStorage;
+import org.apache.hadoop.hdfs.server.datanode.DatanodeUtil;
+import org.apache.hadoop.hdfs.server.datanode.ReplicaInfo;
+import org.apache.hadoop.hdfs.server.datanode.ReplicaBuilder;
+import org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.RamDiskReplicaTracker.RamDiskReplica;
+import org.apache.hadoop.hdfs.server.datanode.fsdataset.ReplicaInputStreams;
+import org.apache.hadoop.io.IOUtils;
+import org.apache.hadoop.io.MultipleIOException;
+import org.apache.hadoop.util.AutoCloseableLock;
+import org.apache.hadoop.util.DataChecksum;
+import org.apache.hadoop.util.DiskChecker;
+import org.apache.hadoop.util.DiskChecker.DiskErrorException;
+import org.apache.hadoop.util.ShutdownHookManager;
+import org.apache.hadoop.util.Timer;
+import org.apache.solr.cloud.hdfs.HdfsTestUtil;
+
+import com.google.common.annotations.VisibleForTesting;
+
+/**
+ * A block pool slice represents a portion of a block pool stored on a volume.
+ * Taken together, all BlockPoolSlices sharing a block pool ID across a
+ * cluster represent a single block pool.
+ *
+ * This class is synchronized by {@link FsVolumeImpl}.
+ */
+class BlockPoolSlice {
+ static final Logger LOG = LoggerFactory.getLogger(BlockPoolSlice.class);
+
+ private final String bpid;
+ private final FsVolumeImpl volume; // volume to which this BlockPool belongs to
+ private final File currentDir; // StorageDirectory/current/bpid/current
+ // directory where finalized replicas are stored
+ private final File finalizedDir;
+ private final File lazypersistDir;
+ private final File rbwDir; // directory store RBW replica
+ private final File tmpDir; // directory store Temporary replica
+ private final int ioFileBufferSize;
+ @VisibleForTesting
+ public static final String DU_CACHE_FILE = "dfsUsed";
+ private final Runnable shutdownHook;
+ private volatile boolean dfsUsedSaved = false;
+ private static final int SHUTDOWN_HOOK_PRIORITY = 30;
+ private final boolean deleteDuplicateReplicas;
+ private static final String REPLICA_CACHE_FILE = "replicas";
+ private final long replicaCacheExpiry = 5*60*1000;
+ private AtomicLong numOfBlocks = new AtomicLong();
+ private final long cachedDfsUsedCheckTime;
+ private final Timer timer;
+ private final int maxDataLength;
+ private final FileIoProvider fileIoProvider;
+
+ private static ForkJoinPool addReplicaThreadPool = null;
+ private static final int VOLUMES_REPLICA_ADD_THREADPOOL_SIZE = Runtime
+ .getRuntime().availableProcessors();
+ private static final Comparator<File> FILE_COMPARATOR =
+ new Comparator<File>() {
+ @Override
+ public int compare(File f1, File f2) {
+ return f1.getName().compareTo(f2.getName());
+ }
+ };
+
+ // TODO:FEDERATION scalability issue - a thread per DU is needed
+ private final GetSpaceUsed dfsUsage;
+
+ /**
+ * Create a blook pool slice
+ * @param bpid Block pool Id
+ * @param volume {@link FsVolumeImpl} to which this BlockPool belongs to
+ * @param bpDir directory corresponding to the BlockPool
+ * @param conf configuration
+ * @param timer include methods for getting time
+ * @throws IOException Error making directories
+ */
+ BlockPoolSlice(String bpid, FsVolumeImpl volume, File bpDir,
+ Configuration conf, Timer timer) throws IOException {
+ this.bpid = bpid;
+ this.volume = volume;
+ this.fileIoProvider = volume.getFileIoProvider();
+ this.currentDir = new File(bpDir, DataStorage.STORAGE_DIR_CURRENT);
+ this.finalizedDir = new File(
+ currentDir, DataStorage.STORAGE_DIR_FINALIZED);
+ this.lazypersistDir = new File(currentDir, DataStorage.STORAGE_DIR_LAZY_PERSIST);
+ if (!this.finalizedDir.exists()) {
+ if (!this.finalizedDir.mkdirs()) {
+ throw new IOException("Failed to mkdirs " + this.finalizedDir);
+ }
+ }
+
+ this.ioFileBufferSize = DFSUtilClient.getIoFileBufferSize(conf);
+
+ this.deleteDuplicateReplicas = conf.getBoolean(
+ DFSConfigKeys.DFS_DATANODE_DUPLICATE_REPLICA_DELETION,
+ DFSConfigKeys.DFS_DATANODE_DUPLICATE_REPLICA_DELETION_DEFAULT);
+
+ this.cachedDfsUsedCheckTime =
+ conf.getLong(
+ DFSConfigKeys.DFS_DN_CACHED_DFSUSED_CHECK_INTERVAL_MS,
+ DFSConfigKeys.DFS_DN_CACHED_DFSUSED_CHECK_INTERVAL_DEFAULT_MS);
+
+ this.maxDataLength = conf.getInt(
+ CommonConfigurationKeys.IPC_MAXIMUM_DATA_LENGTH,
+ CommonConfigurationKeys.IPC_MAXIMUM_DATA_LENGTH_DEFAULT);
+
+ this.timer = timer;
+
+ // Files that were being written when the datanode was last shutdown
+ // are now moved back to the data directory. It is possible that
+ // in the future, we might want to do some sort of datanode-local
+ // recovery for these blocks. For example, crc validation.
+ //
+ this.tmpDir = new File(bpDir, DataStorage.STORAGE_DIR_TMP);
+ if (tmpDir.exists()) {
+ fileIoProvider.fullyDelete(volume, tmpDir);
+ }
+ this.rbwDir = new File(currentDir, DataStorage.STORAGE_DIR_RBW);
+
+ // create the rbw and tmp directories if they don't exist.
+ fileIoProvider.mkdirs(volume, rbwDir);
+ fileIoProvider.mkdirs(volume, tmpDir);
+
+ // Use cached value initially if available. Or the following call will
+ // block until the initial du command completes.
+ this.dfsUsage = new CachingGetSpaceUsed.Builder().setPath(bpDir)
+ .setConf(conf)
+ .setInitialUsed(loadDfsUsed())
+ .build();
+ if (addReplicaThreadPool == null) {
+ // initialize add replica fork join pool
+ initializeAddReplicaPool(conf);
+ }
+ // Make the dfs usage to be saved during shutdown.
+ shutdownHook = new Runnable() {
+ @Override
+ public void run() {
+ if (!dfsUsedSaved) {
+ saveDfsUsed();
+ addReplicaThreadPool.shutdownNow();
+ }
+ }
+ };
+ ShutdownHookManager.get().addShutdownHook(shutdownHook,
+ SHUTDOWN_HOOK_PRIORITY);
+ }
+
+ private synchronized void initializeAddReplicaPool(Configuration conf) {
+ if (addReplicaThreadPool == null) {
+ FsDatasetImpl dataset = (FsDatasetImpl) volume.getDataset();
+ int numberOfBlockPoolSlice = dataset.getVolumeCount()
+ * dataset.getBPServiceCount();
+ int poolsize = Math.max(numberOfBlockPoolSlice,
+ VOLUMES_REPLICA_ADD_THREADPOOL_SIZE);
+ // Default pool sizes is max of (volume * number of bp_service) and
+ // number of processor.
+ int parallelism = conf.getInt(
+ DFSConfigKeys.DFS_DATANODE_VOLUMES_REPLICA_ADD_THREADPOOL_SIZE_KEY,
+ poolsize);
+
+ // Needed for SOLR-9515 and HDFS-14251
+ ForkJoinPool.ForkJoinWorkerThreadFactory threadFactory = new HdfsTestUtil.HDFSForkJoinThreadFactory();
+ addReplicaThreadPool = new ForkJoinPool(parallelism, threadFactory, null, false);
+ }
+ }
+
+ File getDirectory() {
+ return currentDir.getParentFile();
+ }
+
+ File getFinalizedDir() {
+ return finalizedDir;
+ }
+
+ File getLazypersistDir() {
+ return lazypersistDir;
+ }
+
+ File getRbwDir() {
+ return rbwDir;
+ }
+
+ File getTmpDir() {
+ return tmpDir;
+ }
+
+ /** Run DU on local drives. It must be synchronized from caller. */
+ void decDfsUsed(long value) {
+ if (dfsUsage instanceof CachingGetSpaceUsed) {
+ ((CachingGetSpaceUsed)dfsUsage).incDfsUsed(-value);
+ }
+ }
+
+ long getDfsUsed() throws IOException {
+ return dfsUsage.getUsed();
+ }
+
+ void incDfsUsed(long value) {
+ if (dfsUsage instanceof CachingGetSpaceUsed) {
+ ((CachingGetSpaceUsed)dfsUsage).incDfsUsed(value);
+ }
+ }
+
+ /**
+ * Read in the cached DU value and return it if it is less than
+ * cachedDfsUsedCheckTime which is set by
+ * dfs.datanode.cached-dfsused.check.interval.ms parameter. Slight imprecision
+ * of dfsUsed is not critical and skipping DU can significantly shorten the
+ * startup time. If the cached value is not available or too old, -1 is
+ * returned.
+ */
+ long loadDfsUsed() {
+ long cachedDfsUsed;
+ long mtime;
+ Scanner sc;
+
+ try {
+ sc = new Scanner(new File(currentDir, DU_CACHE_FILE), "UTF-8");
+ } catch (FileNotFoundException fnfe) {
+ return -1;
+ }
+
+ try {
+ // Get the recorded dfsUsed from the file.
+ if (sc.hasNextLong()) {
+ cachedDfsUsed = sc.nextLong();
+ } else {
+ return -1;
+ }
+ // Get the recorded mtime from the file.
+ if (sc.hasNextLong()) {
+ mtime = sc.nextLong();
+ } else {
+ return -1;
+ }
+
+ // Return the cached value if mtime is okay.
+ if (mtime > 0 && (timer.now() - mtime < cachedDfsUsedCheckTime)) {
+ FsDatasetImpl.LOG.info("Cached dfsUsed found for " + currentDir + ": " +
+ cachedDfsUsed);
+ return cachedDfsUsed;
+ }
+ return -1;
+ } finally {
+ sc.close();
+ }
+ }
+
+ /**
+ * Write the current dfsUsed to the cache file.
+ */
+ void saveDfsUsed() {
+ File outFile = new File(currentDir, DU_CACHE_FILE);
+ if (!fileIoProvider.deleteWithExistsCheck(volume, outFile)) {
+ FsDatasetImpl.LOG.warn("Failed to delete old dfsUsed file in " +
+ outFile.getParent());
+ }
+
+ try {
+ long used = getDfsUsed();
+ try (Writer out = new OutputStreamWriter(
+ new FileOutputStream(outFile), "UTF-8")) {
+ // mtime is written last, so that truncated writes won't be valid.
+ out.write(Long.toString(used) + " " + Long.toString(timer.now()));
+ // This is only called as part of the volume shutdown.
+ // We explicitly avoid calling flush with fileIoProvider which triggers
+ // volume check upon io exception to avoid cyclic volume checks.
+ out.flush();
+ }
+ } catch (IOException ioe) {
+ // If write failed, the volume might be bad. Since the cache file is
+ // not critical, log the error and continue.
+ FsDatasetImpl.LOG.warn("Failed to write dfsUsed to " + outFile, ioe);
+ }
+ }
+
+ /**
+ * Temporary files. They get moved to the finalized block directory when
+ * the block is finalized.
+ */
+ File createTmpFile(Block b) throws IOException {
+ File f = new File(tmpDir, b.getBlockName());
+ File tmpFile = DatanodeUtil.createFileWithExistsCheck(
+ volume, b, f, fileIoProvider);
+ // If any exception during creation, its expected that counter will not be
+ // incremented, So no need to decrement
+ incrNumBlocks();
+ return tmpFile;
+ }
+
+ /**
+ * RBW files. They get moved to the finalized block directory when
+ * the block is finalized.
+ */
+ File createRbwFile(Block b) throws IOException {
+ File f = new File(rbwDir, b.getBlockName());
+ File rbwFile = DatanodeUtil.createFileWithExistsCheck(
+ volume, b, f, fileIoProvider);
+ // If any exception during creation, its expected that counter will not be
+ // incremented, So no need to decrement
+ incrNumBlocks();
+ return rbwFile;
+ }
+
+ File addFinalizedBlock(Block b, ReplicaInfo replicaInfo) throws IOException {
+ File blockDir = DatanodeUtil.idToBlockDir(finalizedDir, b.getBlockId());
+ fileIoProvider.mkdirsWithExistsCheck(volume, blockDir);
+ File blockFile = FsDatasetImpl.moveBlockFiles(b, replicaInfo, blockDir);
+ File metaFile = FsDatasetUtil.getMetaFile(blockFile, b.getGenerationStamp());
+ if (dfsUsage instanceof CachingGetSpaceUsed) {
+ ((CachingGetSpaceUsed) dfsUsage).incDfsUsed(
+ b.getNumBytes() + metaFile.length());
+ }
+ return blockFile;
+ }
+
+ /**
+ * Move a persisted replica from lazypersist directory to a subdirectory
+ * under finalized.
+ */
+ ReplicaInfo activateSavedReplica(ReplicaInfo replicaInfo,
+ RamDiskReplica replicaState) throws IOException {
+ File metaFile = replicaState.getSavedMetaFile();
+ File blockFile = replicaState.getSavedBlockFile();
+ final long blockId = replicaInfo.getBlockId();
+ final File blockDir = DatanodeUtil.idToBlockDir(finalizedDir, blockId);
+ final File targetBlockFile = new File(blockDir, blockFile.getName());
+ final File targetMetaFile = new File(blockDir, metaFile.getName());
+ fileIoProvider.moveFile(volume, blockFile, targetBlockFile);
+ FsDatasetImpl.LOG.info("Moved " + blockFile + " to " + targetBlockFile);
+ fileIoProvider.moveFile(volume, metaFile, targetMetaFile);
+ FsDatasetImpl.LOG.info("Moved " + metaFile + " to " + targetMetaFile);
+
+ ReplicaInfo newReplicaInfo =
+ new ReplicaBuilder(ReplicaState.FINALIZED)
+ .setBlockId(blockId)
+ .setLength(replicaInfo.getBytesOnDisk())
+ .setGenerationStamp(replicaInfo.getGenerationStamp())
+ .setFsVolume(replicaState.getLazyPersistVolume())
+ .setDirectoryToUse(targetBlockFile.getParentFile())
+ .build();
+ return newReplicaInfo;
+ }
+
+ void checkDirs() throws DiskErrorException {
+ DiskChecker.checkDir(finalizedDir);
+ DiskChecker.checkDir(tmpDir);
+ DiskChecker.checkDir(rbwDir);
+ }
+
+ void getVolumeMap(ReplicaMap volumeMap,
+ final RamDiskReplicaTracker lazyWriteReplicaMap)
+ throws IOException {
+ // Recover lazy persist replicas, they will be added to the volumeMap
+ // when we scan the finalized directory.
+ if (lazypersistDir.exists()) {
+ int numRecovered = moveLazyPersistReplicasToFinalized(lazypersistDir);
+ FsDatasetImpl.LOG.info(
+ "Recovered " + numRecovered + " replicas from " + lazypersistDir);
+ }
+
+ boolean success = readReplicasFromCache(volumeMap, lazyWriteReplicaMap);
+ if (!success) {
+ List<IOException> exceptions = Collections
+ .synchronizedList(new ArrayList<IOException>());
+ Queue<RecursiveAction> subTaskQueue =
+ new ConcurrentLinkedQueue<RecursiveAction>();
+
+ // add finalized replicas
+ AddReplicaProcessor task = new AddReplicaProcessor(volumeMap,
+ finalizedDir, lazyWriteReplicaMap, true, exceptions, subTaskQueue);
+ ForkJoinTask<Void> finalizedTask = addReplicaThreadPool.submit(task);
+
+ // add rbw replicas
+ task = new AddReplicaProcessor(volumeMap, rbwDir, lazyWriteReplicaMap,
+ false, exceptions, subTaskQueue);
+ ForkJoinTask<Void> rbwTask = addReplicaThreadPool.submit(task);
+
+ try {
+ finalizedTask.get();
+ rbwTask.get();
+ } catch (InterruptedException | ExecutionException e) {
+ exceptions.add(new IOException(
+ "Failed to start sub tasks to add replica in replica map :"
+ + e.getMessage()));
+ }
+
+ //wait for all the tasks to finish.
+ waitForSubTaskToFinish(subTaskQueue, exceptions);
+ }
+ }
+
+ /**
+ * Wait till all the recursive task for add replica to volume completed.
+ *
+ * @param subTaskQueue
+ * {@link AddReplicaProcessor} tasks list.
+ * @param exceptions
+ * exceptions occurred in sub tasks.
+ * @throws IOException
+ * throw if any sub task or multiple sub tasks failed.
+ */
+ private void waitForSubTaskToFinish(Queue<RecursiveAction> subTaskQueue,
+ List<IOException> exceptions) throws IOException {
+ while (!subTaskQueue.isEmpty()) {
+ RecursiveAction task = subTaskQueue.poll();
+ if (task != null) {
+ task.join();
+ }
+ }
+ if (!exceptions.isEmpty()) {
+ throw MultipleIOException.createIOException(exceptions);
+ }
+ }
+
+ /**
+ * Recover an unlinked tmp file on datanode restart. If the original block
+ * does not exist, then the tmp file is renamed to be the
+ * original file name and the original name is returned; otherwise the tmp
+ * file is deleted and null is returned.
+ */
+ File recoverTempUnlinkedBlock(File unlinkedTmp) throws IOException {
+ File blockFile = FsDatasetUtil.getOrigFile(unlinkedTmp);
+ if (blockFile.exists()) {
+ // If the original block file still exists, then no recovery is needed.
+ if (!fileIoProvider.delete(volume, unlinkedTmp)) {
+ throw new IOException("Unable to cleanup unlinked tmp file " +
+ unlinkedTmp);
+ }
+ return null;
+ } else {
+ fileIoProvider.rename(volume, unlinkedTmp, blockFile);
+ return blockFile;
+ }
+ }
+
+
+ /**
+ * Move replicas in the lazy persist directory to their corresponding locations
+ * in the finalized directory.
+ * @return number of replicas recovered.
+ */
+ private int moveLazyPersistReplicasToFinalized(File source)
+ throws IOException {
+ File[] files = fileIoProvider.listFiles(volume, source);
+ int numRecovered = 0;
+ for (File file : files) {
+ if (file.isDirectory()) {
+ numRecovered += moveLazyPersistReplicasToFinalized(file);
+ }
+
+ if (Block.isMetaFilename(file.getName())) {
+ File metaFile = file;
+ File blockFile = Block.metaToBlockFile(metaFile);
+ long blockId = Block.filename2id(blockFile.getName());
+ File targetDir = DatanodeUtil.idToBlockDir(finalizedDir, blockId);
+
+ if (blockFile.exists()) {
+
+ try {
+ fileIoProvider.mkdirsWithExistsCheck(volume, targetDir);
+ } catch(IOException ioe) {
+ LOG.warn("Failed to mkdirs " + targetDir);
+ continue;
+ }
+
+ final File targetMetaFile = new File(targetDir, metaFile.getName());
+ try {
+ fileIoProvider.rename(volume, metaFile, targetMetaFile);
+ } catch (IOException e) {
+ LOG.warn("Failed to move meta file from "
+ + metaFile + " to " + targetMetaFile, e);
+ continue;
+ }
+
+ final File targetBlockFile = new File(targetDir, blockFile.getName());
+ try {
+ fileIoProvider.rename(volume, blockFile, targetBlockFile);
+ } catch (IOException e) {
+ LOG.warn("Failed to move block file from "
+ + blockFile + " to " + targetBlockFile, e);
+ continue;
+ }
+
+ if (targetBlockFile.exists() && targetMetaFile.exists()) {
+ ++numRecovered;
+ } else {
+ // Failure should be rare.
+ LOG.warn("Failed to move " + blockFile + " to " + targetDir);
+ }
+ }
+ }
+ }
+
+ fileIoProvider.fullyDelete(volume, source);
+ return numRecovered;
+ }
+
+ private void addReplicaToReplicasMap(Block block, ReplicaMap volumeMap,
+ final RamDiskReplicaTracker lazyWriteReplicaMap,boolean isFinalized)
+ throws IOException {
+ ReplicaInfo newReplica = null;
+ long blockId = block.getBlockId();
+ long genStamp = block.getGenerationStamp();
+ if (isFinalized) {
+ newReplica = new ReplicaBuilder(ReplicaState.FINALIZED)
+ .setBlockId(blockId)
+ .setLength(block.getNumBytes())
+ .setGenerationStamp(genStamp)
+ .setFsVolume(volume)
+ .setDirectoryToUse(DatanodeUtil.idToBlockDir(finalizedDir, blockId))
+ .build();
+ } else {
+ File file = new File(rbwDir, block.getBlockName());
+ boolean loadRwr = true;
+ File restartMeta = new File(file.getParent() +
+ File.pathSeparator + "." + file.getName() + ".restart");
+ Scanner sc = null;
+ try {
+ sc = new Scanner(restartMeta, "UTF-8");
+ // The restart meta file exists
+ if (sc.hasNextLong() && (sc.nextLong() > timer.now())) {
+ // It didn't expire. Load the replica as a RBW.
+ // We don't know the expected block length, so just use 0
+ // and don't reserve any more space for writes.
+ newReplica = new ReplicaBuilder(ReplicaState.RBW)
+ .setBlockId(blockId)
+ .setLength(validateIntegrityAndSetLength(file, genStamp))
+ .setGenerationStamp(genStamp)
+ .setFsVolume(volume)
+ .setDirectoryToUse(file.getParentFile())
+ .setWriterThread(null)
+ .setBytesToReserve(0)
+ .build();
+ loadRwr = false;
+ }
+ sc.close();
+ if (!fileIoProvider.delete(volume, restartMeta)) {
+ FsDatasetImpl.LOG.warn("Failed to delete restart meta file: " +
+ restartMeta.getPath());
+ }
+ } catch (FileNotFoundException fnfe) {
+ // nothing to do hereFile dir =
+ } finally {
+ if (sc != null) {
+ sc.close();
+ }
+ }
+ // Restart meta doesn't exist or expired.
+ if (loadRwr) {
+ ReplicaBuilder builder = new ReplicaBuilder(ReplicaState.RWR)
+ .setBlockId(blockId)
+ .setLength(validateIntegrityAndSetLength(file, genStamp))
+ .setGenerationStamp(genStamp)
+ .setFsVolume(volume)
+ .setDirectoryToUse(file.getParentFile());
+ newReplica = builder.build();
+ }
+ }
+
+ ReplicaInfo tmpReplicaInfo = volumeMap.addAndGet(bpid, newReplica);
+ ReplicaInfo oldReplica = (tmpReplicaInfo == newReplica) ? null
+ : tmpReplicaInfo;
+ if (oldReplica != null) {
+ // We have multiple replicas of the same block so decide which one
+ // to keep.
+ newReplica = resolveDuplicateReplicas(newReplica, oldReplica, volumeMap);
+ }
+
+ // If we are retaining a replica on transient storage make sure
+ // it is in the lazyWriteReplicaMap so it can be persisted
+ // eventually.
+ if (newReplica.getVolume().isTransientStorage()) {
+ lazyWriteReplicaMap.addReplica(bpid, blockId,
+ (FsVolumeImpl) newReplica.getVolume(), 0);
+ } else {
+ lazyWriteReplicaMap.discardReplica(bpid, blockId, false);
+ }
+ if (oldReplica == null) {
+ incrNumBlocks();
+ }
+ }
+
+
+ /**
+ * Add replicas under the given directory to the volume map
+ * @param volumeMap the replicas map
+ * @param dir an input directory
+ * @param lazyWriteReplicaMap Map of replicas on transient
+ * storage.
+ * @param isFinalized true if the directory has finalized replicas;
+ * false if the directory has rbw replicas
+ * @param exceptions list of exception which need to return to parent thread.
+ * @param subTaskQueue queue of sub tasks
+ */
+ void addToReplicasMap(ReplicaMap volumeMap, File dir,
+ final RamDiskReplicaTracker lazyWriteReplicaMap, boolean isFinalized,
+ List<IOException> exceptions, Queue<RecursiveAction> subTaskQueue)
+ throws IOException {
+ File[] files = fileIoProvider.listFiles(volume, dir);
+ Arrays.sort(files, FILE_COMPARATOR);
+ for (int i = 0; i < files.length; i++) {
+ File file = files[i];
+ if (file.isDirectory()) {
+ // Launch new sub task.
+ AddReplicaProcessor subTask = new AddReplicaProcessor(volumeMap, file,
+ lazyWriteReplicaMap, isFinalized, exceptions, subTaskQueue);
+ subTask.fork();
+ subTaskQueue.add(subTask);
+ }
+
+ if (isFinalized && FsDatasetUtil.isUnlinkTmpFile(file)) {
+ file = recoverTempUnlinkedBlock(file);
+ if (file == null) { // the original block still exists, so we cover it
+ // in another iteration and can continue here
+ continue;
+ }
+ }
+ if (!Block.isBlockFilename(file)) {
+ continue;
+ }
+
+ long genStamp = FsDatasetUtil.getGenerationStampFromFile(
+ files, file, i);
+ long blockId = Block.filename2id(file.getName());
+ Block block = new Block(blockId, file.length(), genStamp);
+ addReplicaToReplicasMap(block, volumeMap, lazyWriteReplicaMap,
+ isFinalized);
+ }
+ }
+
+ /**
+ * This method is invoked during DN startup when volumes are scanned to
+ * build up the volumeMap.
+ *
+ * Given two replicas, decide which one to keep. The preference is as
+ * follows:
+ * 1. Prefer the replica with the higher generation stamp.
+ * 2. If generation stamps are equal, prefer the replica with the
+ * larger on-disk length.
+ * 3. If on-disk length is the same, prefer the replica on persistent
+ * storage volume.
+ * 4. All other factors being equal, keep replica1.
+ *
+ * The other replica is removed from the volumeMap and is deleted from
+ * its storage volume.
+ *
+ * @param replica1 first replica
+ * @param replica2 second replica
+ * @param volumeMap volume map to update
+ * @return the replica that is retained.
+ */
+ ReplicaInfo resolveDuplicateReplicas(
+ final ReplicaInfo replica1, final ReplicaInfo replica2,
+ final ReplicaMap volumeMap) {
+
+ if (!deleteDuplicateReplicas) {
+ // Leave both block replicas in place.
+ return replica1;
+ }
+ final ReplicaInfo replicaToDelete =
+ selectReplicaToDelete(replica1, replica2);
+ final ReplicaInfo replicaToKeep =
+ (replicaToDelete != replica1) ? replica1 : replica2;
+ // Update volumeMap and delete the replica
+ volumeMap.add(bpid, replicaToKeep);
+ if (replicaToDelete != null) {
+ deleteReplica(replicaToDelete);
+ }
+ return replicaToKeep;
+ }
+
+ @VisibleForTesting
+ static ReplicaInfo selectReplicaToDelete(final ReplicaInfo replica1,
+ final ReplicaInfo replica2) {
+ ReplicaInfo replicaToKeep;
+ ReplicaInfo replicaToDelete;
+
+ // it's the same block so don't ever delete it, even if GS or size
+ // differs. caller should keep the one it just discovered on disk
+ if (replica1.getBlockURI().equals(replica2.getBlockURI())) {
+ return null;
+ }
+ if (replica1.getGenerationStamp() != replica2.getGenerationStamp()) {
+ replicaToKeep = replica1.getGenerationStamp() > replica2.getGenerationStamp()
+ ? replica1 : replica2;
+ } else if (replica1.getNumBytes() != replica2.getNumBytes()) {
+ replicaToKeep = replica1.getNumBytes() > replica2.getNumBytes() ?
+ replica1 : replica2;
+ } else if (replica1.getVolume().isTransientStorage() &&
+ !replica2.getVolume().isTransientStorage()) {
+ replicaToKeep = replica2;
+ } else {
+ replicaToKeep = replica1;
+ }
+
+ replicaToDelete = (replicaToKeep == replica1) ? replica2 : replica1;
+
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("resolveDuplicateReplicas decide to keep " + replicaToKeep
+ + ". Will try to delete " + replicaToDelete);
+ }
+ return replicaToDelete;
+ }
+
+ private void deleteReplica(final ReplicaInfo replicaToDelete) {
+ // Delete the files on disk. Failure here is okay.
+ if (!replicaToDelete.deleteBlockData()) {
+ LOG.warn("Failed to delete block file for replica " + replicaToDelete);
+ }
+ if (!replicaToDelete.deleteMetadata()) {
+ LOG.warn("Failed to delete meta file for replica " + replicaToDelete);
+ }
+ }
+
+ /**
+ * Find out the number of bytes in the block that match its crc.
+ *
+ * This algorithm assumes that data corruption caused by unexpected
+ * datanode shutdown occurs only in the last crc chunk. So it checks
+ * only the last chunk.
+ *
+ * @param blockFile the block file
+ * @param genStamp generation stamp of the block
+ * @return the number of valid bytes
+ */
+ private long validateIntegrityAndSetLength(File blockFile, long genStamp) {
+ try {
+ final File metaFile = FsDatasetUtil.getMetaFile(blockFile, genStamp);
+ long blockFileLen = blockFile.length();
+ long metaFileLen = metaFile.length();
+ int crcHeaderLen = DataChecksum.getChecksumHeaderSize();
+ if (!blockFile.exists() || blockFileLen == 0 ||
+ !metaFile.exists() || metaFileLen < crcHeaderLen) {
+ return 0;
+ }
+ try (DataInputStream checksumIn = new DataInputStream(
+ new BufferedInputStream(
+ fileIoProvider.getFileInputStream(volume, metaFile),
+ ioFileBufferSize))) {
+ // read and handle the common header here. For now just a version
+ final DataChecksum checksum = BlockMetadataHeader.readDataChecksum(
+ checksumIn, metaFile);
+ int bytesPerChecksum = checksum.getBytesPerChecksum();
+ int checksumSize = checksum.getChecksumSize();
+ long numChunks = Math.min(
+ (blockFileLen + bytesPerChecksum - 1) / bytesPerChecksum,
+ (metaFileLen - crcHeaderLen) / checksumSize);
+ if (numChunks == 0) {
+ return 0;
+ }
+ try (InputStream blockIn = fileIoProvider.getFileInputStream(
+ volume, blockFile);
+ ReplicaInputStreams ris = new ReplicaInputStreams(blockIn,
+ checksumIn, volume.obtainReference(), fileIoProvider)) {
+ ris.skipChecksumFully((numChunks - 1) * checksumSize);
+ long lastChunkStartPos = (numChunks - 1) * bytesPerChecksum;
+ ris.skipDataFully(lastChunkStartPos);
+ int lastChunkSize = (int) Math.min(
+ bytesPerChecksum, blockFileLen - lastChunkStartPos);
+ byte[] buf = new byte[lastChunkSize + checksumSize];
+ ris.readChecksumFully(buf, lastChunkSize, checksumSize);
+ ris.readDataFully(buf, 0, lastChunkSize);
+ checksum.update(buf, 0, lastChunkSize);
+ long validFileLength;
+ if (checksum.compare(buf, lastChunkSize)) { // last chunk matches crc
+ validFileLength = lastChunkStartPos + lastChunkSize;
+ } else { // last chunk is corrupt
+ validFileLength = lastChunkStartPos;
+ }
+ // truncate if extra bytes are present without CRC
+ if (blockFile.length() > validFileLength) {
+ try (RandomAccessFile blockRAF =
+ fileIoProvider.getRandomAccessFile(
+ volume, blockFile, "rw")) {
+ // truncate blockFile
+ blockRAF.setLength(validFileLength);
+ }
+ }
+ return validFileLength;
+ }
+ }
+ } catch (IOException e) {
+ FsDatasetImpl.LOG.warn("Getting exception while validating integrity " +
+ "and setting length for blockFile", e);
+ return 0;
+ }
+ }
+
+ @Override
+ public String toString() {
+ return currentDir.getAbsolutePath();
+ }
+
+ void shutdown(BlockListAsLongs blocksListToPersist) {
+ saveReplicas(blocksListToPersist);
+ saveDfsUsed();
+ dfsUsedSaved = true;
+
+ // Remove the shutdown hook to avoid any memory leak
+ if (shutdownHook != null) {
+ ShutdownHookManager.get().removeShutdownHook(shutdownHook);
+ }
+
+ if (dfsUsage instanceof CachingGetSpaceUsed) {
+ IOUtils.cleanupWithLogger(LOG, ((CachingGetSpaceUsed) dfsUsage));
+ }
+ }
+
+ private boolean readReplicasFromCache(ReplicaMap volumeMap,
+ final RamDiskReplicaTracker lazyWriteReplicaMap) {
+ ReplicaMap tmpReplicaMap = new ReplicaMap(new AutoCloseableLock());
+ File replicaFile = new File(currentDir, REPLICA_CACHE_FILE);
+ // Check whether the file exists or not.
+ if (!replicaFile.exists()) {
+ LOG.info("Replica Cache file: "+ replicaFile.getPath() +
+ " doesn't exist ");
+ return false;
+ }
+ long fileLastModifiedTime = replicaFile.lastModified();
+ if (System.currentTimeMillis() > fileLastModifiedTime + replicaCacheExpiry) {
+ LOG.info("Replica Cache file: " + replicaFile.getPath() +
+ " has gone stale");
+ // Just to make findbugs happy
+ if (!replicaFile.delete()) {
+ LOG.info("Replica Cache file: " + replicaFile.getPath() +
+ " cannot be deleted");
+ }
+ return false;
+ }
+ FileInputStream inputStream = null;
+ try {
+ inputStream = fileIoProvider.getFileInputStream(volume, replicaFile);
+ BlockListAsLongs blocksList =
+ BlockListAsLongs.readFrom(inputStream, maxDataLength);
+ if (blocksList == null) {
+ return false;
+ }
+
+ for (BlockReportReplica replica : blocksList) {
+ switch (replica.getState()) {
+ case FINALIZED:
+ addReplicaToReplicasMap(replica, tmpReplicaMap, lazyWriteReplicaMap, true);
+ break;
+ case RUR:
+ case RBW:
+ case RWR:
+ addReplicaToReplicasMap(replica, tmpReplicaMap, lazyWriteReplicaMap, false);
+ break;
+ default:
+ break;
+ }
+ }
+ // Now it is safe to add the replica into volumeMap
+ // In case of any exception during parsing this cache file, fall back
+ // to scan all the files on disk.
+ for (Iterator<ReplicaInfo> iter =
+ tmpReplicaMap.replicas(bpid).iterator(); iter.hasNext(); ) {
+ ReplicaInfo info = iter.next();
+ // We use a lightweight GSet to store replicaInfo, we need to remove
+ // it from one GSet before adding to another.
+ iter.remove();
+ volumeMap.add(bpid, info);
+ }
+ LOG.info("Successfully read replica from cache file : "
+ + replicaFile.getPath());
+ return true;
+ } catch (Exception e) {
+ // Any exception we need to revert back to read from disk
+ // Log the error and return false
+ LOG.info("Exception occurred while reading the replicas cache file: "
+ + replicaFile.getPath(), e );
+ return false;
+ }
+ finally {
+ // close the inputStream
+ IOUtils.closeStream(inputStream);
+
+ if (!fileIoProvider.delete(volume, replicaFile)) {
+ LOG.info("Failed to delete replica cache file: " +
+ replicaFile.getPath());
+ }
+ }
+ }
+
+ private void saveReplicas(BlockListAsLongs blocksListToPersist) {
+ if (blocksListToPersist == null ||
+ blocksListToPersist.getNumberOfBlocks()== 0) {
+ return;
+ }
+ final File tmpFile = new File(currentDir, REPLICA_CACHE_FILE + ".tmp");
+ final File replicaCacheFile = new File(currentDir, REPLICA_CACHE_FILE);
+ if (!fileIoProvider.deleteWithExistsCheck(volume, tmpFile) ||
+ !fileIoProvider.deleteWithExistsCheck(volume, replicaCacheFile)) {
+ return;
+ }
+
+ FileOutputStream out = null;
+ try {
+ out = fileIoProvider.getFileOutputStream(volume, tmpFile);
+ blocksListToPersist.writeTo(out);
+ out.close();
+ // Renaming the tmp file to replicas
+ fileIoProvider.moveFile(volume, tmpFile, replicaCacheFile);
+ } catch (Exception e) {
+ // If write failed, the volume might be bad. Since the cache file is
+ // not critical, log the error, delete both the files (tmp and cache)
+ // and continue.
+ LOG.warn("Failed to write replicas to cache ", e);
+ fileIoProvider.deleteWithExistsCheck(volume, replicaCacheFile);
+ } finally {
+ IOUtils.closeStream(out);
+ fileIoProvider.deleteWithExistsCheck(volume, tmpFile);
+ }
+ }
+
+ void incrNumBlocks() {
+ numOfBlocks.incrementAndGet();
+ }
+
+ void decrNumBlocks() {
+ numOfBlocks.decrementAndGet();
+ }
+
+ public long getNumOfBlocks() {
+ return numOfBlocks.get();
+ }
+
+ /**
+ * Recursive action for add replica in map.
+ */
+ class AddReplicaProcessor extends RecursiveAction {
+
+ private ReplicaMap volumeMap;
+ private File dir;
+ private RamDiskReplicaTracker lazyWriteReplicaMap;
+ private boolean isFinalized;
+ private List<IOException> exceptions;
+ private Queue<RecursiveAction> subTaskQueue;
+
+ /**
+ * @param volumeMap
+ * the replicas map
+ * @param dir
+ * an input directory
+ * @param lazyWriteReplicaMap
+ * Map of replicas on transient storage.
+ * @param isFinalized
+ * true if the directory has finalized replicas; false if the
+ * directory has rbw replicas
+ * @param exceptions
+ * List of exception which need to return to parent thread.
+ * @param subTaskQueue
+ * queue of sub tasks
+ */
+ AddReplicaProcessor(ReplicaMap volumeMap, File dir,
+ RamDiskReplicaTracker lazyWriteReplicaMap, boolean isFinalized,
+ List<IOException> exceptions, Queue<RecursiveAction> subTaskQueue) {
+ this.volumeMap = volumeMap;
+ this.dir = dir;
+ this.lazyWriteReplicaMap = lazyWriteReplicaMap;
+ this.isFinalized = isFinalized;
+ this.exceptions = exceptions;
+ this.subTaskQueue = subTaskQueue;
+ }
+
+ @Override
+ protected void compute() {
+ try {
+ addToReplicasMap(volumeMap, dir, lazyWriteReplicaMap, isFinalized,
+ exceptions, subTaskQueue);
+ } catch (IOException e) {
+ LOG.warn("Caught exception while adding replicas from " + volume
+ + " in subtask. Will throw later.", e);
+ exceptions.add(e);
+ }
+ }
+ }
+
+ /**
+ * Return the size of fork pool used for adding replica in map.
+ */
+ @VisibleForTesting
+ public static int getAddReplicaForkPoolSize() {
+ return addReplicaThreadPool.getPoolSize();
+ }
+}
diff --git a/solr/core/src/test/org/apache/hadoop/http/HttpServer2.java b/solr/core/src/test/org/apache/hadoop/http/HttpServer2.java
new file mode 100644
index 0000000..5962beb
--- /dev/null
+++ b/solr/core/src/test/org/apache/hadoop/http/HttpServer2.java
@@ -0,0 +1,1685 @@
+/*
+ * 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.
+ */
+package org.apache.hadoop.http;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InterruptedIOException;
+import java.io.PrintStream;
+import java.net.BindException;
+import java.net.InetSocketAddress;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import javax.servlet.Filter;
+import javax.servlet.FilterChain;
+import javax.servlet.FilterConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import javax.servlet.http.HttpServletResponse;
+
+import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Lists;
+import com.sun.jersey.spi.container.servlet.ServletContainer;
+import org.apache.hadoop.HadoopIllegalArgumentException;
+import org.apache.hadoop.classification.InterfaceAudience;
+import org.apache.hadoop.classification.InterfaceStability;
+import org.apache.hadoop.conf.ConfServlet;
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.conf.Configuration.IntegerRanges;
+import org.apache.hadoop.fs.CommonConfigurationKeys;
+import org.apache.hadoop.jmx.JMXJsonServlet;
+import org.apache.hadoop.log.LogLevel;
+import org.apache.hadoop.security.AuthenticationFilterInitializer;
+import org.apache.hadoop.security.SecurityUtil;
+import org.apache.hadoop.security.UserGroupInformation;
+import org.apache.hadoop.security.authentication.server.AuthenticationFilter;
+import org.apache.hadoop.security.authentication.util.SignerSecretProvider;
+import org.apache.hadoop.security.authorize.AccessControlList;
+import org.apache.hadoop.security.ssl.SSLFactory;
+import org.apache.hadoop.util.ReflectionUtils;
+import org.apache.hadoop.util.Shell;
+import org.apache.hadoop.util.StringUtils;
+import org.eclipse.jetty.http.HttpVersion;
+import org.eclipse.jetty.server.ConnectionFactory;
+import org.eclipse.jetty.server.Connector;
+import org.eclipse.jetty.server.Handler;
+import org.eclipse.jetty.server.HttpConfiguration;
+import org.eclipse.jetty.server.HttpConnectionFactory;
+import org.eclipse.jetty.server.RequestLog;
+import org.eclipse.jetty.server.SecureRequestCustomizer;
+import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.ServerConnector;
+import org.eclipse.jetty.server.SslConnectionFactory;
+import org.eclipse.jetty.server.handler.ContextHandlerCollection;
+import org.eclipse.jetty.server.handler.HandlerCollection;
+import org.eclipse.jetty.server.handler.RequestLogHandler;
+import org.eclipse.jetty.server.session.SessionHandler;
+import org.eclipse.jetty.servlet.DefaultServlet;
+import org.eclipse.jetty.servlet.FilterHolder;
+import org.eclipse.jetty.servlet.FilterMapping;
+import org.eclipse.jetty.servlet.ServletContextHandler;
+import org.eclipse.jetty.servlet.ServletHandler;
+import org.eclipse.jetty.servlet.ServletHolder;
+import org.eclipse.jetty.servlet.ServletMapping;
+import org.eclipse.jetty.util.ArrayUtil;
+import org.eclipse.jetty.util.MultiException;
+import org.eclipse.jetty.util.ssl.SslContextFactory;
+import org.eclipse.jetty.util.thread.QueuedThreadPool;
+import org.eclipse.jetty.webapp.WebAppContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Create a Jetty embedded server to answer http requests. The primary goal is
+ * to serve up status information for the server. There are three contexts:
+ * "/logs/" points to the log directory "/static/" points to common static
+ * files (src/webapps/static) "/" the jsp server code from
+ * (src/webapps/NAME)
+ *
+ * This class is a fork of the old HttpServer. HttpServer exists for
+ * compatibility reasons. See HBASE-10336 for more details.
+ */
+@InterfaceAudience.Private
+@InterfaceStability.Evolving
+public final class HttpServer2 implements FilterContainer {
+ public static final Logger LOG = LoggerFactory.getLogger(HttpServer2.class);
+
+ public static final String HTTP_SCHEME = "http";
+ public static final String HTTPS_SCHEME = "https";
+
+ public static final String HTTP_MAX_REQUEST_HEADER_SIZE_KEY =
+ "hadoop.http.max.request.header.size";
+ public static final int HTTP_MAX_REQUEST_HEADER_SIZE_DEFAULT = 65536;
+ public static final String HTTP_MAX_RESPONSE_HEADER_SIZE_KEY =
+ "hadoop.http.max.response.header.size";
+ public static final int HTTP_MAX_RESPONSE_HEADER_SIZE_DEFAULT = 65536;
+
+ public static final String HTTP_SOCKET_BACKLOG_SIZE_KEY =
+ "hadoop.http.socket.backlog.size";
+ public static final int HTTP_SOCKET_BACKLOG_SIZE_DEFAULT = 128;
+ public static final String HTTP_MAX_THREADS_KEY = "hadoop.http.max.threads";
+ public static final String HTTP_ACCEPTOR_COUNT_KEY =
+ "hadoop.http.acceptor.count";
+ // -1 to use default behavior of setting count based on CPU core count
+ public static final int HTTP_ACCEPTOR_COUNT_DEFAULT = -1;
+ public static final String HTTP_SELECTOR_COUNT_KEY =
+ "hadoop.http.selector.count";
+ // -1 to use default behavior of setting count based on CPU core count
+ public static final int HTTP_SELECTOR_COUNT_DEFAULT = -1;
+ // idle timeout in milliseconds
+ public static final String HTTP_IDLE_TIMEOUT_MS_KEY =
+ "hadoop.http.idle_timeout.ms";
+ public static final int HTTP_IDLE_TIMEOUT_MS_DEFAULT = 10000;
+ public static final String HTTP_TEMP_DIR_KEY = "hadoop.http.temp.dir";
+
+ public static final String FILTER_INITIALIZER_PROPERTY
+ = "hadoop.http.filter.initializers";
+
+ // The ServletContext attribute where the daemon Configuration
+ // gets stored.
+ public static final String CONF_CONTEXT_ATTRIBUTE = "hadoop.conf";
+ public static final String ADMINS_ACL = "admins.acl";
+ public static final String SPNEGO_FILTER = "SpnegoFilter";
+ public static final String NO_CACHE_FILTER = "NoCacheFilter";
+
+ public static final String BIND_ADDRESS = "bind.address";
+
+ private final AccessControlList adminsAcl;
+
+ protected final Server webServer;
+
+ private final HandlerCollection handlers;
+
+ private final List<ServerConnector> listeners = Lists.newArrayList();
+
+ protected final WebAppContext webAppContext;
+ protected final boolean findPort;
+ protected final IntegerRanges portRanges;
+ private final Map<ServletContextHandler, Boolean> defaultContexts =
+ new HashMap<>();
+ protected final List<String> filterNames = new ArrayList<>();
+ static final String STATE_DESCRIPTION_ALIVE = " - alive";
+ static final String STATE_DESCRIPTION_NOT_LIVE = " - not live";
+ private final SignerSecretProvider secretProvider;
+ private XFrameOption xFrameOption;
+ private boolean xFrameOptionIsEnabled;
+ public static final String HTTP_HEADER_PREFIX = "hadoop.http.header.";
+ private static final String HTTP_HEADER_REGEX =
+ "hadoop\\.http\\.header\\.([a-zA-Z\\-_]+)";
+ static final String X_XSS_PROTECTION =
+ "X-XSS-Protection:1; mode=block";
+ static final String X_CONTENT_TYPE_OPTIONS =
+ "X-Content-Type-Options:nosniff";
+ private static final String X_FRAME_OPTIONS = "X-FRAME-OPTIONS";
+ private static final Pattern PATTERN_HTTP_HEADER_REGEX =
+ Pattern.compile(HTTP_HEADER_REGEX);
+ /**
+ * Class to construct instances of HTTP server with specific options.
+ */
+ public static class Builder {
+ private ArrayList<URI> endpoints = Lists.newArrayList();
+ private String name;
+ private Configuration conf;
+ private Configuration sslConf;
+ private String[] pathSpecs;
+ private AccessControlList adminsAcl;
+ private boolean securityEnabled = false;
+ private String usernameConfKey;
+ private String keytabConfKey;
+ private boolean needsClientAuth;
+ private String trustStore;
+ private String trustStorePassword;
+ private String trustStoreType;
+
+ private String keyStore;
+ private String keyStorePassword;
+ private String keyStoreType;
+
+ // The -keypass option in keytool
+ private String keyPassword;
+
+ private boolean findPort;
+ private IntegerRanges portRanges = null;
+
+ private String hostName;
+ private boolean disallowFallbackToRandomSignerSecretProvider;
+ private String authFilterConfigurationPrefix = "hadoop.http.authentication.";
+ private String excludeCiphers;
+
+ private boolean xFrameEnabled;
+ private XFrameOption xFrameOption = XFrameOption.SAMEORIGIN;
+
+ public Builder setName(String name){
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Add an endpoint that the HTTP server should listen to.
+ *
+ * @param endpoint
+ * the endpoint of that the HTTP server should listen to. The
+ * scheme specifies the protocol (i.e. HTTP / HTTPS), the host
+ * specifies the binding address, and the port specifies the
+ * listening port. Unspecified or zero port means that the server
+ * can listen to any port.
+ */
+ public Builder addEndpoint(URI endpoint) {
+ endpoints.add(endpoint);
+ return this;
+ }
+
+ /**
+ * Set the hostname of the http server. The host name is used to resolve the
+ * _HOST field in Kerberos principals. The hostname of the first listener
+ * will be used if the name is unspecified.
+ */
+ public Builder hostName(String hostName) {
+ this.hostName = hostName;
+ return this;
+ }
+
+ public Builder trustStore(String location, String password, String type) {
+ this.trustStore = location;
+ this.trustStorePassword = password;
+ this.trustStoreType = type;
+ return this;
+ }
+
+ public Builder keyStore(String location, String password, String type) {
+ this.keyStore = location;
+ this.keyStorePassword = password;
+ this.keyStoreType = type;
+ return this;
+ }
+
+ public Builder keyPassword(String password) {
+ this.keyPassword = password;
+ return this;
+ }
+
+ /**
+ * Specify whether the server should authorize the client in SSL
+ * connections.
+ */
+ public Builder needsClientAuth(boolean value) {
+ this.needsClientAuth = value;
+ return this;
+ }
+
+ public Builder setFindPort(boolean findPort) {
+ this.findPort = findPort;
+ return this;
+ }
+
+ public Builder setPortRanges(IntegerRanges ranges) {
+ this.portRanges = ranges;
+ return this;
+ }
+
+ public Builder setConf(Configuration conf) {
+ this.conf = conf;
+ return this;
+ }
+
+ /**
+ * Specify the SSL configuration to load. This API provides an alternative
+ * to keyStore/keyPassword/trustStore.
+ */
+ public Builder setSSLConf(Configuration sslCnf) {
+ this.sslConf = sslCnf;
+ return this;
+ }
+
+ public Builder setPathSpec(String[] pathSpec) {
+ this.pathSpecs = pathSpec;
+ return this;
+ }
+
+ public Builder setACL(AccessControlList acl) {
+ this.adminsAcl = acl;
+ return this;
+ }
+
+ public Builder setSecurityEnabled(boolean securityEnabled) {
+ this.securityEnabled = securityEnabled;
+ return this;
+ }
+
+ public Builder setUsernameConfKey(String usernameConfKey) {
+ this.usernameConfKey = usernameConfKey;
+ return this;
+ }
+
+ public Builder setKeytabConfKey(String keytabConfKey) {
+ this.keytabConfKey = keytabConfKey;
+ return this;
+ }
+
+ public Builder disallowFallbackToRandomSingerSecretProvider(boolean value) {
+ this.disallowFallbackToRandomSignerSecretProvider = value;
+ return this;
+ }
+
+ public Builder authFilterConfigurationPrefix(String value) {
+ this.authFilterConfigurationPrefix = value;
+ return this;
+ }
+
+ public Builder excludeCiphers(String pExcludeCiphers) {
+ this.excludeCiphers = pExcludeCiphers;
+ return this;
+ }
+
+ /**
+ * Adds the ability to control X_FRAME_OPTIONS on HttpServer2.
+ * @param xFrameEnabled - True enables X_FRAME_OPTIONS false disables it.
+ * @return Builder.
+ */
+ public Builder configureXFrame(boolean xFrameEnabled) {
+ this.xFrameEnabled = xFrameEnabled;
+ return this;
+ }
+
+ /**
+ * Sets a valid X-Frame-option that can be used by HttpServer2.
+ * @param option - String DENY, SAMEORIGIN or ALLOW-FROM are the only valid
+ * options. Any other value will throw IllegalArgument
+ * Exception.
+ * @return Builder.
+ */
+ public Builder setXFrameOption(String option) {
+ this.xFrameOption = XFrameOption.getEnum(option);
+ return this;
+ }
+
+ /**
+ * A wrapper of {@link Configuration#getPassword(String)}. It returns
+ * <code>String</code> instead of <code>char[]</code>.
+ *
+ * @param conf the configuration
+ * @param name the property name
+ * @return the password string or null
+ */
+ private static String getPasswordString(Configuration conf, String name)
+ throws IOException {
+ char[] passchars = conf.getPassword(name);
+ if (passchars == null) {
+ return null;
+ }
+ return new String(passchars);
+ }
+
+ /**
+ * Load SSL properties from the SSL configuration.
+ */
+ private void loadSSLConfiguration() throws IOException {
+ if (sslConf == null) {
+ return;
+ }
+ needsClientAuth = sslConf.getBoolean(
+ SSLFactory.SSL_SERVER_NEED_CLIENT_AUTH,
+ SSLFactory.SSL_SERVER_NEED_CLIENT_AUTH_DEFAULT);
+ keyStore = sslConf.getTrimmed(SSLFactory.SSL_SERVER_KEYSTORE_LOCATION);
+ if (keyStore == null || keyStore.isEmpty()) {
+ throw new IOException(String.format("Property %s not specified",
+ SSLFactory.SSL_SERVER_KEYSTORE_LOCATION));
+ }
+ keyStorePassword = getPasswordString(sslConf,
+ SSLFactory.SSL_SERVER_KEYSTORE_PASSWORD);
+ if (keyStorePassword == null) {
+ throw new IOException(String.format("Property %s not specified",
+ SSLFactory.SSL_SERVER_KEYSTORE_PASSWORD));
+ }
+ keyStoreType = sslConf.get(SSLFactory.SSL_SERVER_KEYSTORE_TYPE,
+ SSLFactory.SSL_SERVER_KEYSTORE_TYPE_DEFAULT);
+ keyPassword = getPasswordString(sslConf,
+ SSLFactory.SSL_SERVER_KEYSTORE_KEYPASSWORD);
+ trustStore = sslConf.get(SSLFactory.SSL_SERVER_TRUSTSTORE_LOCATION);
+ trustStorePassword = getPasswordString(sslConf,
+ SSLFactory.SSL_SERVER_TRUSTSTORE_PASSWORD);
+ trustStoreType = sslConf.get(SSLFactory.SSL_SERVER_TRUSTSTORE_TYPE,
+ SSLFactory.SSL_SERVER_TRUSTSTORE_TYPE_DEFAULT);
+ excludeCiphers = sslConf.get(SSLFactory.SSL_SERVER_EXCLUDE_CIPHER_LIST);
+ }
+
+ public HttpServer2 build() throws IOException {
+ Preconditions.checkNotNull(name, "name is not set");
+ Preconditions.checkState(!endpoints.isEmpty(), "No endpoints specified");
+
+ if (hostName == null) {
+ hostName = endpoints.get(0).getHost();
+ }
+
+ if (this.conf == null) {
+ conf = new Configuration();
+ }
+
+ HttpServer2 server = new HttpServer2(this);
+
+ if (this.securityEnabled) {
+ server.initSpnego(conf, hostName, usernameConfKey, keytabConfKey);
+ }
+
+ for (URI ep : endpoints) {
+ if (HTTPS_SCHEME.equals(ep.getScheme())) {
+ loadSSLConfiguration();
+ break;
+ }
+ }
+
+ int requestHeaderSize = conf.getInt(
+ HTTP_MAX_REQUEST_HEADER_SIZE_KEY,
+ HTTP_MAX_REQUEST_HEADER_SIZE_DEFAULT);
+ int responseHeaderSize = conf.getInt(
+ HTTP_MAX_RESPONSE_HEADER_SIZE_KEY,
+ HTTP_MAX_RESPONSE_HEADER_SIZE_DEFAULT);
+ int idleTimeout = conf.getInt(HTTP_IDLE_TIMEOUT_MS_KEY,
+ HTTP_IDLE_TIMEOUT_MS_DEFAULT);
+
+ HttpConfiguration httpConfig = new HttpConfiguration();
+ httpConfig.setRequestHeaderSize(requestHeaderSize);
+ httpConfig.setResponseHeaderSize(responseHeaderSize);
+ httpConfig.setSendServerVersion(false);
+
+ int backlogSize = conf.getInt(HTTP_SOCKET_BACKLOG_SIZE_KEY,
+ HTTP_SOCKET_BACKLOG_SIZE_DEFAULT);
+
+ for (URI ep : endpoints) {
+ final ServerConnector connector;
+ String scheme = ep.getScheme();
+ if (HTTP_SCHEME.equals(scheme)) {
+ connector = createHttpChannelConnector(server.webServer,
+ httpConfig);
+ } else if (HTTPS_SCHEME.equals(scheme)) {
+ connector = createHttpsChannelConnector(server.webServer,
+ httpConfig);
+ } else {
+ throw new HadoopIllegalArgumentException(
+ "unknown scheme for endpoint:" + ep);
+ }
+ connector.setHost(ep.getHost());
+ connector.setPort(ep.getPort() == -1 ? 0 : ep.getPort());
+ connector.setAcceptQueueSize(backlogSize);
+ connector.setIdleTimeout(idleTimeout);
+ server.addListener(connector);
+ }
+ server.loadListeners();
+ return server;
+ }
+
+ private ServerConnector createHttpChannelConnector(
+ Server server, HttpConfiguration httpConfig) {
+ ServerConnector conn = new ServerConnector(server,
+ conf.getInt(HTTP_ACCEPTOR_COUNT_KEY, HTTP_ACCEPTOR_COUNT_DEFAULT),
+ conf.getInt(HTTP_SELECTOR_COUNT_KEY, HTTP_SELECTOR_COUNT_DEFAULT));
+ ConnectionFactory connFactory = new HttpConnectionFactory(httpConfig);
+ conn.addConnectionFactory(connFactory);
+ if(Shell.WINDOWS) {
+ // result of setting the SO_REUSEADDR flag is different on Windows
+ // http://msdn.microsoft.com/en-us/library/ms740621(v=vs.85).aspx
+ // without this 2 NN's can start on the same machine and listen on
+ // the same port with indeterminate routing of incoming requests to them
+ conn.setReuseAddress(false);
+ }
+ return conn;
+ }
+
+ private ServerConnector createHttpsChannelConnector(
+ Server server, HttpConfiguration httpConfig) {
+ httpConfig.setSecureScheme(HTTPS_SCHEME);
+ httpConfig.addCustomizer(new SecureRequestCustomizer());
+ ServerConnector conn = createHttpChannelConnector(server, httpConfig);
+
+ SslContextFactory sslContextFactory = new SslContextFactory();
+ sslContextFactory.setNeedClientAuth(needsClientAuth);
+ sslContextFactory.setKeyManagerPassword(keyPassword);
+ if (keyStore != null) {
+ sslContextFactory.setKeyStorePath(keyStore);
+ sslContextFactory.setKeyStoreType(keyStoreType);
+ sslContextFactory.setKeyStorePassword(keyStorePassword);
+ }
+ if (trustStore != null) {
+ sslContextFactory.setTrustStorePath(trustStore);
+ sslContextFactory.setTrustStoreType(trustStoreType);
+ sslContextFactory.setTrustStorePassword(trustStorePassword);
+ }
+ if(null != excludeCiphers && !excludeCiphers.isEmpty()) {
+ sslContextFactory.setExcludeCipherSuites(
+ StringUtils.getTrimmedStrings(excludeCiphers));
+ LOG.info("Excluded Cipher List:" + excludeCiphers);
+ }
+
+ conn.addFirstConnectionFactory(new SslConnectionFactory(sslContextFactory,
+ HttpVersion.HTTP_1_1.asString()));
+
+ return conn;
+ }
+ }
+
+ private HttpServer2(final Builder b) throws IOException {
+ final String appDir = getWebAppsPath(b.name);
+ this.webServer = new Server();
+ this.adminsAcl = b.adminsAcl;
+ this.handlers = new HandlerCollection();
+ this.webAppContext = createWebAppContext(b, adminsAcl, appDir);
+ this.xFrameOptionIsEnabled = b.xFrameEnabled;
+ this.xFrameOption = b.xFrameOption;
+
+ try {
+ this.secretProvider =
+ constructSecretProvider(b, webAppContext.getServletContext());
+ this.webAppContext.getServletContext().setAttribute
+ (AuthenticationFilter.SIGNER_SECRET_PROVIDER_ATTRIBUTE,
+ secretProvider);
+ } catch(IOException e) {
+ throw e;
+ } catch (Exception e) {
+ throw new IOException(e);
+ }
+
+ this.findPort = b.findPort;
+ this.portRanges = b.portRanges;
+ initializeWebServer(b.name, b.hostName, b.conf, b.pathSpecs);
+ }
+
+ private void initializeWebServer(String name, String hostName,
+ Configuration conf, String[] pathSpecs)
+ throws IOException {
+
+ Preconditions.checkNotNull(webAppContext);
+
+ int maxThreads = conf.getInt(HTTP_MAX_THREADS_KEY, -1);
+ // If HTTP_MAX_THREADS is not configured, QueueThreadPool() will use the
+ // default value (currently 250).
+
+ QueuedThreadPool threadPool = (QueuedThreadPool) webServer.getThreadPool();
+ threadPool.setDaemon(true);
+ if (maxThreads != -1) {
+ // Minimum number of threads must be > 3.
+ // DatanodeHttpServer sets the HTTP_MAX_THREADS_KEY to 3
+ threadPool.setMaxThreads(Math.max(maxThreads, 4));
+ }
+
+ SessionHandler sessionHandler = webAppContext.getSessionHandler();
+ sessionHandler.setHttpOnly(true);
+ sessionHandler.getSessionCookieConfig().setSecure(true);
+
+ ContextHandlerCollection contexts = new ContextHandlerCollection();
+ RequestLog requestLog = HttpRequestLog.getRequestLog(name);
+
+ handlers.addHandler(contexts);
+ if (requestLog != null) {
+ RequestLogHandler requestLogHandler = new RequestLogHandler();
+ requestLogHandler.setRequestLog(requestLog);
+ handlers.addHandler(requestLogHandler);
+ }
+ handlers.addHandler(webAppContext);
+ final String appDir = getWebAppsPath(name);
+ addDefaultApps(contexts, appDir, conf);
+ webServer.setHandler(handlers);
+
+ Map<String, String> xFrameParams = setHeaders(conf);
+ addGlobalFilter("safety", QuotingInputFilter.class.getName(), xFrameParams);
+ final FilterInitializer[] initializers = getFilterInitializers(conf);
+ if (initializers != null) {
+ conf = new Configuration(conf);
+ conf.set(BIND_ADDRESS, hostName);
+ for (FilterInitializer c : initializers) {
+ c.initFilter(this, conf);
+ }
+ }
+
+ addDefaultServlets();
+
+ if (pathSpecs != null) {
+ for (String path : pathSpecs) {
+ LOG.info("adding path spec: " + path);
+ addFilterPathMapping(path, webAppContext);
+ }
+ }
+ }
+
+ private void addListener(ServerConnector connector) {
+ listeners.add(connector);
+ }
+
+ private static WebAppContext createWebAppContext(Builder b,
+ AccessControlList adminsAcl, final String appDir) {
+ WebAppContext ctx = new WebAppContext();
+ ctx.setDefaultsDescriptor(null);
+ ServletHolder holder = new ServletHolder(new DefaultServlet());
+ Map<String, String> params = ImmutableMap. <String, String> builder()
+ .put("acceptRanges", "true")
+ .put("dirAllowed", "false")
+ .put("gzip", "true")
+ .put("useFileMappedBuffer", "true")
+ .build();
+ holder.setInitParameters(params);
+ ctx.setWelcomeFiles(new String[] {"index.html"});
+ ctx.addServlet(holder, "/");
+ ctx.setDisplayName(b.name);
+ ctx.setContextPath("/");
+ ctx.setWar(appDir + "/" + b.name);
+ String tempDirectory = b.conf.get(HTTP_TEMP_DIR_KEY);
+ if (tempDirectory != null && !tempDirectory.isEmpty()) {
+ ctx.setTempDirectory(new File(tempDirectory));
+ ctx.setAttribute("javax.servlet.context.tempdir", tempDirectory);
+ }
+ ctx.getServletContext().setAttribute(CONF_CONTEXT_ATTRIBUTE, b.conf);
+ ctx.getServletContext().setAttribute(ADMINS_ACL, adminsAcl);
+ addNoCacheFilter(ctx);
+ return ctx;
+ }
+
+ private static SignerSecretProvider constructSecretProvider(final Builder b,
+ ServletContext ctx)
+ throws Exception {
+ final Configuration conf = b.conf;
+ Properties config = getFilterProperties(conf,
+ b.authFilterConfigurationPrefix);
+ return AuthenticationFilter.constructSecretProvider(
+ ctx, config, b.disallowFallbackToRandomSignerSecretProvider);
+ }
+
+ private static Properties getFilterProperties(Configuration conf, String
+ prefix) {
+ Properties prop = new Properties();
+ Map<String, String> filterConfig = AuthenticationFilterInitializer
+ .getFilterConfigMap(conf, prefix);
+ prop.putAll(filterConfig);
+ return prop;
+ }
+
+ private static void addNoCacheFilter(ServletContextHandler ctxt) {
+ defineFilter(ctxt, NO_CACHE_FILTER, NoCacheFilter.class.getName(),
+ Collections.<String, String> emptyMap(), new String[] { "/*" });
+ }
+
+ /** Get an array of FilterConfiguration specified in the conf */
+ private static FilterInitializer[] getFilterInitializers(Configuration conf) {
+ if (conf == null) {
+ return null;
+ }
+
+ Class<?>[] classes = conf.getClasses(FILTER_INITIALIZER_PROPERTY);
+ if (classes == null) {
+ return null;
+ }
+
+ FilterInitializer[] initializers = new FilterInitializer[classes.length];
+ for(int i = 0; i < classes.length; i++) {
+ initializers[i] = (FilterInitializer)ReflectionUtils.newInstance(
+ classes[i], conf);
+ }
+ return initializers;
+ }
+
+ /**
+ * Add default apps.
+ * @param appDir The application directory
+ */
+ protected void addDefaultApps(ContextHandlerCollection parent,
+ final String appDir, Configuration conf) {
+ // set up the context for "/logs/" if "hadoop.log.dir" property is defined
+ // and it's enabled.
+ String logDir = System.getProperty("hadoop.log.dir");
+ boolean logsEnabled = conf.getBoolean(
+ CommonConfigurationKeys.HADOOP_HTTP_LOGS_ENABLED,
+ CommonConfigurationKeys.HADOOP_HTTP_LOGS_ENABLED_DEFAULT);
+ if (logDir != null && logsEnabled) {
+ ServletContextHandler logContext =
+ new ServletContextHandler(parent, "/logs");
+ logContext.setResourceBase(logDir);
+ logContext.addServlet(AdminAuthorizedServlet.class, "/*");
+ if (conf.getBoolean(
+ CommonConfigurationKeys.HADOOP_JETTY_LOGS_SERVE_ALIASES,
+ CommonConfigurationKeys.DEFAULT_HADOOP_JETTY_LOGS_SERVE_ALIASES)) {
+ @SuppressWarnings("unchecked")
+ Map<String, String> params = logContext.getInitParams();
+ params.put("org.eclipse.jetty.servlet.Default.aliases", "true");
+ }
+ logContext.setDisplayName("logs");
+ SessionHandler handler = new SessionHandler();
+ handler.setHttpOnly(true);
+ handler.getSessionCookieConfig().setSecure(true);
+ logContext.setSessionHandler(handler);
+ setContextAttributes(logContext, conf);
+ addNoCacheFilter(logContext);
+ defaultContexts.put(logContext, true);
+ }
+ // set up the context for "/static/*"
+ ServletContextHandler staticContext =
+ new ServletContextHandler(parent, "/static");
+ staticContext.setResourceBase(appDir + "/static");
+ staticContext.addServlet(DefaultServlet.class, "/*");
+ staticContext.setDisplayName("static");
+ @SuppressWarnings("unchecked")
+ Map<String, String> params = staticContext.getInitParams();
+ params.put("org.eclipse.jetty.servlet.Default.dirAllowed", "false");
+ params.put("org.eclipse.jetty.servlet.Default.gzip", "true");
+ SessionHandler handler = new SessionHandler();
+ handler.setHttpOnly(true);
+ handler.getSessionCookieConfig().setSecure(true);
+ staticContext.setSessionHandler(handler);
+ setContextAttributes(staticContext, conf);
+ defaultContexts.put(staticContext, true);
+ }
+
+ private void setContextAttributes(ServletContextHandler context,
+ Configuration conf) {
+ context.getServletContext().setAttribute(CONF_CONTEXT_ATTRIBUTE, conf);
+ context.getServletContext().setAttribute(ADMINS_ACL, adminsAcl);
+ }
+
+ /**
+ * Add default servlets.
+ */
+ protected void addDefaultServlets() {
+ // set up default servlets
+ addServlet("stacks", "/stacks", StackServlet.class);
+ addServlet("logLevel", "/logLevel", LogLevel.Servlet.class);
+ addServlet("jmx", "/jmx", JMXJsonServlet.class);
+ addServlet("conf", "/conf", ConfServlet.class);
+ }
+
+ public void addContext(ServletContextHandler ctxt, boolean isFiltered) {
+ handlers.addHandler(ctxt);
+ addNoCacheFilter(ctxt);
+ defaultContexts.put(ctxt, isFiltered);
+ }
+
+ /**
+ * Set a value in the webapp context. These values are available to the jsp
+ * pages as "application.getAttribute(name)".
+ * @param name The name of the attribute
+ * @param value The value of the attribute
+ */
+ public void setAttribute(String name, Object value) {
+ webAppContext.setAttribute(name, value);
+ }
+
+ /**
+ * Add a Jersey resource package.
+ * @param packageName The Java package name containing the Jersey resource.
+ * @param pathSpec The path spec for the servlet
+ */
+ public void addJerseyResourcePackage(final String packageName,
+ final String pathSpec) {
+ LOG.info("addJerseyResourcePackage: packageName=" + packageName
+ + ", pathSpec=" + pathSpec);
+ final ServletHolder sh = new ServletHolder(ServletContainer.class);
+ sh.setInitParameter("com.sun.jersey.config.property.resourceConfigClass",
+ "com.sun.jersey.api.core.PackagesResourceConfig");
+ sh.setInitParameter("com.sun.jersey.config.property.packages", packageName);
+ webAppContext.addServlet(sh, pathSpec);
+ }
+
+ /**
+ * Add a servlet in the server.
+ * @param name The name of the servlet (can be passed as null)
+ * @param pathSpec The path spec for the servlet
+ * @param clazz The servlet class
+ */
+ public void addServlet(String name, String pathSpec,
+ Class<? extends HttpServlet> clazz) {
+ addInternalServlet(name, pathSpec, clazz, false);
+ addFilterPathMapping(pathSpec, webAppContext);
+ }
+
+ /**
+ * Add an internal servlet in the server.
+ * Note: This method is to be used for adding servlets that facilitate
+ * internal communication and not for user facing functionality. For
+ * servlets added using this method, filters are not enabled.
+ *
+ * @param name The name of the servlet (can be passed as null)
+ * @param pathSpec The path spec for the servlet
+ * @param clazz The servlet class
+ */
+ public void addInternalServlet(String name, String pathSpec,
+ Class<? extends HttpServlet> clazz) {
+ addInternalServlet(name, pathSpec, clazz, false);
+ }
+
+ /**
+ * Add an internal servlet in the server, specifying whether or not to
+ * protect with Kerberos authentication.
+ * Note: This method is to be used for adding servlets that facilitate
+ * internal communication and not for user facing functionality. For
+ * servlets added using this method, filters (except internal Kerberos
+ * filters) are not enabled.
+ *
+ * @param name The name of the servlet (can be passed as null)
+ * @param pathSpec The path spec for the servlet
+ * @param clazz The servlet class
+ * @param requireAuth Require Kerberos authenticate to access servlet
+ */
+ public void addInternalServlet(String name, String pathSpec,
+ Class<? extends HttpServlet> clazz, boolean requireAuth) {
+ ServletHolder holder = new ServletHolder(clazz);
+ if (name != null) {
+ holder.setName(name);
+ }
+ // Jetty doesn't like the same path spec mapping to different servlets, so
+ // if there's already a mapping for this pathSpec, remove it and assume that
+ // the newest one is the one we want
+ final ServletMapping[] servletMappings =
+ webAppContext.getServletHandler().getServletMappings();
+ for (int i = 0; i < servletMappings.length; i++) {
+ if (servletMappings[i].containsPathSpec(pathSpec)) {
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Found existing " + servletMappings[i].getServletName() +
+ " servlet at path " + pathSpec + "; will replace mapping" +
+ " with " + holder.getName() + " servlet");
+ }
+ ServletMapping[] newServletMappings =
+ ArrayUtil.removeFromArray(servletMappings, servletMappings[i]);
+ webAppContext.getServletHandler()
+ .setServletMappings(newServletMappings);
+ break;
+ }
+ }
+ webAppContext.addServlet(holder, pathSpec);
+
+ if(requireAuth && UserGroupInformation.isSecurityEnabled()) {
+ LOG.info("Adding Kerberos (SPNEGO) filter to " + name);
+ ServletHandler handler = webAppContext.getServletHandler();
+ FilterMapping fmap = new FilterMapping();
+ fmap.setPathSpec(pathSpec);
+ fmap.setFilterName(SPNEGO_FILTER);
+ fmap.setDispatches(FilterMapping.ALL);
+ handler.addFilterMapping(fmap);
+ }
+ }
+
+ /**
+ * Add an internal servlet in the server, with initialization parameters.
+ * Note: This method is to be used for adding servlets that facilitate
+ * internal communication and not for user facing functionality. For
+ * servlets added using this method, filters (except internal Kerberos
+ * filters) are not enabled.
+ *
+ * @param name The name of the servlet (can be passed as null)
+ * @param pathSpec The path spec for the servlet
+ * @param clazz The servlet class
+ * @param params init parameters
+ */
+ public void addInternalServlet(String name, String pathSpec,
+ Class<? extends HttpServlet> clazz, Map<String, String> params) {
+ // Jetty doesn't like the same path spec mapping to different servlets, so
+ // if there's already a mapping for this pathSpec, remove it and assume that
+ // the newest one is the one we want
+ final ServletHolder sh = new ServletHolder(clazz);
+ sh.setName(name);
+ sh.setInitParameters(params);
+ final ServletMapping[] servletMappings =
+ webAppContext.getServletHandler().getServletMappings();
+ for (int i = 0; i < servletMappings.length; i++) {
+ if (servletMappings[i].containsPathSpec(pathSpec)) {
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Found existing " + servletMappings[i].getServletName() +
+ " servlet at path " + pathSpec + "; will replace mapping" +
+ " with " + sh.getName() + " servlet");
+ }
+ ServletMapping[] newServletMappings =
+ ArrayUtil.removeFromArray(servletMappings, servletMappings[i]);
+ webAppContext.getServletHandler()
+ .setServletMappings(newServletMappings);
+ break;
+ }
+ }
+ webAppContext.addServlet(sh, pathSpec);
+ }
+
+ /**
+ * Add the given handler to the front of the list of handlers.
+ *
+ * @param handler The handler to add
+ */
+ public void addHandlerAtFront(Handler handler) {
+ Handler[] h = ArrayUtil.prependToArray(
+ handler, this.handlers.getHandlers(), Handler.class);
+ handlers.setHandlers(h);
+ }
+
+ /**
+ * Add the given handler to the end of the list of handlers.
+ *
+ * @param handler The handler to add
+ */
+ public void addHandlerAtEnd(Handler handler) {
+ handlers.addHandler(handler);
+ }
+
+ @Override
+ public void addFilter(String name, String classname,
+ Map<String, String> parameters) {
+
+ FilterHolder filterHolder = getFilterHolder(name, classname, parameters);
+ final String[] USER_FACING_URLS = { "*.html", "*.jsp" };
+ FilterMapping fmap = getFilterMapping(name, USER_FACING_URLS);
+ defineFilter(webAppContext, filterHolder, fmap);
+ LOG.info(
+ "Added filter " + name + " (class=" + classname + ") to context "
+ + webAppContext.getDisplayName());
+ final String[] ALL_URLS = { "/*" };
+ fmap = getFilterMapping(name, ALL_URLS);
+ for (Map.Entry<ServletContextHandler, Boolean> e
+ : defaultContexts.entrySet()) {
+ if (e.getValue()) {
+ ServletContextHandler ctx = e.getKey();
+ defineFilter(ctx, filterHolder, fmap);
+ LOG.info("Added filter " + name + " (class=" + classname
+ + ") to context " + ctx.getDisplayName());
+ }
+ }
+ filterNames.add(name);
+ }
+
+ @Override
+ public void addGlobalFilter(String name, String classname,
+ Map<String, String> parameters) {
+ final String[] ALL_URLS = { "/*" };
+ FilterHolder filterHolder = getFilterHolder(name, classname, parameters);
+ FilterMapping fmap = getFilterMapping(name, ALL_URLS);
+ defineFilter(webAppContext, filterHolder, fmap);
+ for (ServletContextHandler ctx : defaultContexts.keySet()) {
+ defineFilter(ctx, filterHolder, fmap);
+ }
+ LOG.info("Added global filter '" + name + "' (class=" + classname + ")");
+ }
+
+ /**
+ * Define a filter for a context and set up default url mappings.
+ */
+ public static void defineFilter(ServletContextHandler ctx, String name,
+ String classname, Map<String,String> parameters, String[] urls) {
+ FilterHolder filterHolder = getFilterHolder(name, classname, parameters);
+ FilterMapping fmap = getFilterMapping(name, urls);
+ defineFilter(ctx, filterHolder, fmap);
+ }
+
+ /**
+ * Define a filter for a context and set up default url mappings.
+ */
+ private static void defineFilter(ServletContextHandler ctx,
+ FilterHolder holder, FilterMapping fmap) {
+ ServletHandler handler = ctx.getServletHandler();
+ handler.addFilter(holder, fmap);
+ }
+
+ private static FilterMapping getFilterMapping(String name, String[] urls) {
+ FilterMapping fmap = new FilterMapping();
+ fmap.setPathSpecs(urls);
+ fmap.setDispatches(FilterMapping.ALL);
+ fmap.setFilterName(name);
+ return fmap;
+ }
+
+ private static FilterHolder getFilterHolder(String name, String classname,
+ Map<String, String> parameters) {
+ FilterHolder holder = new FilterHolder();
+ holder.setName(name);
+ holder.setClassName(classname);
+ if (parameters != null) {
+ holder.setInitParameters(parameters);
+ }
+ return holder;
+ }
+
+ /**
+ * Add the path spec to the filter path mapping.
+ * @param pathSpec The path spec
+ * @param webAppCtx The WebApplicationContext to add to
+ */
+ protected void addFilterPathMapping(String pathSpec,
+ ServletContextHandler webAppCtx) {
+ ServletHandler handler = webAppCtx.getServletHandler();
+ for(String name : filterNames) {
+ FilterMapping fmap = new FilterMapping();
+ fmap.setPathSpec(pathSpec);
+ fmap.setFilterName(name);
+ fmap.setDispatches(FilterMapping.ALL);
+ handler.addFilterMapping(fmap);
+ }
+ }
+
+ /**
+ * Get the value in the webapp context.
+ * @param name The name of the attribute
+ * @return The value of the attribute
+ */
+ public Object getAttribute(String name) {
+ return webAppContext.getAttribute(name);
+ }
+
+ public WebAppContext getWebAppContext(){
+ return this.webAppContext;
+ }
+
+ /**
+ * Get the pathname to the webapps files.
+ * @param appName eg "secondary" or "datanode"
+ * @return the pathname as a URL
+ * @throws FileNotFoundException if 'webapps' directory cannot be found
+ * on CLASSPATH or in the development location.
+ */
+ protected String getWebAppsPath(String appName) throws FileNotFoundException {
+ URL resourceUrl = null;
+ File webResourceDevLocation = new File("src/main/webapps", appName);
+ if (webResourceDevLocation.exists()) {
+ LOG.info("Web server is in development mode. Resources "
+ + "will be read from the source tree.");
+ try {
+ resourceUrl = webResourceDevLocation.getParentFile().toURI().toURL();
+ } catch (MalformedURLException e) {
+ throw new FileNotFoundException("Mailformed URL while finding the "
+ + "web resource dir:" + e.getMessage());
+ }
+ } else {
+ resourceUrl =
+ getClass().getClassLoader().getResource("webapps/" + appName);
+
+ if (resourceUrl == null) {
+ throw new FileNotFoundException("webapps/" + appName +
+ " not found in CLASSPATH");
+ }
+ }
+ String urlString = resourceUrl.toString();
+ return urlString.substring(0, urlString.lastIndexOf('/'));
+ }
+
+ /**
+ * Get the port that the server is on
+ * @return the port
+ */
+ @Deprecated
+ public int getPort() {
+ return ((ServerConnector)webServer.getConnectors()[0]).getLocalPort();
+ }
+
+ /**
+ * Get the address that corresponds to a particular connector.
+ *
+ * @return the corresponding address for the connector, or null if there's no
+ * such connector or the connector is not bounded or was closed.
+ */
+ public InetSocketAddress getConnectorAddress(int index) {
+ Preconditions.checkArgument(index >= 0);
+ if (index > webServer.getConnectors().length)
+ return null;
+
+ ServerConnector c = (ServerConnector)webServer.getConnectors()[index];
+ if (c.getLocalPort() == -1 || c.getLocalPort() == -2) {
+ // The connector is not bounded or was closed
+ return null;
+ }
+
+ return new InetSocketAddress(c.getHost(), c.getLocalPort());
+ }
+
+ /**
+ * Set the min, max number of worker threads (simultaneous connections).
+ */
+ public void setThreads(int min, int max) {
+ QueuedThreadPool pool = (QueuedThreadPool) webServer.getThreadPool();
+ pool.setMinThreads(min);
+ pool.setMaxThreads(max);
+ }
+
+ private void initSpnego(Configuration conf, String hostName,
+ String usernameConfKey, String keytabConfKey) throws IOException {
+ Map<String, String> params = new HashMap<>();
+ String principalInConf = conf.get(usernameConfKey);
+ if (principalInConf != null && !principalInConf.isEmpty()) {
+ params.put("kerberos.principal", SecurityUtil.getServerPrincipal(
+ principalInConf, hostName));
+ }
+ String httpKeytab = conf.get(keytabConfKey);
+ if (httpKeytab != null && !httpKeytab.isEmpty()) {
+ params.put("kerberos.keytab", httpKeytab);
+ }
+ params.put(AuthenticationFilter.AUTH_TYPE, "kerberos");
+ defineFilter(webAppContext, SPNEGO_FILTER,
+ AuthenticationFilter.class.getName(), params, null);
+ }
+
+ /**
+ * Start the server. Does not wait for the server to start.
+ */
+ public void start() throws IOException {
+ try {
+ try {
+ openListeners();
+ webServer.start();
+ } catch (IOException ex) {
+ LOG.info("HttpServer.start() threw a non Bind IOException", ex);
+ throw ex;
+ } catch (MultiException ex) {
+ LOG.info("HttpServer.start() threw a MultiException", ex);
+ throw ex;
+ }
+ // Make sure there is no handler failures.
+ Handler[] hs = webServer.getHandlers();
+ for (Handler handler : hs) {
+ if (handler.isFailed()) {
+ throw new IOException(
+ "Problem in starting http server. Server handlers failed");
+ }
+ }
+ // Make sure there are no errors initializing the context.
+ Throwable unavailableException = webAppContext.getUnavailableException();
+ if (unavailableException != null) {
+ // Have to stop the webserver, or else its non-daemon threads
+ // will hang forever.
+ webServer.stop();
+ throw new IOException("Unable to initialize WebAppContext",
+ unavailableException);
+ }
+ } catch (IOException e) {
+ throw e;
+ } catch (InterruptedException e) {
+ throw (IOException) new InterruptedIOException(
+ "Interrupted while starting HTTP server").initCause(e);
+ } catch (Exception e) {
+ throw new IOException("Problem starting http server", e);
+ }
+ }
+
+ private void loadListeners() {
+ for (Connector c : listeners) {
+ webServer.addConnector(c);
+ }
+ }
+
+ /**
+ * Bind listener by closing and opening the listener.
+ * @param listener listener to bind
+ * @throws Exception Exception on opening listener
+ */
+ private static void bindListener(ServerConnector listener) throws Exception {
+ // jetty has a bug where you can't reopen a listener that previously
+ // failed to open w/o issuing a close first, even if the port is changed
+ listener.close();
+ listener.open();
+ LOG.info("Jetty bound to port " + listener.getLocalPort());
+ }
+
+ /**
+ * Create bind exception by wrapping the bind exception thrown.
+ * @param listener listener to check
+ * @param ex exception to check
+ * @return returns the exception
+ */
+ private static BindException constructBindException(ServerConnector listener,
+ BindException ex) {
+ BindException be = new BindException("Port in use: "
+ + listener.getHost() + ":" + listener.getPort());
+ if (ex != null) {
+ be.initCause(ex);
+ }
+ return be;
+ }
+
+ /**
+ * Bind using single configured port. If findPort is true, we will try to bind
+ * after incrementing port till a free port is found.
+ * @param listener jetty listener.
+ * @param port port which is set in the listener.
+ * @throws Exception exception on binding
+ */
+ private void bindForSinglePort(ServerConnector listener, int port)
+ throws Exception {
+ while (true) {
+ try {
+ bindListener(listener);
+ break;
+ } catch (BindException ex) {
+ if (port == 0 || !findPort) {
+ throw constructBindException(listener, ex);
+ }
+ }
+ // try the next port number
+ listener.setPort(++port);
+ Thread.sleep(100);
+ }
+ }
+
+ /**
+ * Bind using port ranges. Keep on looking for a free port in the port range
+ * and throw a bind exception if no port in the configured range binds.
+ * @param listener jetty listener.
+ * @param startPort initial port which is set in the listener.
+ * @throws Exception exception on binding
+ */
+ private void bindForPortRange(ServerConnector listener, int startPort)
+ throws Exception {
+ BindException bindException = null;
+ try {
+ bindListener(listener);
+ return;
+ } catch (BindException ex) {
+ // Ignore exception.
+ bindException = ex;
+ }
+ for(Integer port : portRanges) {
+ if (port == startPort) {
+ continue;
+ }
+ Thread.sleep(100);
+ listener.setPort(port);
+ try {
+ bindListener(listener);
+ return;
+ } catch (BindException ex) {
+ // Ignore exception. Move to next port.
+ bindException = ex;
+ }
+ }
+ throw constructBindException(listener, bindException);
+ }
+
+ /**
+ * Open the main listener for the server
+ * @throws Exception exception opening listener
+ */
+ void openListeners() throws Exception {
+ LOG.debug("opening listeners: {}", listeners);
+ for (ServerConnector listener : listeners) {
+ if (listener.getLocalPort() != -1 && listener.getLocalPort() != -2) {
+ // This listener is either started externally or has been bound or was
+ // closed
+ continue;
+ }
+ int port = listener.getPort();
+ if (portRanges != null && port != 0) {
+ bindForPortRange(listener, port);
+ } else {
+ bindForSinglePort(listener, port);
+ }
+ }
+ }
+
+ /**
+ * stop the server
+ */
+ public void stop() throws Exception {
+ MultiException exception = null;
+ for (ServerConnector c : listeners) {
+ try {
+ c.close();
+ } catch (Exception e) {
+ LOG.error(
+ "Error while stopping listener for webapp"
+ + webAppContext.getDisplayName(), e);
+ exception = addMultiException(exception, e);
+ }
+ }
+
+ try {
+ // explicitly destroy the secret provider
+ secretProvider.destroy();
+ // clear & stop webAppContext attributes to avoid memory leaks.
+ webAppContext.clearAttributes();
+ webAppContext.stop();
+ } catch (Exception e) {
+ LOG.error("Error while stopping web app context for webapp "
+ + webAppContext.getDisplayName(), e);
+ exception = addMultiException(exception, e);
+ }
+
+ try {
+ webServer.stop();
+ } catch (Exception e) {
+ LOG.error("Error while stopping web server for webapp "
+ + webAppContext.getDisplayName(), e);
+ exception = addMultiException(exception, e);
+ }
+
+ if (exception != null) {
+ exception.ifExceptionThrow();
+ }
+
+ }
+
+ private MultiException addMultiException(MultiException exception, Exception e) {
+ if(exception == null){
+ exception = new MultiException();
+ }
+ exception.add(e);
+ return exception;
+ }
+
+ public void join() throws InterruptedException {
+ webServer.join();
+ }
+
+ /**
+ * Test for the availability of the web server
+ * @return true if the web server is started, false otherwise
+ */
+ public boolean isAlive() {
+ return webServer != null && webServer.isStarted();
+ }
+
+ @Override
+ public String toString() {
+ Preconditions.checkState(!listeners.isEmpty());
+ StringBuilder sb = new StringBuilder("HttpServer (")
+ .append(isAlive() ? STATE_DESCRIPTION_ALIVE
+ : STATE_DESCRIPTION_NOT_LIVE)
+ .append("), listening at:");
+ for (ServerConnector l : listeners) {
+ sb.append(l.getHost()).append(":").append(l.getPort()).append("/,");
+ }
+ return sb.toString();
+ }
+
+ /**
+ * Checks the user has privileges to access to instrumentation servlets.
+ *
+ * If <code>hadoop.security.instrumentation.requires.admin</code> is set to FALSE
+ * (default value) it always returns TRUE.
+ *
+ * If <code>hadoop.security.instrumentation.requires.admin</code> is set to TRUE
+ * it will check that if the current user is in the admin ACLS. If the user is
+ * in the admin ACLs it returns TRUE, otherwise it returns FALSE.
+ *
+ * @param servletContext the servlet context.
+ * @param request the servlet request.
+ * @param response the servlet response.
+ * @return TRUE/FALSE based on the logic decribed above.
+ */
+ public static boolean isInstrumentationAccessAllowed(
+ ServletContext servletContext, HttpServletRequest request,
+ HttpServletResponse response) throws IOException {
+ Configuration conf =
+ (Configuration) servletContext.getAttribute(CONF_CONTEXT_ATTRIBUTE);
+
+ boolean access = true;
+ boolean adminAccess = conf.getBoolean(
+ CommonConfigurationKeys.HADOOP_SECURITY_INSTRUMENTATION_REQUIRES_ADMIN,
+ false);
+ if (adminAccess) {
+ access = hasAdministratorAccess(servletContext, request, response);
+ }
+ return access;
+ }
+
+ /**
+ * Does the user sending the HttpServletRequest has the administrator ACLs? If
+ * it isn't the case, response will be modified to send an error to the user.
+ *
+ * @param response used to send the error response if user does not have admin access.
+ * @return true if admin-authorized, false otherwise
+ * @throws IOException exception on error
+ */
+ public static boolean hasAdministratorAccess(
+ ServletContext servletContext, HttpServletRequest request,
+ HttpServletResponse response) throws IOException {
+ Configuration conf =
+ (Configuration) servletContext.getAttribute(CONF_CONTEXT_ATTRIBUTE);
+ // If there is no authorization, anybody has administrator access.
+ if (!conf.getBoolean(
+ CommonConfigurationKeys.HADOOP_SECURITY_AUTHORIZATION, false)) {
+ return true;
+ }
+
+ String remoteUser = request.getRemoteUser();
+ if (remoteUser == null) {
+ response.sendError(HttpServletResponse.SC_FORBIDDEN,
+ "Unauthenticated users are not " +
+ "authorized to access this page.");
+ return false;
+ }
+
+ if (servletContext.getAttribute(ADMINS_ACL) != null &&
+ !userHasAdministratorAccess(servletContext, remoteUser)) {
+ response.sendError(HttpServletResponse.SC_FORBIDDEN,
+ "Unauthenticated users are not " +
+ "authorized to access this page.");
+ LOG.warn("User " + remoteUser + " is unauthorized to access the page "
+ + request.getRequestURI() + ".");
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Get the admin ACLs from the given ServletContext and check if the given
+ * user is in the ACL.
+ *
+ * @param servletContext the context containing the admin ACL.
+ * @param remoteUser the remote user to check for.
+ * @return true if the user is present in the ACL, false if no ACL is set or
+ * the user is not present
+ */
+ public static boolean userHasAdministratorAccess(ServletContext servletContext,
+ String remoteUser) {
+ AccessControlList adminsAcl = (AccessControlList) servletContext
+ .getAttribute(ADMINS_ACL);
+ UserGroupInformation remoteUserUGI =
+ UserGroupInformation.createRemoteUser(remoteUser);
+ return adminsAcl != null && adminsAcl.isUserAllowed(remoteUserUGI);
+ }
+
+ /**
+ * A very simple servlet to serve up a text representation of the current
+ * stack traces. It both returns the stacks to the caller and logs them.
+ * Currently the stack traces are done sequentially rather than exactly the
+ * same data.
+ */
+ public static class StackServlet extends HttpServlet {
+ private static final long serialVersionUID = -6284183679759467039L;
+
+ @Override
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+ if (!HttpServer2.isInstrumentationAccessAllowed(getServletContext(),
+ request, response)) {
+ return;
+ }
+ response.setContentType("text/plain; charset=UTF-8");
+ try (PrintStream out = new PrintStream(
+ response.getOutputStream(), false, "UTF-8")) {
+ ReflectionUtils.printThreadInfo(out, "");
+ }
+ ReflectionUtils.logThreadInfo(LOG, "jsp requested", 1);
+ }
+ }
+
+ /**
+ * A Servlet input filter that quotes all HTML active characters in the
+ * parameter names and values. The goal is to quote the characters to make
+ * all of the servlets resistant to cross-site scripting attacks. It also
+ * sets X-FRAME-OPTIONS in the header to mitigate clickjacking attacks.
+ */
+ public static class QuotingInputFilter implements Filter {
+
+ private FilterConfig config;
+ private Map<String, String> headerMap;
+
+ public static class RequestQuoter extends HttpServletRequestWrapper {
+ private final HttpServletRequest rawRequest;
+
+ public RequestQuoter(HttpServletRequest rawRequest) {
+ super(rawRequest);
+ this.rawRequest = rawRequest;
+ }
+
+ /**
+ * Return the set of parameter names, quoting each name.
+ */
+ @Override
+ public Enumeration<String> getParameterNames() {
+ return new Enumeration<String>() {
+ private Enumeration<String> rawIterator = rawRequest.getParameterNames();
+ @Override
+ public boolean hasMoreElements() {
+ return rawIterator.hasMoreElements();
+ }
+
+ @Override
+ public String nextElement() {
+ return HtmlQuoting.quoteHtmlChars(rawIterator.nextElement());
+ }
+ };
+ }
+
+ /**
+ * Unquote the name and quote the value.
+ */
+ @Override
+ public String getParameter(String name) {
+ return HtmlQuoting.quoteHtmlChars(rawRequest.getParameter
+ (HtmlQuoting.unquoteHtmlChars(name)));
+ }
+
+ @Override
+ public String[] getParameterValues(String name) {
+ String unquoteName = HtmlQuoting.unquoteHtmlChars(name);
+ String[] unquoteValue = rawRequest.getParameterValues(unquoteName);
+ if (unquoteValue == null) {
+ return null;
+ }
+ String[] result = new String[unquoteValue.length];
+ for(int i=0; i < result.length; ++i) {
+ result[i] = HtmlQuoting.quoteHtmlChars(unquoteValue[i]);
+ }
+ return result;
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public Map<String, String[]> getParameterMap() {
+ Map<String, String[]> result = new HashMap<>();
+ Map<String, String[]> raw = rawRequest.getParameterMap();
+ for (Map.Entry<String,String[]> item: raw.entrySet()) {
+ String[] rawValue = item.getValue();
+ String[] cookedValue = new String[rawValue.length];
+ for(int i=0; i< rawValue.length; ++i) {
+ cookedValue[i] = HtmlQuoting.quoteHtmlChars(rawValue[i]);
+ }
+ result.put(HtmlQuoting.quoteHtmlChars(item.getKey()), cookedValue);
+ }
+ return result;
+ }
+
+ /**
+ * Quote the url so that users specifying the HOST HTTP header
+ * can't inject attacks.
+ */
+ @Override
+ public StringBuffer getRequestURL(){
+ String url = rawRequest.getRequestURL().toString();
+ return new StringBuffer(HtmlQuoting.quoteHtmlChars(url));
+ }
+
+ /**
+ * Quote the server name so that users specifying the HOST HTTP header
+ * can't inject attacks.
+ */
+ @Override
+ public String getServerName() {
+ return HtmlQuoting.quoteHtmlChars(rawRequest.getServerName());
+ }
+ }
+
+ @Override
+ public void init(FilterConfig config) throws ServletException {
+ this.config = config;
+ initHttpHeaderMap();
+ }
+
+ @Override
+ public void destroy() {
+ }
+
+ @Override
+ public void doFilter(ServletRequest request,
+ ServletResponse response,
+ FilterChain chain
+ ) throws IOException, ServletException {
+ HttpServletRequestWrapper quoted =
+ new RequestQuoter((HttpServletRequest) request);
+ HttpServletResponse httpResponse = (HttpServletResponse) response;
+
+ String mime = inferMimeType(request);
+ if (mime == null) {
+ httpResponse.setContentType("text/plain; charset=utf-8");
+ } else if (mime.startsWith("text/html")) {
+ // HTML with unspecified encoding, we want to
+ // force HTML with utf-8 encoding
+ // This is to avoid the following security issue:
+ // http://openmya.hacker.jp/hasegawa/security/utf7cs.html
+ httpResponse.setContentType("text/html; charset=utf-8");
+ } else if (mime.startsWith("application/xml")) {
+ httpResponse.setContentType("text/xml; charset=utf-8");
+ }
+ headerMap.forEach((k, v) -> httpResponse.addHeader(k, v));
+ chain.doFilter(quoted, httpResponse);
+ }
+
+ /**
+ * Infer the mime type for the response based on the extension of the request
+ * URI. Returns null if unknown.
+ */
+ private String inferMimeType(ServletRequest request) {
+ String path = ((HttpServletRequest)request).getRequestURI();
+ ServletContextHandler.Context sContext =
+ (ServletContextHandler.Context)config.getServletContext();
+ String mime = sContext.getMimeType(path);
+ return (mime == null) ? null : mime;
+ }
+
+ private void initHttpHeaderMap() {
+ Enumeration<String> params = this.config.getInitParameterNames();
+ headerMap = new HashMap<>();
+ while (params.hasMoreElements()) {
+ String key = params.nextElement();
+ Matcher m = PATTERN_HTTP_HEADER_REGEX.matcher(key);
+ if (m.matches()) {
+ String headerKey = m.group(1);
+ headerMap.put(headerKey, config.getInitParameter(key));
+ }
+ }
+ }
+ }
+ /**
+ * The X-FRAME-OPTIONS header in HTTP response to mitigate clickjacking
+ * attack.
+ */
+ public enum XFrameOption {
+ DENY("DENY"), SAMEORIGIN("SAMEORIGIN"), ALLOWFROM("ALLOW-FROM");
+
+ XFrameOption(String name) {
+ this.name = name;
+ }
+
+ private final String name;
+
+ @Override
+ public String toString() {
+ return this.name;
+ }
+
+ /**
+ * We cannot use valueOf since the AllowFrom enum differs from its value
+ * Allow-From. This is a helper method that does exactly what valueof does,
+ * but allows us to handle the AllowFrom issue gracefully.
+ *
+ * @param value - String must be DENY, SAMEORIGIN or ALLOW-FROM.
+ * @return XFrameOption or throws IllegalException.
+ */
+ private static XFrameOption getEnum(String value) {
+ Preconditions.checkState(value != null && !value.isEmpty());
+ for (XFrameOption xoption : values()) {
+ if (value.equals(xoption.toString())) {
+ return xoption;
+ }
+ }
+ throw new IllegalArgumentException("Unexpected value in xFrameOption.");
+ }
+ }
+
+
+ private Map<String, String> setHeaders(Configuration conf) {
+ Map<String, String> xFrameParams = new HashMap<>();
+ Map<String, String> headerConfigMap =
+ conf.getValByRegex(HTTP_HEADER_REGEX);
+
+ xFrameParams.putAll(getDefaultHeaders());
+ if(this.xFrameOptionIsEnabled) {
+ xFrameParams.put(HTTP_HEADER_PREFIX+X_FRAME_OPTIONS,
+ this.xFrameOption.toString());
+ }
+ xFrameParams.putAll(headerConfigMap);
+ return xFrameParams;
+ }
+
+ private Map<String, String> getDefaultHeaders() {
+ Map<String, String> headers = new HashMap<>();
+ String[] splitVal = X_CONTENT_TYPE_OPTIONS.split(":");
+ headers.put(HTTP_HEADER_PREFIX + splitVal[0],
+ splitVal[1]);
+ splitVal = X_XSS_PROTECTION.split(":");
+ headers.put(HTTP_HEADER_PREFIX + splitVal[0],
+ splitVal[1]);
+ return headers;
+ }
+}
diff --git a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
index 7038328..c9771e5 100644
--- a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
+++ b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
@@ -25,7 +25,11 @@ import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ForkJoinPool;
+import java.util.concurrent.ForkJoinWorkerThread;
+import java.util.regex.Pattern;
+import org.apache.commons.lang3.time.FastDateFormat;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
@@ -37,22 +41,19 @@ import org.apache.hadoop.hdfs.server.namenode.ha.HATestUtil;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.util.IOUtils;
+import org.apache.solr.common.util.SuppressForbidden;
import org.apache.solr.core.DirectoryFactory;
import org.apache.solr.util.HdfsUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import io.netty.util.internal.ThreadLocalRandom;
-
public class HdfsTestUtil {
private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
-
+
private static final String LOGICAL_HOSTNAME = "ha-nn-uri-%d";
private static final boolean HA_TESTING_ENABLED = false; // SOLR-XXX
-
- private static Locale savedLocale;
-
+
private static Map<MiniDFSCluster,Timer> timers = new ConcurrentHashMap<>();
private static FSDataOutputStream badTlogOutStream;
@@ -62,27 +63,44 @@ public class HdfsTestUtil {
public static MiniDFSCluster setupClass(String dir) throws Exception {
return setupClass(dir, true, true);
}
-
+
public static MiniDFSCluster setupClass(String dir, boolean haTesting) throws Exception {
return setupClass(dir, haTesting, true);
}
-
+
+ /**
+ * Checks that commons-lang3 FastDateFormat works with configured locale
+ */
+ @SuppressForbidden(reason="Call FastDateFormat.format same way Hadoop calls it")
+ private static void checkFastDateFormat() {
+ try {
+ FastDateFormat.getInstance().format(System.currentTimeMillis());
+ } catch (ArrayIndexOutOfBoundsException e) {
+ LuceneTestCase.assumeNoException("commons-lang3 FastDateFormat doesn't work with " +
+ Locale.getDefault().toLanguageTag(), e);
+ }
+ }
+
+ /**
+ * Hadoop fails to generate locale agnostic ids - Checks that generated string matches
+ */
+ private static void checkGeneratedIdMatches() {
+ // This is basically how Namenode generates fsimage ids and checks that the fsimage filename matches
+ LuceneTestCase.assumeTrue("Check that generated id matches regex",
+ Pattern.matches("(\\d+)", String.format(Locale.getDefault(),"%019d", 0)));
+ }
+
public static MiniDFSCluster setupClass(String dir, boolean safeModeTesting, boolean haTesting) throws Exception {
LuceneTestCase.assumeFalse("HDFS tests were disabled by -Dtests.disableHdfs",
- Boolean.parseBoolean(System.getProperty("tests.disableHdfs", "false")));
+ Boolean.parseBoolean(System.getProperty("tests.disableHdfs", "false")));
+
+ checkFastDateFormat();
+ checkGeneratedIdMatches();
- savedLocale = Locale.getDefault();
- // TODO: we HACK around HADOOP-9643
- Locale.setDefault(Locale.ENGLISH);
-
if (!HA_TESTING_ENABLED) haTesting = false;
-
-
- // keep netty from using secure random on startup: SOLR-10098
- ThreadLocalRandom.setInitialSeedUniquifier(1L);
-
+
int dataNodes = Integer.getInteger("tests.hdfs.numdatanodes", 2);
-
+
Configuration conf = new Configuration();
conf.set("dfs.block.access.token.enable", "false");
conf.set("dfs.permissions.enabled", "false");
@@ -90,45 +108,43 @@ public class HdfsTestUtil {
conf.set("hdfs.minidfs.basedir", dir + File.separator + "hdfsBaseDir");
conf.set("dfs.namenode.name.dir", dir + File.separator + "nameNodeNameDir");
conf.setBoolean("fs.hdfs.impl.disable.cache", true);
-
+
System.setProperty("test.build.data", dir + File.separator + "hdfs" + File.separator + "build");
System.setProperty("test.cache.data", dir + File.separator + "hdfs" + File.separator + "cache");
System.setProperty("solr.lock.type", DirectoryFactory.LOCK_TYPE_HDFS);
-
-
+
System.setProperty("solr.hdfs.blockcache.global", Boolean.toString(LuceneTestCase.random().nextBoolean()));
-
+
final MiniDFSCluster dfsCluster;
-
if (!haTesting) {
- dfsCluster = new MiniDFSCluster(conf, dataNodes, true, null);
+ dfsCluster = new MiniDFSCluster.Builder(conf).numDataNodes(dataNodes).format(true).build();
+
System.setProperty("solr.hdfs.home", getDataDir(dfsCluster, "solr_hdfs_home"));
} else {
-
dfsCluster = new MiniDFSCluster.Builder(conf)
.nnTopology(MiniDFSNNTopology.simpleHATopology()).numDataNodes(dataNodes)
.build();
-
+
Configuration haConfig = getClientConfiguration(dfsCluster);
HdfsUtil.TEST_CONF = haConfig;
System.setProperty("solr.hdfs.home", getDataDir(dfsCluster, "solr_hdfs_home"));
}
-
+
dfsCluster.waitActive();
-
+
if (haTesting) dfsCluster.transitionToActive(0);
-
+
int rndMode = LuceneTestCase.random().nextInt(3);
if (safeModeTesting && rndMode == 1) {
NameNodeAdapter.enterSafeMode(dfsCluster.getNameNode(), false);
-
+
int rnd = LuceneTestCase.random().nextInt(10000);
Timer timer = new Timer();
timers.put(dfsCluster, timer);
timer.schedule(new TimerTask() {
-
+
@Override
public void run() {
NameNodeAdapter.leaveSafeMode(dfsCluster.getNameNode());
@@ -140,7 +156,7 @@ public class HdfsTestUtil {
Timer timer = new Timer();
timers.put(dfsCluster, timer);
timer.schedule(new TimerTask() {
-
+
@Override
public void run() {
// TODO: randomly transition to standby
@@ -154,7 +170,6 @@ public class HdfsTestUtil {
}
}, rnd);
} else {
-
// TODO: we could do much better at testing this
// force a lease recovery by creating a tlog file and not closing it
URI uri = dfsCluster.getURI();
@@ -163,9 +178,9 @@ public class HdfsTestUtil {
badTlogOutStreamFs = FileSystem.get(hdfsDirPath.toUri(), conf);
badTlogOutStream = badTlogOutStreamFs.create(hdfsDirPath);
}
-
+
SolrTestCaseJ4.useFactory("org.apache.solr.core.HdfsDirectoryFactory");
-
+
return dfsCluster;
}
@@ -178,45 +193,44 @@ public class HdfsTestUtil {
return new Configuration();
}
}
-
+
public static void teardownClass(MiniDFSCluster dfsCluster) throws Exception {
-
+
if (badTlogOutStream != null) {
IOUtils.closeQuietly(badTlogOutStream);
}
-
+
if (badTlogOutStreamFs != null) {
IOUtils.closeQuietly(badTlogOutStreamFs);
}
-
+
SolrTestCaseJ4.resetFactory();
- System.clearProperty("solr.lock.type");
- System.clearProperty("test.build.data");
- System.clearProperty("test.cache.data");
- System.clearProperty("solr.hdfs.home");
- System.clearProperty("solr.hdfs.blockcache.global");
- if (dfsCluster != null) {
- Timer timer = timers.remove(dfsCluster);
- if (timer != null) {
- timer.cancel();
- }
- try {
- dfsCluster.shutdown();
- } catch (Error e) {
- // Added in SOLR-7134
- // Rarely, this can fail to either a NullPointerException
- // or a class not found exception. The later may fixable
- // by adding test dependencies.
- log.warn("Exception shutting down dfsCluster", e);
+
+ try {
+ if (dfsCluster != null) {
+ Timer timer = timers.remove(dfsCluster);
+ if (timer != null) {
+ timer.cancel();
+ }
+ try {
+ dfsCluster.shutdown();
+ } catch (Error e) {
+ // Added in SOLR-7134
+ // Rarely, this can fail to either a NullPointerException
+ // or a class not found exception. The later may fixable
+ // by adding test dependencies.
+ log.warn("Exception shutting down dfsCluster", e);
+ }
}
- }
-
- // TODO: we HACK around HADOOP-9643
- if (savedLocale != null) {
- Locale.setDefault(savedLocale);
+ } finally {
+ System.clearProperty("solr.lock.type");
+ System.clearProperty("test.build.data");
+ System.clearProperty("test.cache.data");
+ System.clearProperty("solr.hdfs.home");
+ System.clearProperty("solr.hdfs.blockcache.global");
}
}
-
+
public static String getDataDir(MiniDFSCluster dfsCluster, String dataDir)
throws IOException {
if (dataDir == null) {
@@ -225,10 +239,10 @@ public class HdfsTestUtil {
String dir = "/"
+ new File(dataDir).toString().replaceAll(":", "_")
.replaceAll("/", "_").replaceAll(" ", "_");
-
+
return getURI(dfsCluster) + dir;
}
-
+
public static String getURI(MiniDFSCluster dfsCluster) {
if (dfsCluster.getNameNodeInfos().length > 1) {
String logicalName = String.format(Locale.ENGLISH, LOGICAL_HOSTNAME, dfsCluster.getInstanceId()); // NOTE: hdfs uses default locale
@@ -239,4 +253,24 @@ public class HdfsTestUtil {
}
}
+ /**
+ * By default in JDK9+, the ForkJoinWorkerThreadFactory does not give SecurityManager permissions
+ * to threads that are created. This works around that with a custom thread factory.
+ * See SOLR-9515 and HDFS-14251
+ * Used in org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.BlockPoolSlice
+ */
+ public static class HDFSForkJoinThreadFactory implements ForkJoinPool.ForkJoinWorkerThreadFactory {
+ @Override
+ public ForkJoinWorkerThread newThread(ForkJoinPool pool) {
+ ForkJoinWorkerThread worker = new SecurityManagerWorkerThread(pool);
+ worker.setName("solr-hdfs-threadpool-" + worker.getPoolIndex());
+ return worker;
+ }
+ }
+
+ private static class SecurityManagerWorkerThread extends ForkJoinWorkerThread {
+ SecurityManagerWorkerThread(ForkJoinPool pool) {
+ super(pool);
+ }
+ }
}
diff --git a/solr/core/src/test/org/apache/solr/handler/export/TestExportWriter.java b/solr/core/src/test/org/apache/solr/handler/export/TestExportWriter.java
index 6328a3f..f28f7dc 100644
--- a/solr/core/src/test/org/apache/solr/handler/export/TestExportWriter.java
+++ b/solr/core/src/test/org/apache/solr/handler/export/TestExportWriter.java
@@ -28,6 +28,7 @@ import java.util.Locale;
import java.util.Map;
import java.util.Set;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.lucene.util.TestUtil;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.SolrInputDocument;
@@ -35,7 +36,6 @@ import org.apache.solr.common.util.SuppressForbidden;
import org.apache.solr.common.util.Utils;
import org.apache.solr.request.SolrQueryRequest;
import org.apache.solr.schema.SchemaField;
-import org.codehaus.jackson.map.ObjectMapper;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
diff --git a/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java b/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
index ec263c4..7a13a03 100644
--- a/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
+++ b/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
@@ -26,7 +26,6 @@ import org.apache.solr.common.params.SolrParams;
import org.apache.solr.request.SolrQueryRequest;
import org.apache.solr.response.transform.DocTransformer;
import org.apache.solr.response.transform.TransformerFactory;
-import org.bouncycastle.util.Strings;
import org.junit.After;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -75,7 +74,7 @@ public class TestCustomDocTransformer extends SolrTestCaseJ4 {
String[] extra = null;
String ext = params.get("extra");
if(ext!=null) {
- extra = Strings.split(ext, ',');
+ extra = ext.split(",");
}
return new CustomTransformer(field, extra);
}
diff --git a/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java b/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
index b9bd029..cf1039a 100644
--- a/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
+++ b/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
@@ -157,7 +157,7 @@ public class HdfsDirectoryTest extends SolrTestCaseJ4 {
try {
input.readByte();
fail("should throw eof");
- } catch (IOException e) {
+ } catch (Exception e) {
}
}
diff --git a/solr/licenses/antlr-2.7.7.jar.sha1 b/solr/licenses/antlr-2.7.7.jar.sha1
deleted file mode 100644
index 8a6a857..0000000
--- a/solr/licenses/antlr-2.7.7.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-83cd2cd674a217ade95a4bb83a8a14f351f48bd0
diff --git a/solr/licenses/antlr-LICENSE-PD.txt b/solr/licenses/antlr-LICENSE-PD.txt
deleted file mode 100644
index d62cc1a..0000000
--- a/solr/licenses/antlr-LICENSE-PD.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-
-SOFTWARE RIGHTS
-
-ANTLR 1989-2006 Developed by Terence Parr
-Partially supported by University of San Francisco & jGuru.com
-
-We reserve no legal rights to the ANTLR--it is fully in the
-public domain. An individual or company may do whatever
-they wish with source code distributed with ANTLR or the
-code generated by ANTLR, including the incorporation of
-ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However,
-we do ask that credit is given to us for developing
-ANTLR. By "credit", we mean that if you use ANTLR or
-incorporate any source code into one of your programs
-(commercial product, research project, or otherwise) that
-you acknowledge this fact somewhere in the documentation,
-research report, etc... If you like ANTLR and have
-developed a nice tool with the output, please mention that
-you developed it using ANTLR. In addition, we ask that the
-headers remain intact in our source code. As long as these
-guidelines are kept, we expect to continue enhancing this
-system and expect to make other tools available as they are
-completed.
-
-The primary ANTLR guy:
-
-Terence Parr
-parrt@cs.usfca.edu
-parrt@antlr.org
diff --git a/solr/licenses/antlr-NOTICE.txt b/solr/licenses/antlr-NOTICE.txt
deleted file mode 100644
index 8d1c8b6..0000000
--- a/solr/licenses/antlr-NOTICE.txt
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/solr/licenses/apacheds-core-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-core-2.0.0-M15.jar.sha1
deleted file mode 100644
index 199bb37..0000000
--- a/solr/licenses/apacheds-core-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-0e53831601e0e0280b85d99066d2e457b0ed1514
diff --git a/solr/licenses/apacheds-core-NOTICE.txt b/solr/licenses/apacheds-core-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-core-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-core-api-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-core-api-2.0.0-M15.jar.sha1
deleted file mode 100644
index 1059521..0000000
--- a/solr/licenses/apacheds-core-api-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-99cfff546f06bd6d759d856e02ae98a0d8684b83
diff --git a/solr/licenses/apacheds-core-api-NOTICE.txt b/solr/licenses/apacheds-core-api-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-core-api-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-core-avl-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-core-avl-2.0.0-M15.jar.sha1
deleted file mode 100644
index f081309..0000000
--- a/solr/licenses/apacheds-core-avl-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-833f6da78238e525abfd91f997515b6907d55b2b
diff --git a/solr/licenses/apacheds-core-avl-NOTICE.txt b/solr/licenses/apacheds-core-avl-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-core-avl-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-core-shared-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-core-shared-2.0.0-M15.jar.sha1
deleted file mode 100644
index f4240d3..0000000
--- a/solr/licenses/apacheds-core-shared-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-1325e009218e4b9264bdbb103a92d0596331802c
diff --git a/solr/licenses/apacheds-core-shared-NOTICE.txt b/solr/licenses/apacheds-core-shared-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-core-shared-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-i18n-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-i18n-2.0.0-M15.jar.sha1
deleted file mode 100644
index 650c11b..0000000
--- a/solr/licenses/apacheds-i18n-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-71c61c84683152ec2a6a65f3f96fe534e304fa22
diff --git a/solr/licenses/apacheds-i18n-LICENSE-ASL.txt b/solr/licenses/apacheds-i18n-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-i18n-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-i18n-NOTICE.txt b/solr/licenses/apacheds-i18n-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-i18n-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptor-kerberos-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptor-kerberos-2.0.0-M15.jar.sha1
deleted file mode 100644
index 5b461b4..0000000
--- a/solr/licenses/apacheds-interceptor-kerberos-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-bf616b6b62cd5704f2377f7535648d1a77f6f1b5
diff --git a/solr/licenses/apacheds-interceptor-kerberos-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptor-kerberos-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptor-kerberos-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptor-kerberos-NOTICE.txt b/solr/licenses/apacheds-interceptor-kerberos-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptor-kerberos-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-admin-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-admin-2.0.0-M15.jar.sha1
deleted file mode 100644
index 3ecacbe..0000000
--- a/solr/licenses/apacheds-interceptors-admin-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-34d022acd75bb3547f0f22f4cd9c4d1c7218c1fa
diff --git a/solr/licenses/apacheds-interceptors-admin-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-admin-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-admin-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-admin-NOTICE.txt b/solr/licenses/apacheds-interceptors-admin-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-admin-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-authn-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-authn-2.0.0-M15.jar.sha1
deleted file mode 100644
index efea35e..0000000
--- a/solr/licenses/apacheds-interceptors-authn-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-17c72607cf9ca34f44b3d74092df6a398a01e835
diff --git a/solr/licenses/apacheds-interceptors-authn-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-authn-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-authn-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-authn-NOTICE.txt b/solr/licenses/apacheds-interceptors-authn-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-authn-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-authz-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-authz-2.0.0-M15.jar.sha1
deleted file mode 100644
index bbaaa57..0000000
--- a/solr/licenses/apacheds-interceptors-authz-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-2ce8c85c90cf5586957eae4735118bf89f22b105
diff --git a/solr/licenses/apacheds-interceptors-authz-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-authz-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-authz-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-authz-NOTICE.txt b/solr/licenses/apacheds-interceptors-authz-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-authz-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-changelog-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-changelog-2.0.0-M15.jar.sha1
deleted file mode 100644
index d8abb41..0000000
--- a/solr/licenses/apacheds-interceptors-changelog-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-916079624b3eae7ed69620ab51ef9bf5a9fe08d0
diff --git a/solr/licenses/apacheds-interceptors-changelog-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-changelog-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-changelog-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-changelog-NOTICE.txt b/solr/licenses/apacheds-interceptors-changelog-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-changelog-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-collective-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-collective-2.0.0-M15.jar.sha1
deleted file mode 100644
index b5cf742..0000000
--- a/solr/licenses/apacheds-interceptors-collective-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f5407e78daab47bc7d64b9977c8e9d315d0d52de
diff --git a/solr/licenses/apacheds-interceptors-collective-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-collective-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-collective-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-collective-NOTICE.txt b/solr/licenses/apacheds-interceptors-collective-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-collective-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-event-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-event-2.0.0-M15.jar.sha1
deleted file mode 100644
index 4c404d2..0000000
--- a/solr/licenses/apacheds-interceptors-event-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-ae4cb3190736ec27dc74a5a53eaf12fde05620eb
diff --git a/solr/licenses/apacheds-interceptors-event-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-event-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-event-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-event-NOTICE.txt b/solr/licenses/apacheds-interceptors-event-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-event-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-exception-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-exception-2.0.0-M15.jar.sha1
deleted file mode 100644
index c4ff286..0000000
--- a/solr/licenses/apacheds-interceptors-exception-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-501cd43cd3bac1034d5bbad118cdabff6d3cdc43
diff --git a/solr/licenses/apacheds-interceptors-exception-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-exception-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-exception-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-exception-NOTICE.txt b/solr/licenses/apacheds-interceptors-exception-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-exception-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-journal-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-journal-2.0.0-M15.jar.sha1
deleted file mode 100644
index ef5171e..0000000
--- a/solr/licenses/apacheds-interceptors-journal-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-db0fcdbe5b551604b89ccc7f2e1024f7f5351531
diff --git a/solr/licenses/apacheds-interceptors-journal-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-journal-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-journal-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-journal-NOTICE.txt b/solr/licenses/apacheds-interceptors-journal-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-journal-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-normalization-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-normalization-2.0.0-M15.jar.sha1
deleted file mode 100644
index 717b5c9..0000000
--- a/solr/licenses/apacheds-interceptors-normalization-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-75a23eb65e7e0cf3a2de49bdc33dd1db058d7447
diff --git a/solr/licenses/apacheds-interceptors-normalization-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-normalization-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-normalization-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-normalization-NOTICE.txt b/solr/licenses/apacheds-interceptors-normalization-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-normalization-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-operational-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-operational-2.0.0-M15.jar.sha1
deleted file mode 100644
index fc9eda6..0000000
--- a/solr/licenses/apacheds-interceptors-operational-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-b9ebccb27ec2a70b9483061d430ae112032c2400
diff --git a/solr/licenses/apacheds-interceptors-operational-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-operational-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-operational-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-operational-NOTICE.txt b/solr/licenses/apacheds-interceptors-operational-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-operational-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-referral-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-referral-2.0.0-M15.jar.sha1
deleted file mode 100644
index ffe1f71..0000000
--- a/solr/licenses/apacheds-interceptors-referral-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f75d6d32aa7c1853e333684df363365c62be2590
diff --git a/solr/licenses/apacheds-interceptors-referral-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-referral-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-referral-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-referral-NOTICE.txt b/solr/licenses/apacheds-interceptors-referral-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-referral-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-schema-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-schema-2.0.0-M15.jar.sha1
deleted file mode 100644
index a948fbf..0000000
--- a/solr/licenses/apacheds-interceptors-schema-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-df15748968516ec923bff743d28255aaff7890c0
diff --git a/solr/licenses/apacheds-interceptors-schema-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-schema-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-schema-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-schema-NOTICE.txt b/solr/licenses/apacheds-interceptors-schema-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-schema-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-subtree-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-subtree-2.0.0-M15.jar.sha1
deleted file mode 100644
index 540af71..0000000
--- a/solr/licenses/apacheds-interceptors-subtree-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-6049550e4299030267762f06fbb46eacd57dffbe
diff --git a/solr/licenses/apacheds-interceptors-subtree-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-subtree-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-subtree-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-subtree-NOTICE.txt b/solr/licenses/apacheds-interceptors-subtree-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-subtree-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Safehaus JUG
-Copyright 2005 Safehaus
-
-This product includes software developed at
-Safehaus (http://docs.safehaus.org/display/HAUS/Home).
-
- ======================================================================
- == NOTICE file corresponding to section 4 d of the Apache License, ==
- == Version 2.0, in this case for the Spring Framework distribution. ==
- ======================================================================
-
- This product includes software developed by
- the Apache Software Foundation (http://www.apache.org).
-
- This product also includes software developed by
- Clinton Begin (http://www.ibatis.com).
diff --git a/solr/licenses/apacheds-interceptors-trigger-2.0.0-M15.jar.sha1 b/solr/licenses/apacheds-interceptors-trigger-2.0.0-M15.jar.sha1
deleted file mode 100644
index 01672d5..0000000
--- a/solr/licenses/apacheds-interceptors-trigger-2.0.0-M15.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-1276f59867add17a5835d2130be2a888895ca3cc
diff --git a/solr/licenses/apacheds-interceptors-trigger-LICENSE-ASL.txt b/solr/licenses/apacheds-interceptors-trigger-LICENSE-ASL.txt
deleted file mode 100644
index 3615005..0000000
--- a/solr/licenses/apacheds-interceptors-trigger-LICENSE-ASL.txt
+++ /dev/null
@@ -1,341 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
---------------------------------------------------------------------------------------------------
-ANTLR 2 License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
-may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
-including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
-for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
-into one of your programs (commercial product, research project, or otherwise) that you acknowledge
-this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
-a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
-the headers remain intact in our source code. As long as these guidelines are kept, we expect to
-continue enhancing this system and expect to make other tools available as they are completed.
-
---------------------------------------------------------------------------------------------------
-/**
- * JDBM LICENSE v1.00
- *
- * Redistribution and use of this software and associated documentation
- * ("Software"), with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * 1. Redistributions of source code must retain copyright
- * statements and notices. Redistributions must also contain a
- * copy of this document.
- *
- * 2. Redistributions in binary form must reproduce the
- * above copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * 3. The name "JDBM" must not be used to endorse or promote
- * products derived from this Software without prior written
- * permission of Cees de Groot. For written permission,
- * please contact cg@cdegroot.com.
- *
- * 4. Products derived from this Software may not be called "JDBM"
- * nor may "JDBM" appear in their names without prior written
- * permission of Cees de Groot.
- *
- * 5. Due credit should be given to the JDBM Project
- * (http://jdbm.sourceforge.net/).
- *
- * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
- * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
- * Contributions are Copyright (C) 2000 by their associated contributors.
- *
- * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
- */
---------------------------------------------------------------------------------------------------
-Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-JUG (package org/safehaus/uuid) is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-Spring is licensed under the AL v2.
---------------------------------------------------------------------------------------------------
-slf4j license:
-Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
-to any person obtaining a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation the rights to use, copy,
-modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the following conditions: The above
-copyright notice and this permission notice shall be included in all copies or substantial portions
-of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------------------------------------------------------------------
-Copyright (c) 1999, 2004 Tanuki Software
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of the Java Service Wrapper and associated
-documentation files (the "Software"), to deal in the Software
-without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sub-license,
-and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-
-Portions of the Software have been derived from source code
-developed by Silver Egg Technology under the following license:
-
-Copyright (c) 2001 Silver Egg Technology
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sub-license, and/or
-sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
diff --git a/solr/licenses/apacheds-interceptors-trigger-NOTICE.txt b/solr/licenses/apacheds-interceptors-trigger-NOTICE.txt
deleted file mode 100644
index 2e454e2..0000000
--- a/solr/licenses/apacheds-interceptors-trigger-NOTICE.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Apache Directory Server
-Copyright 2003-2013 The Apache Software Foundation
... 6707 lines suppressed ...