You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ta...@apache.org on 2016/04/22 18:41:10 UTC
[1/2] tika git commit: TIKA-1924 -- upgrade to isoparser 1.1.18. Add
workaround to prevent infinite loop. Remove aspectjrt license because
isoparser 1.1.18 no longer relies on it.
Repository: tika
Updated Branches:
refs/heads/master 0dc29d08d -> c9d508dc1
TIKA-1924 -- upgrade to isoparser 1.1.18. Add workaround to prevent infinite loop. Remove aspectjrt license because isoparser 1.1.18 no longer relies on it.
Project: http://git-wip-us.apache.org/repos/asf/tika/repo
Commit: http://git-wip-us.apache.org/repos/asf/tika/commit/2cce66dd
Tree: http://git-wip-us.apache.org/repos/asf/tika/tree/2cce66dd
Diff: http://git-wip-us.apache.org/repos/asf/tika/diff/2cce66dd
Branch: refs/heads/master
Commit: 2cce66ddde6f44c258418bc5a057ba58e6267098
Parents: 0dc29d0
Author: tballison <ta...@mitre.org>
Authored: Fri Apr 22 10:53:55 2016 -0400
Committer: tballison <ta...@mitre.org>
Committed: Fri Apr 22 10:53:55 2016 -0400
----------------------------------------------------------------------
.../main/appended-resources/META-INF/LICENSE | 227 -------------------
tika-bundle/pom.xml | 2 +-
.../main/appended-resources/META-INF/LICENSE | 226 ------------------
tika-parsers/pom.xml | 2 +-
.../parser/mp4/DirectFileReadDataSource.java | 7 +-
.../apache/tika/parser/mp4/MP4ParserTest.java | 12 +-
.../test-documents/testMP4_truncated.m4a | Bin 0 -> 74 bytes
tika-server/pom.xml | 19 --
8 files changed, 17 insertions(+), 478 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-app/src/main/appended-resources/META-INF/LICENSE
----------------------------------------------------------------------
diff --git a/tika-app/src/main/appended-resources/META-INF/LICENSE b/tika-app/src/main/appended-resources/META-INF/LICENSE
index f828d69..f63badc 100644
--- a/tika-app/src/main/appended-resources/META-INF/LICENSE
+++ b/tika-app/src/main/appended-resources/META-INF/LICENSE
@@ -896,233 +896,6 @@ juniversalchardet library (juniversalchardet)
use the text of this Exhibit A rather than the text found in the
Original Code Source Code for Your Modifications.]
-AspectJ runtime library (aspectjrt)
-
- Eclipse Public License - v 1.0
-
- THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
- PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
- THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
- 1. DEFINITIONS
-
- "Contribution" means:
-
- a) in the case of the initial Contributor, the initial code and
- documentation distributed under this Agreement, and
-
- b) in the case of each subsequent Contributor:
-
- i) changes to the Program, and
-
- ii) additions to the Program;
-
- where such changes and/or additions to the Program originate from and
- are distributed by that particular Contributor. A Contribution
- 'originates' from a Contributor if it was added to the Program by
- such Contributor itself or anyone acting on such Contributor's behalf.
- Contributions do not include additions to the Program which: (i) are
- separate modules of software distributed in conjunction with the
- Program under their own license agreement, and (ii) are not derivative
- works of the Program.
-
- "Contributor" means any person or entity that distributes the Program.
-
- "Licensed Patents " mean patent claims licensable by a Contributor which
- are necessarily infringed by the use or sale of its Contribution alone or
- when combined with the Program.
-
- "Program" means the Contributions distributed in accordance with this
- Agreement.
-
- "Recipient" means anyone who receives the Program under this Agreement,
- including all Contributors.
-
- 2. GRANT OF RIGHTS
-
- a) Subject to the terms of this Agreement, each Contributor hereby grants
- Recipient a non-exclusive, worldwide, royalty-free copyright license to
- reproduce, prepare derivative works of, publicly display, publicly
- perform, distribute and sublicense the Contribution of such
- Contributor, if any, and such derivative works, in source code and
- object code form.
-
- b) Subject to the terms of this Agreement, each Contributor hereby grants
- Recipient a non-exclusive, worldwide, royalty-free patent license under
- Licensed Patents to make, use, sell, offer to sell, import and
- otherwise transfer the Contribution of such Contributor, if any, in
- source code and object code form. This patent license shall apply to
- the combination of the Contribution and the Program if, at the time
- the Contribution is added by the Contributor, such addition of the
- Contribution causes such combination to be covered by the Licensed
- Patents. The patent license shall not apply to any other combinations
- which include the Contribution. No hardware per se is licensed hereunder.
-
- c) Recipient understands that although each Contributor grants the
- licenses to its Contributions set forth herein, no assurances are
- provided by any Contributor that the Program does not infringe the
- patent or other intellectual property rights of any other entity. Each
- Contributor disclaims any liability to Recipient for claims brought by
- any other entity based on infringement of intellectual property rights
- or otherwise. As a condition to exercising the rights and licenses
- granted hereunder, each Recipient hereby assumes sole responsibility
- to secure any other intellectual property rights needed, if any. For
- example, if a third party patent license is required to allow Recipient
- to distribute the Program, it is Recipient's responsibility to acquire
- that license before distributing the Program.
-
- d) Each Contributor represents that to its knowledge it has sufficient
- copyright rights in its Contribution, if any, to grant the copyright
- license set forth in this Agreement.
-
- 3. REQUIREMENTS
-
- A Contributor may choose to distribute the Program in object code form
- under its own license agreement, provided that:
-
- a) it complies with the terms and conditions of this Agreement; and
-
- b) its license agreement:
-
- i) effectively disclaims on behalf of all Contributors all warranties
- and conditions, express and implied, including warranties or
- conditions of title and non-infringement, and implied warranties
- or conditions of merchantability and fitness for a particular
- purpose;
-
- ii) effectively excludes on behalf of all Contributors all liability
- for damages, including direct, indirect, special, incidental and
- consequential damages, such as lost profits;
-
- iii) states that any provisions which differ from this Agreement are
- offered by that Contributor alone and not by any other party; and
-
- iv) states that source code for the Program is available from such
- Contributor, and informs licensees how to obtain it in a
- reasonable manner on or through a medium customarily used for
- software exchange.
-
- When the Program is made available in source code form:
-
- a) it must be made available under this Agreement; and
-
- b) a copy of this Agreement must be included with each copy of the
- Program.
-
- Contributors may not remove or alter any copyright notices contained
- within the Program.
-
- Each Contributor must identify itself as the originator of its
- Contribution, if any, in a manner that reasonably allows subsequent
- Recipients to identify the originator of the Contribution.
-
- 4. COMMERCIAL DISTRIBUTION
-
- Commercial distributors of software may accept certain responsibilities
- with respect to end users, business partners and the like. While this
- license is intended to facilitate the commercial use of the Program,
- the Contributor who includes the Program in a commercial product offering
- should do so in a manner which does not create potential liability for
- other Contributors. Therefore, if a Contributor includes the Program in
- a commercial product offering, such Contributor ("Commercial Contributor")
- hereby agrees to defend and indemnify every other Contributor
- ("Indemnified Contributor") against any losses, damages and costs
- (collectively "Losses") arising from claims, lawsuits and other legal
- actions brought by a third party against the Indemnified Contributor to
- the extent caused by the acts or omissions of such Commercial Contributor
- in connection with its distribution of the Program in a commercial
- product offering. The obligations in this section do not apply to any
- claims or Losses relating to any actual or alleged intellectual property
- infringement. In order to qualify, an Indemnified Contributor must:
- a) promptly notify the Commercial Contributor in writing of such claim,
- and b) allow the Commercial Contributor to control, and cooperate with
- the Commercial Contributor in, the defense and any related settlement
- negotiations. The Indemnified Contributor may participate in any such
- claim at its own expense.
-
- For example, a Contributor might include the Program in a commercial
- product offering, Product X. That Contributor is then a Commercial
- Contributor. If that Commercial Contributor then makes performance claims,
- or offers warranties related to Product X, those performance claims and
- warranties are such Commercial Contributor's responsibility alone. Under
- this section, the Commercial Contributor would have to defend claims
- against the other Contributors related to those performance claims and
- warranties, and if a court requires any other Contributor to pay any
- damages as a result, the Commercial Contributor must pay those damages.
-
- 5. NO WARRANTY
-
- EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED
- 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. Each Recipient is solely responsible for determining
- the appropriateness of using and distributing the Program and assumes all
- risks associated with its exercise of rights under this Agreement ,
- including but not limited to the risks and costs of program errors,
- compliance with applicable laws, damage to or loss of data, programs or
- equipment, and unavailability or interruption of operations.
-
- 6. DISCLAIMER OF LIABILITY
-
- EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
- ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
- WITHOUT LIMITATION LOST PROFITS), 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 OR
- DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
- HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
- 7. GENERAL
-
- If any provision of this Agreement is invalid or unenforceable under
- applicable law, it shall not affect the validity or enforceability of
- the remainder of the terms of this Agreement, and without further action
- by the parties hereto, such provision shall be reformed to the minimum
- extent necessary to make such provision valid and enforceable.
-
- If Recipient institutes patent litigation against any entity (including
- a cross-claim or counterclaim in a lawsuit) alleging that the Program
- itself (excluding combinations of the Program with other software or
- hardware) infringes such Recipient's patent(s), then such Recipient's
- rights granted under Section 2(b) shall terminate as of the date such
- litigation is filed.
-
- All Recipient's rights under this Agreement shall terminate if it fails
- to comply with any of the material terms or conditions of this Agreement
- and does not cure such failure in a reasonable period of time after
- becoming aware of such noncompliance. If all Recipient's rights under
- this Agreement terminate, Recipient agrees to cease use and distribution
- of the Program as soon as reasonably practicable. However, Recipient's
- obligations under this Agreement and any licenses granted by Recipient
- relating to the Program shall continue and survive.
-
- Everyone is permitted to copy and distribute copies of this Agreement,
- but in order to avoid inconsistency the Agreement is copyrighted and may
- only be modified in the following manner. The Agreement Steward reserves
- the right to publish new versions (including revisions) of this Agreement
- from time to time. No one other than the Agreement Steward has the right
- to modify this Agreement. The Eclipse Foundation is the initial Agreement
- Steward. The Eclipse Foundation may assign the responsibility to serve as
- the Agreement Steward to a suitable separate entity. Each new version of
- the Agreement will be given a distinguishing version number. The Program
- (including Contributions) may always be distributed subject to the version
- of the Agreement under which it was received. In addition, after a new
- version of the Agreement is published, Contributor may elect to distribute
- the Program (including its Contributions) under the new version. Except as
- expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
- rights or licenses to the intellectual property of any Contributor under
- this Agreement, whether expressly, by implication, estoppel or otherwise.
- All rights in the Program not expressly granted under this Agreement
- are reserved.
-
- This Agreement is governed by the laws of the State of New York and the
- intellectual property laws of the United States of America. No party to
- this Agreement will bring a legal action under this Agreement more than
- one year after the cause of action arose. Each party waives its rights to
- a jury trial in any resulting litigation.
-
Sqlite (included in the "provided" org.xerial's sqlite-jdbc)
Sqlite is in the Public Domain. For details
see: https://www.sqlite.org/copyright.html
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-bundle/pom.xml
----------------------------------------------------------------------
diff --git a/tika-bundle/pom.xml b/tika-bundle/pom.xml
index 5b8f214..f7d119d 100644
--- a/tika-bundle/pom.xml
+++ b/tika-bundle/pom.xml
@@ -137,7 +137,7 @@
asm,
juniversalchardet,
vorbis-java-core, vorbis-java-tika,
- isoparser, aspectjrt,
+ isoparser,
metadata-extractor, xmpcore, json-simple,
boilerpipe, rome, rome-utils, opennlp-tools, opennlp-maxent,
geoapi, sis-metadata, sis-netcdf, sis-utility,
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-bundle/src/main/appended-resources/META-INF/LICENSE
----------------------------------------------------------------------
diff --git a/tika-bundle/src/main/appended-resources/META-INF/LICENSE b/tika-bundle/src/main/appended-resources/META-INF/LICENSE
index d819fc2..c008bda 100644
--- a/tika-bundle/src/main/appended-resources/META-INF/LICENSE
+++ b/tika-bundle/src/main/appended-resources/META-INF/LICENSE
@@ -864,229 +864,3 @@ juniversalchardet library (juniversalchardet)
use the text of this Exhibit A rather than the text found in the
Original Code Source Code for Your Modifications.]
-AspectJ runtime library (aspectjrt)
-
- Eclipse Public License - v 1.0
-
- THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
- PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
- THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
- 1. DEFINITIONS
-
- "Contribution" means:
-
- a) in the case of the initial Contributor, the initial code and
- documentation distributed under this Agreement, and
-
- b) in the case of each subsequent Contributor:
-
- i) changes to the Program, and
-
- ii) additions to the Program;
-
- where such changes and/or additions to the Program originate from and
- are distributed by that particular Contributor. A Contribution
- 'originates' from a Contributor if it was added to the Program by
- such Contributor itself or anyone acting on such Contributor's behalf.
- Contributions do not include additions to the Program which: (i) are
- separate modules of software distributed in conjunction with the
- Program under their own license agreement, and (ii) are not derivative
- works of the Program.
-
- "Contributor" means any person or entity that distributes the Program.
-
- "Licensed Patents " mean patent claims licensable by a Contributor which
- are necessarily infringed by the use or sale of its Contribution alone or
- when combined with the Program.
-
- "Program" means the Contributions distributed in accordance with this
- Agreement.
-
- "Recipient" means anyone who receives the Program under this Agreement,
- including all Contributors.
-
- 2. GRANT OF RIGHTS
-
- a) Subject to the terms of this Agreement, each Contributor hereby grants
- Recipient a non-exclusive, worldwide, royalty-free copyright license to
- reproduce, prepare derivative works of, publicly display, publicly
- perform, distribute and sublicense the Contribution of such
- Contributor, if any, and such derivative works, in source code and
- object code form.
-
- b) Subject to the terms of this Agreement, each Contributor hereby grants
- Recipient a non-exclusive, worldwide, royalty-free patent license under
- Licensed Patents to make, use, sell, offer to sell, import and
- otherwise transfer the Contribution of such Contributor, if any, in
- source code and object code form. This patent license shall apply to
- the combination of the Contribution and the Program if, at the time
- the Contribution is added by the Contributor, such addition of the
- Contribution causes such combination to be covered by the Licensed
- Patents. The patent license shall not apply to any other combinations
- which include the Contribution. No hardware per se is licensed hereunder.
-
- c) Recipient understands that although each Contributor grants the
- licenses to its Contributions set forth herein, no assurances are
- provided by any Contributor that the Program does not infringe the
- patent or other intellectual property rights of any other entity. Each
- Contributor disclaims any liability to Recipient for claims brought by
- any other entity based on infringement of intellectual property rights
- or otherwise. As a condition to exercising the rights and licenses
- granted hereunder, each Recipient hereby assumes sole responsibility
- to secure any other intellectual property rights needed, if any. For
- example, if a third party patent license is required to allow Recipient
- to distribute the Program, it is Recipient's responsibility to acquire
- that license before distributing the Program.
-
- d) Each Contributor represents that to its knowledge it has sufficient
- copyright rights in its Contribution, if any, to grant the copyright
- license set forth in this Agreement.
-
- 3. REQUIREMENTS
-
- A Contributor may choose to distribute the Program in object code form
- under its own license agreement, provided that:
-
- a) it complies with the terms and conditions of this Agreement; and
-
- b) its license agreement:
-
- i) effectively disclaims on behalf of all Contributors all warranties
- and conditions, express and implied, including warranties or
- conditions of title and non-infringement, and implied warranties
- or conditions of merchantability and fitness for a particular
- purpose;
-
- ii) effectively excludes on behalf of all Contributors all liability
- for damages, including direct, indirect, special, incidental and
- consequential damages, such as lost profits;
-
- iii) states that any provisions which differ from this Agreement are
- offered by that Contributor alone and not by any other party; and
-
- iv) states that source code for the Program is available from such
- Contributor, and informs licensees how to obtain it in a
- reasonable manner on or through a medium customarily used for
- software exchange.
-
- When the Program is made available in source code form:
-
- a) it must be made available under this Agreement; and
-
- b) a copy of this Agreement must be included with each copy of the
- Program.
-
- Contributors may not remove or alter any copyright notices contained
- within the Program.
-
- Each Contributor must identify itself as the originator of its
- Contribution, if any, in a manner that reasonably allows subsequent
- Recipients to identify the originator of the Contribution.
-
- 4. COMMERCIAL DISTRIBUTION
-
- Commercial distributors of software may accept certain responsibilities
- with respect to end users, business partners and the like. While this
- license is intended to facilitate the commercial use of the Program,
- the Contributor who includes the Program in a commercial product offering
- should do so in a manner which does not create potential liability for
- other Contributors. Therefore, if a Contributor includes the Program in
- a commercial product offering, such Contributor ("Commercial Contributor")
- hereby agrees to defend and indemnify every other Contributor
- ("Indemnified Contributor") against any losses, damages and costs
- (collectively "Losses") arising from claims, lawsuits and other legal
- actions brought by a third party against the Indemnified Contributor to
- the extent caused by the acts or omissions of such Commercial Contributor
- in connection with its distribution of the Program in a commercial
- product offering. The obligations in this section do not apply to any
- claims or Losses relating to any actual or alleged intellectual property
- infringement. In order to qualify, an Indemnified Contributor must:
- a) promptly notify the Commercial Contributor in writing of such claim,
- and b) allow the Commercial Contributor to control, and cooperate with
- the Commercial Contributor in, the defense and any related settlement
- negotiations. The Indemnified Contributor may participate in any such
- claim at its own expense.
-
- For example, a Contributor might include the Program in a commercial
- product offering, Product X. That Contributor is then a Commercial
- Contributor. If that Commercial Contributor then makes performance claims,
- or offers warranties related to Product X, those performance claims and
- warranties are such Commercial Contributor's responsibility alone. Under
- this section, the Commercial Contributor would have to defend claims
- against the other Contributors related to those performance claims and
- warranties, and if a court requires any other Contributor to pay any
- damages as a result, the Commercial Contributor must pay those damages.
-
- 5. NO WARRANTY
-
- EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED
- 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. Each Recipient is solely responsible for determining
- the appropriateness of using and distributing the Program and assumes all
- risks associated with its exercise of rights under this Agreement ,
- including but not limited to the risks and costs of program errors,
- compliance with applicable laws, damage to or loss of data, programs or
- equipment, and unavailability or interruption of operations.
-
- 6. DISCLAIMER OF LIABILITY
-
- EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
- ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
- WITHOUT LIMITATION LOST PROFITS), 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 OR
- DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
- HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
- 7. GENERAL
-
- If any provision of this Agreement is invalid or unenforceable under
- applicable law, it shall not affect the validity or enforceability of
- the remainder of the terms of this Agreement, and without further action
- by the parties hereto, such provision shall be reformed to the minimum
- extent necessary to make such provision valid and enforceable.
-
- If Recipient institutes patent litigation against any entity (including
- a cross-claim or counterclaim in a lawsuit) alleging that the Program
- itself (excluding combinations of the Program with other software or
- hardware) infringes such Recipient's patent(s), then such Recipient's
- rights granted under Section 2(b) shall terminate as of the date such
- litigation is filed.
-
- All Recipient's rights under this Agreement shall terminate if it fails
- to comply with any of the material terms or conditions of this Agreement
- and does not cure such failure in a reasonable period of time after
- becoming aware of such noncompliance. If all Recipient's rights under
- this Agreement terminate, Recipient agrees to cease use and distribution
- of the Program as soon as reasonably practicable. However, Recipient's
- obligations under this Agreement and any licenses granted by Recipient
- relating to the Program shall continue and survive.
-
- Everyone is permitted to copy and distribute copies of this Agreement,
- but in order to avoid inconsistency the Agreement is copyrighted and may
- only be modified in the following manner. The Agreement Steward reserves
- the right to publish new versions (including revisions) of this Agreement
- from time to time. No one other than the Agreement Steward has the right
- to modify this Agreement. The Eclipse Foundation is the initial Agreement
- Steward. The Eclipse Foundation may assign the responsibility to serve as
- the Agreement Steward to a suitable separate entity. Each new version of
- the Agreement will be given a distinguishing version number. The Program
- (including Contributions) may always be distributed subject to the version
- of the Agreement under which it was received. In addition, after a new
- version of the Agreement is published, Contributor may elect to distribute
- the Program (including its Contributions) under the new version. Except as
- expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
- rights or licenses to the intellectual property of any Contributor under
- this Agreement, whether expressly, by implication, estoppel or otherwise.
- All rights in the Program not expressly granted under this Agreement
- are reserved.
-
- This Agreement is governed by the laws of the State of New York and the
- intellectual property laws of the United States of America. No party to
- this Agreement will bring a legal action under this Agreement more than
- one year after the cause of action arose. Each party waives its rights to
- a jury trial in any resulting litigation.
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-parsers/pom.xml
----------------------------------------------------------------------
diff --git a/tika-parsers/pom.xml b/tika-parsers/pom.xml
index ec89cc0..bca5ef9 100644
--- a/tika-parsers/pom.xml
+++ b/tika-parsers/pom.xml
@@ -203,7 +203,7 @@
<dependency>
<groupId>com.googlecode.mp4parser</groupId>
<artifactId>isoparser</artifactId>
- <version>1.1.7</version>
+ <version>1.1.18</version>
</dependency>
<dependency>
<groupId>com.drewnoakes</groupId>
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-parsers/src/main/java/org/apache/tika/parser/mp4/DirectFileReadDataSource.java
----------------------------------------------------------------------
diff --git a/tika-parsers/src/main/java/org/apache/tika/parser/mp4/DirectFileReadDataSource.java b/tika-parsers/src/main/java/org/apache/tika/parser/mp4/DirectFileReadDataSource.java
index bea50a0..4e2c1ba 100644
--- a/tika-parsers/src/main/java/org/apache/tika/parser/mp4/DirectFileReadDataSource.java
+++ b/tika-parsers/src/main/java/org/apache/tika/parser/mp4/DirectFileReadDataSource.java
@@ -16,7 +16,7 @@
*/
package org.apache.tika.parser.mp4;
-import com.googlecode.mp4parser.DataSource;
+import static com.googlecode.mp4parser.util.CastUtils.l2i;
import java.io.File;
import java.io.IOException;
@@ -24,7 +24,7 @@ import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.channels.WritableByteChannel;
-import static com.googlecode.mp4parser.util.CastUtils.l2i;
+import com.googlecode.mp4parser.DataSource;
/**
* A {@link DataSource} implementation that relies on direct reads from a {@link RandomAccessFile}.
@@ -59,6 +59,9 @@ public class DirectFileReadDataSource implements DataSource {
}
byteBuffer.put(buf, 0, bytesRead);
}
+ if (bytesRead < 0 && position() == size() && byteBuffer.hasRemaining()) {
+ throw new IOException("End of stream reached earlier than expected");
+ }
return ((bytesRead < 0) && (totalRead == 0)) ? -1 : totalRead;
}
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
----------------------------------------------------------------------
diff --git a/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java b/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
index d4dc394..90476c6 100644
--- a/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
+++ b/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
@@ -16,11 +16,11 @@
*/
package org.apache.tika.parser.mp4;
-import static org.apache.tika.TikaTest.assertContains;
import static org.junit.Assert.assertEquals;
import java.io.InputStream;
+import org.apache.tika.TikaTest;
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.TikaCoreProperties;
@@ -36,7 +36,7 @@ import org.xml.sax.ContentHandler;
/**
* Test case for parsing mp4 files.
*/
-public class MP4ParserTest {
+public class MP4ParserTest extends TikaTest {
/**
* Test that we can extract information from
* a M4A MP4 Audio file
@@ -105,4 +105,12 @@ public class MP4ParserTest {
// TODO Test a MP4 Video file
// TODO Test an old QuickTime Video File
+ @Test(timeout = 30000)
+ public void testInfiniteLoop() throws Exception {
+ //test that a truncated mp4 doesn't cause an infinite loop
+ //TIKA-1931 and TIKA-1924
+ XMLResult r = getXML("testMP4_truncated.m4a");
+ assertEquals("audio/mp4", r.metadata.get(Metadata.CONTENT_TYPE));
+ assertEquals("M4A", r.metadata.get(XMPDM.AUDIO_COMPRESSOR));
+ }
}
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-parsers/src/test/resources/test-documents/testMP4_truncated.m4a
----------------------------------------------------------------------
diff --git a/tika-parsers/src/test/resources/test-documents/testMP4_truncated.m4a b/tika-parsers/src/test/resources/test-documents/testMP4_truncated.m4a
new file mode 100644
index 0000000..31fdef4
Binary files /dev/null and b/tika-parsers/src/test/resources/test-documents/testMP4_truncated.m4a differ
http://git-wip-us.apache.org/repos/asf/tika/blob/2cce66dd/tika-server/pom.xml
----------------------------------------------------------------------
diff --git a/tika-server/pom.xml b/tika-server/pom.xml
index 95d4615..d2ebf09 100644
--- a/tika-server/pom.xml
+++ b/tika-server/pom.xml
@@ -266,25 +266,6 @@
</excludes>
</configuration>
</plugin>
- <plugin>
- <groupId>com.qmino</groupId>
- <artifactId>miredot-maven-plugin</artifactId>
- <version>1.4</version>
- <executions>
- <execution>
- <goals>
- <goal>restdoc</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <licence>
- <!-- Miredot license key valid until August 1st, 2016 when we can apply for a new one - http://s.apache.org/oE -->
- UHJvamVjdHxvcmcuYXBhY2hlLnRpa2EudGlrYS1zZXJ2ZXJ8MjAxNi0wOC0wMXx0cnVlI01Dd0NGRklXRzRqRmNTZXNJb2laRElKZVF4RXpieUNTQWhSMHBmTzZCMUdMbDBPQ1B1WmJYQ3NpZElZSCtRPT0=
- </licence>
- <!-- insert other configuration here (optional) -->
- </configuration>
- </plugin>
</plugins>
</build>
<profiles>
[2/2] tika git commit: TIKA-1924 -- add back qmino from last commit
and clean up earlier work on ParseContext.
Posted by ta...@apache.org.
TIKA-1924 -- add back qmino from last commit and clean up earlier work on ParseContext.
Project: http://git-wip-us.apache.org/repos/asf/tika/repo
Commit: http://git-wip-us.apache.org/repos/asf/tika/commit/c9d508dc
Tree: http://git-wip-us.apache.org/repos/asf/tika/tree/c9d508dc
Diff: http://git-wip-us.apache.org/repos/asf/tika/diff/c9d508dc
Branch: refs/heads/master
Commit: c9d508dc184244bdc08657e7da2f33b9a1fd6bd2
Parents: 2cce66d
Author: tballison <ta...@mitre.org>
Authored: Fri Apr 22 12:40:22 2016 -0400
Committer: tballison <ta...@mitre.org>
Committed: Fri Apr 22 12:40:22 2016 -0400
----------------------------------------------------------------------
.../org/apache/tika/parser/NetworkParser.java | 4 +-
.../org/apache/tika/parser/ParseContext.java | 87 ++++++++++----------
.../ooxml/XSSFExcelExtractorDecorator.java | 1 +
tika-server/pom.xml | 19 +++++
4 files changed, 68 insertions(+), 43 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tika/blob/c9d508dc/tika-core/src/main/java/org/apache/tika/parser/NetworkParser.java
----------------------------------------------------------------------
diff --git a/tika-core/src/main/java/org/apache/tika/parser/NetworkParser.java b/tika-core/src/main/java/org/apache/tika/parser/NetworkParser.java
index 0130005..0f338b7 100644
--- a/tika-core/src/main/java/org/apache/tika/parser/NetworkParser.java
+++ b/tika-core/src/main/java/org/apache/tika/parser/NetworkParser.java
@@ -34,6 +34,7 @@ import org.apache.tika.io.TemporaryResources;
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.mime.MediaType;
+import org.apache.tika.sax.OfflineContentHandler;
import org.apache.tika.sax.TaggedContentHandler;
import org.apache.tika.sax.TeeContentHandler;
import org.xml.sax.Attributes;
@@ -121,7 +122,8 @@ public class NetworkParser extends AbstractParser {
Thread thread = new Thread(this, "Tika network parser");
thread.start();
- TaggedContentHandler tagged = new TaggedContentHandler(handler);
+ TaggedContentHandler tagged = new TaggedContentHandler(
+ new OfflineContentHandler(handler));
try {
context.getSAXParser().parse(
stream, new TeeContentHandler(
http://git-wip-us.apache.org/repos/asf/tika/blob/c9d508dc/tika-core/src/main/java/org/apache/tika/parser/ParseContext.java
----------------------------------------------------------------------
diff --git a/tika-core/src/main/java/org/apache/tika/parser/ParseContext.java b/tika-core/src/main/java/org/apache/tika/parser/ParseContext.java
index 9863cbf..f3f58ed 100644
--- a/tika-core/src/main/java/org/apache/tika/parser/ParseContext.java
+++ b/tika-core/src/main/java/org/apache/tika/parser/ParseContext.java
@@ -53,12 +53,21 @@ public class ParseContext implements Serializable {
/** Map of objects in this context */
private final Map<String, Object> context = new HashMap<String, Object>();
- public static final EntityResolver IGNORING_ENTITY_RESOLVER = new EntityResolver() {
+ public static final EntityResolver IGNORING_SAX_ENTITY_RESOLVER = new EntityResolver() {
public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
return new InputSource(new StringReader(""));
}
};
+ public static final XMLResolver IGNORING_STAX_ENTITY_RESOLVER =
+ new XMLResolver() {
+ @Override
+ public Object resolveEntity(String publicID, String systemID, String baseURI, String namespace) throws
+ XMLStreamException {
+ return "";
+ }
+ };
+
/**
* Adds the given value to the context as an implementation of the given
* interface.
@@ -174,13 +183,15 @@ public class ParseContext implements Serializable {
private DocumentBuilderFactory getDocumentBuilderFactory() {
//borrowed from Apache POI
DocumentBuilderFactory documentBuilderFactory = get(DocumentBuilderFactory.class);
- if (documentBuilderFactory == null) {
- documentBuilderFactory = DocumentBuilderFactory.newInstance();
+ if (documentBuilderFactory != null) {
+ return documentBuilderFactory;
}
+ documentBuilderFactory = DocumentBuilderFactory.newInstance();
documentBuilderFactory.setNamespaceAware(true);
documentBuilderFactory.setValidating(false);
- trySetSAXFeature(documentBuilderFactory, XMLConstants.FEATURE_SECURE_PROCESSING, true);
- trySetXercesSecurityManager(documentBuilderFactory);
+ tryToSetSAXFeatureOnDOMFactory(documentBuilderFactory,
+ XMLConstants.FEATURE_SECURE_PROCESSING, true);
+ tryToSetXercesManager(documentBuilderFactory);
return documentBuilderFactory;
}
@@ -188,7 +199,7 @@ public class ParseContext implements Serializable {
* Returns the DOM builder specified in this parsing context.
* If a builder is not explicitly specified, then a builder
* instance is created and returned. The builder instance is
- * configured to apply an {@link #IGNORING_ENTITY_RESOLVER},
+ * configured to apply an {@link #IGNORING_SAX_ENTITY_RESOLVER},
* and it sets the ErrorHandler to <code>null</code>.
*
* @since Apache Tika 1.13
@@ -202,7 +213,7 @@ public class ParseContext implements Serializable {
try {
DocumentBuilderFactory documentBuilderFactory = getDocumentBuilderFactory();
documentBuilder = documentBuilderFactory.newDocumentBuilder();
- documentBuilder.setEntityResolver(IGNORING_ENTITY_RESOLVER);
+ documentBuilder.setEntityResolver(IGNORING_SAX_ENTITY_RESOLVER);
documentBuilder.setErrorHandler(null);
return documentBuilder;
} catch (ParserConfigurationException e) {
@@ -210,14 +221,38 @@ public class ParseContext implements Serializable {
}
}
- private static void trySetSAXFeature(DocumentBuilderFactory dbf, String feature, boolean value) {
+ /**
+ * Returns the StAX input factory specified in this parsing context.
+ * If a factory is not explicitly specified, then a default factory
+ * instance is created and returned. The default factory instance is
+ * configured to be namespace-aware and to apply reasonable security
+ * using the {@link #IGNORING_STAX_ENTITY_RESOLVER}.
+ *
+ * @since Apache Tika 1.13
+ * @return StAX input factory
+ */
+ public XMLInputFactory getXMLInputFactory() {
+ XMLInputFactory factory = get(XMLInputFactory.class);
+ if (factory != null) {
+ return factory;
+ }
+ factory = XMLInputFactory.newFactory();
+
+ tryToSetStaxProperty(factory, XMLInputFactory.IS_NAMESPACE_AWARE, true);
+ tryToSetStaxProperty(factory, XMLInputFactory.IS_VALIDATING, false);
+
+ factory.setXMLResolver(IGNORING_STAX_ENTITY_RESOLVER);
+ return factory;
+ }
+
+ private static void tryToSetSAXFeatureOnDOMFactory(DocumentBuilderFactory dbf, String feature, boolean value) {
try {
dbf.setFeature(feature, value);
} catch (Exception|AbstractMethodError e) {
}
}
- private static void trySetXercesSecurityManager(DocumentBuilderFactory dbf) {
+ private static void tryToSetXercesManager(DocumentBuilderFactory dbf) {
// Try built-in JVM one first, standalone if not
for (String securityManagerClassName : new String[] {
"com.sun.org.apache.xerces.internal.util.SecurityManager",
@@ -235,39 +270,7 @@ public class ParseContext implements Serializable {
}
}
- /**
- * Returns the StAX input factory specified in this parsing context.
- * If a factory is not explicitly specified, then a default factory
- * instance is created and returned. The default factory instance is
- * configured to be namespace-aware and to apply reasonable security
- * features -- don't support dtd, ignore external entities, null XMLResolver.
- *
- * @since Apache Tika 1.13
- * @return StAX input factory
- */
- public XMLInputFactory getXMLInputFactory() {
- XMLInputFactory factory = get(XMLInputFactory.class);
- if (factory != null) {
- return factory;
- }
- factory = XMLInputFactory.newFactory();
-
- tryToSetProperty(factory, XMLInputFactory.IS_NAMESPACE_AWARE, true);
- tryToSetProperty(factory, XMLInputFactory.IS_VALIDATING, false);
-
- tryToSetProperty(factory, XMLInputFactory.SUPPORT_DTD, false);
- tryToSetProperty(factory, XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
- factory.setXMLResolver(new XMLResolver() {
- @Override
- public Object resolveEntity(String publicID, String systemID, String baseURI, String namespace) throws
- XMLStreamException {
- return null;
- }
- });
- return factory;
- }
-
- private void tryToSetProperty(XMLInputFactory factory, String key, boolean value) {
+ private void tryToSetStaxProperty(XMLInputFactory factory, String key, boolean value) {
try {
factory.setProperty(key, value);
} catch (IllegalArgumentException e) {
http://git-wip-us.apache.org/repos/asf/tika/blob/c9d508dc/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/XSSFExcelExtractorDecorator.java
----------------------------------------------------------------------
diff --git a/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/XSSFExcelExtractorDecorator.java b/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/XSSFExcelExtractorDecorator.java
index 0e44abd..f9bc12f 100644
--- a/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/XSSFExcelExtractorDecorator.java
+++ b/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/XSSFExcelExtractorDecorator.java
@@ -190,6 +190,7 @@ public class XSSFExcelExtractorDecorator extends AbstractOOXMLExtractor {
try {
SAXParser saxParser = parseContext.getSAXParser();
XMLReader sheetParser = saxParser.getXMLReader();
+ sheetParser.setEntityResolver(ParseContext.IGNORING_SAX_ENTITY_RESOLVER);
XSSFSheetInterestingPartsCapturer handler =
new XSSFSheetInterestingPartsCapturer(new XSSFSheetXMLHandler(
styles, comments, strings, sheetContentsExtractor, formatter, false));
http://git-wip-us.apache.org/repos/asf/tika/blob/c9d508dc/tika-server/pom.xml
----------------------------------------------------------------------
diff --git a/tika-server/pom.xml b/tika-server/pom.xml
index d2ebf09..0d84b76 100644
--- a/tika-server/pom.xml
+++ b/tika-server/pom.xml
@@ -289,6 +289,25 @@
</execution>
</executions>
</plugin>
+ <plugin>
+ <groupId>com.qmino</groupId>
+ <artifactId>miredot-maven-plugin</artifactId>
+ <version>1.4</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>restdoc</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <licence>
+ <!-- Miredot license key valid until August 1st, 2016 when we can apply for a new one - http://s.apache.org/oE -->
+ UHJvamVjdHxvcmcuYXBhY2hlLnRpa2EudGlrYS1zZXJ2ZXJ8MjAxNi0wOC0wMXx0cnVlI01Dd0NGRklXRzRqRmNTZXNJb2laRElKZVF4RXpieUNTQWhSMHBmTzZCMUdMbDBPQ1B1WmJYQ3NpZElZSCtRPT0=
+ </licence>
+ <!-- insert other configuration here (optional) -->
+ </configuration>
+ </plugin>
</plugins>
</build>
</profile>