summaryrefslogtreecommitdiff
path: root/dev-java/jid3
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-java/jid3
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-java/jid3')
-rw-r--r--dev-java/jid3/Manifest7
-rw-r--r--dev-java/jid3/files/0.46-javadoc.patch11
-rw-r--r--dev-java/jid3/files/0.46-tests-and-unicode.patch179
-rw-r--r--dev-java/jid3/jid3-0.46-r2.ebuild59
-rw-r--r--dev-java/jid3/metadata.xml13
5 files changed, 269 insertions, 0 deletions
diff --git a/dev-java/jid3/Manifest b/dev-java/jid3/Manifest
new file mode 100644
index 000000000000..5ff246def652
--- /dev/null
+++ b/dev-java/jid3/Manifest
@@ -0,0 +1,7 @@
+AUX 0.46-javadoc.patch 521 SHA256 90ba9eb669e1220722be9b69b4ef1bc16303c6f680deafb372d347ac02e343af SHA512 88a57f0c15f1915ac072bec7d420bf8a9eb1ca199175d56828f5439958f474b62d33f49a2eddcbcc01bb39dd07a22febccbfa58aa95be5e6b5413c54b94bca48 WHIRLPOOL 2cdcd3f63c73369d4303d575745f7ecd65030f9194571387ebe44fc6f92885d0e5928aeba9ee5859607fcaccd82aa461152b05fa79f7804c767ce88d7a5ba079
+AUX 0.46-tests-and-unicode.patch 17518 SHA256 cfdde9b8bf9e225b16a9828ebd0f957a2fb30aba4690aadf161a44af035270b8 SHA512 d1448b2474af1d404999d1ac1df126814405840d8d80074ec90b7f4e2506a6d3497e2b6defa8c9c04b6fb7d86d815aec7dc3b7d7455f5fde41ade590db4452ff WHIRLPOOL d7e9ead37e4ef97d707de49ee03768c6bcfc52b352704421fcef2bbc848cdefa345c0ebdf964b6e78398489fcc5fe94eb43c599a937dd2819c903cf866758b26
+DIST jid3_0.46.tar.gz 972609 SHA256 eab5813cf0268c4a114f0ac361e6ffbfc6e233d493cee8a6dba00334b1833491 SHA512 478a78601613ab0e7965145733f1adec10005ef8069deb0595880feb47b065573d66cb5eb2b810869970a6b0272f8fb3363e4946ba5737ad740e372875cfa707 WHIRLPOOL fbe23739d84e8bbc1134780c1788f45a8442ec309bbc9eb92724d4c226dbb0d2b6fdd42a10cb5fc82765423c0b5652a82b2fd11f8a42672bb2048640b6789127
+EBUILD jid3-0.46-r2.ebuild 1269 SHA256 17072e5403e75ce3bf9c184a22087c867fee2be4968c9138f56f3015e251f1b7 SHA512 0babc2575e023d689564d0385805408e489ac5a25cc408e5f37e40bc43870bbd7eca887dd9d4afdaa84350a35aa287c2e85de6610babae041211cf44ea827134 WHIRLPOOL 734fddf8e6e930ab5ef72b277a5d491e9efb389931a82cd315a5aff5ab85f2f064dca2a447b8e2b2ca0e85f14ce89830ff84955f63043126b612dc0590041720
+MISC ChangeLog 2513 SHA256 41c9108e77c945e6f1090fdbd13f02879bb18e43c7d7016fcd82e877135cc7b4 SHA512 3dcc4dfe9b75f425ca6f9ab2b75f19ce035a73f38d97c69e9bd9a45cf61688f3ed5de58127d31314e9f520dd5e64937836ef2fd2789d8fc33f287b8707a60b53 WHIRLPOOL c5c36e7670135187b124316b81872058b40a77d32a38311e972ad2c5179184bdd0f6d3fe44584abc57a0ec28957c37086b288c74be13a108a37fac3e14751f4f
+MISC ChangeLog-2015 1873 SHA256 3787422dbe088a6ae1bdfca795ef3ce5f633b1f3126a3790e37bf4a98a84138c SHA512 a89c22f8aae022fb81ca2b80bb3dc961b0f7cc020aee67d319b9708801c62860f92bcb8a78aeb6ba6a766d47d1ce32410acf70685321c5b6e2816681b46f10e7 WHIRLPOOL 7f28704b2b095adcd9ad9ef6f18ec52dd9c75dfbcdeca59c12af91b105229475dd4828c4bb2172b1858dc4188b97a70f8fda82a13bc6762f67f3296721ef0ae3
+MISC metadata.xml 458 SHA256 b6255b7a587fff6c5cebe1cf491c9f32dd89d8bea00bb676ad3b1e0f94fccdae SHA512 8dbbc0044f192093b672832681e521d55ff3ea2b3f3c74975cb493b0192c03f76279caf358f702449589d8d836a0b035c590c1fd4e0efc450740b354727fdc1b WHIRLPOOL 6eef654d6034e50b8fa82e1a5c244a264ed09c19efac9c79c2bd1579be175fc3ab22e80c5696516e616e22bd1654ceccb3d733f7978241503382dca43dcfa8eb
diff --git a/dev-java/jid3/files/0.46-javadoc.patch b/dev-java/jid3/files/0.46-javadoc.patch
new file mode 100644
index 000000000000..8a17f1de73bb
--- /dev/null
+++ b/dev-java/jid3/files/0.46-javadoc.patch
@@ -0,0 +1,11 @@
+diff -ur nbproject.old/build-impl.xml nbproject/build-impl.xml
+--- nbproject.old/build-impl.xml 2007-05-05 13:32:49.000000000 +0300
++++ nbproject/build-impl.xml 2007-05-05 13:32:56.000000000 +0300
+@@ -343,7 +343,6 @@
+ <sourcepath>
+ <pathelement location="${src.dir}"/>
+ </sourcepath>
+- <fileset dir="${src.dir}"/>
+ </javadoc>
+ </target>
+ <target name="-javadoc-browse" if="netbeans.home" unless="no.javadoc.preview" depends="init,-javadoc-build">
diff --git a/dev-java/jid3/files/0.46-tests-and-unicode.patch b/dev-java/jid3/files/0.46-tests-and-unicode.patch
new file mode 100644
index 000000000000..1453cb38b996
--- /dev/null
+++ b/dev-java/jid3/files/0.46-tests-and-unicode.patch
@@ -0,0 +1,179 @@
+--- src/org/blinkenlights/jid3/io/TextEncoding.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/io/TextEncoding.java 2008-05-26 10:39:01.000000000 -0700
+@@ -91,7 +91,7 @@
+ case (byte)0x00:
+ return "ISO-8859-1";
+ case (byte)0x01:
+- return "Unicode";
++ return "UTF-16";
+ default:
+ return null; // can't happen because we control construction of this object
+ }
+--- src/org/blinkenlights/jid3/test/AllTests.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/test/AllTests.java 2008-05-27 11:11:32.000000000 -0700
+@@ -44,7 +44,7 @@
+ public class AllTests extends TestCase
+ {
+ // set root path for testing, so tests can find the test files
+- public static String s_RootPath = "c:/work/jid3/test_data/";
++ public static String s_RootPath = "./test_data/";
+
+ public static void main(String[] args)
+ {
+@@ -134,7 +134,7 @@
+ }
+
+ // a 'visit list' was created by our visitor, recording which frames were visited, so we can compare
+- if ( ! oTestID3Visitor.getVisitList().equals("3=DS+uw_PsKMr(VT$ICBUtvNyEzRL)W[QJO6*-"))
++ if ( ! oTestID3Visitor.getVisitList().equals("3rstuvwyzBCDEIJKLMNOPQRSTUVW$()_=+[6*-"))
+ {
+ fail("Unexpected resulting visit list: " + oTestID3Visitor.getVisitList());
+ }
+--- src/org/blinkenlights/jid3/test/ID3V2Test.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/test/ID3V2Test.java 2008-05-26 10:39:01.000000000 -0700
+@@ -540,7 +540,7 @@
+ oTALB.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setTALBTextInformationFrame(oTALB);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>ATALB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:01><bh:ff><bh:fe>a<bh:00>b<bh:00>c<bh:00>d<bh:00>e<bh:00>f<bh:00>g<bh:00>h<bh:00>i<bh:00>j<bh:00>k<bh:00>l<bh:00>m<bh:00>n<bh:00>o<bh:00>p<bh:00>q<bh:00>r<bh:00>s<bh:00>t<bh:00>u<bh:00>v<bh:00>w<bh:00>x<bh:00>y<bh:00>z<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>ATALB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>a<bh:00>b<bh:00>c<bh:00>d<bh:00>e<bh:00>f<bh:00>g<bh:00>h<bh:00>i<bh:00>j<bh:00>k<bh:00>l<bh:00>m<bh:00>n<bh:00>o<bh:00>p<bh:00>q<bh:00>r<bh:00>s<bh:00>t<bh:00>u<bh:00>v<bh:00>w<bh:00>x<bh:00>y<bh:00>z";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -744,7 +744,7 @@
+ oTIME.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setTIMETextInformationFrame(oTIME);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00><bh:15>TIME<bh:00><bh:00><bh:00><bh:0b><bh:00><bh:00><bh:01><bh:ff><bh:fe>0<bh:00>8<bh:00>0<bh:00>5<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00><bh:15>TIME<bh:00><bh:00><bh:00><bh:0b><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>0<bh:00>8<bh:00>0<bh:00>5";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1258,7 +1258,7 @@
+ oTXXX = new TXXXTextInformationID3V2Frame("description2", "information2");
+ oID3V2_3_0Tag.addTXXXTextInformationFrame(oTXXX);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>aTXXX<bh:00><bh:00><bh:00>3<bh:00><bh:00><bh:01><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>f<bh:00>o<bh:00>r<bh:00>m<bh:00>a<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00>TXXX<bh:00><bh:00><bh:00><bh:1a><bh:00><bh:00><bh:00>description2<bh:00>information2";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>aTXXX<bh:00><bh:00><bh:00>3<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>f<bh:00>o<bh:00>r<bh:00>m<bh:00>a<bh:00>t<bh:00>i<bh:00>o<bh:00>nTXXX<bh:00><bh:00><bh:00><bh:1a><bh:00><bh:00><bh:00>description2<bh:00>information2";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1464,7 +1464,7 @@
+ oWXXX = new WXXXUrlLinkID3V2Frame("another description", "http://www.grebenc.ca");
+ oID3V2_3_0Tag.addWXXXUrlLinkFrame(oWXXX);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>vWXXX<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>another description<bh:00>http://www.grebenc.caWXXX<bh:00><bh:00><bh:00>8<bh:00><bh:00><bh:01><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00>http://jid3.blinkenlights.org";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>vWXXX<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>another description<bh:00>http://www.grebenc.caWXXX<bh:00><bh:00><bh:00>8<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00>http://jid3.blinkenlights.org";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1519,7 +1519,7 @@
+ oID3V2_3_0Tag.addAPICFrame(oAPIC);
+ oID3V2_3_0Tag.addAPICFrame(new APICID3V2Frame("image/jpeg", APICID3V2Frame.PictureType.FrontCover, "Front cover.", new byte[] { 0x05, 0x04, 0x03, 0x02, 0x01 }));
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>bAPIC<bh:00><bh:00><bh:00>/<bh:00><bh:00><bh:01>image/png<bh:00><bh:08><bh:ff><bh:fe>A<bh:00>r<bh:00>t<bh:00>i<bh:00>s<bh:00>t<bh:00> <bh:00>i<bh:00>m<bh:00>a<bh:00>g<bh:00>e<bh:00>.<bh:00><bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>APIC<bh:00><bh:00><bh:00><bh:1f><bh:00><bh:00><bh:00>image/jpeg<bh:00><bh:03>Front cover.<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>bAPIC<bh:00><bh:00><bh:00>/<bh:00><bh:00><bh:01>image/png<bh:00><bh:08><bh:fe><bh:ff><bh:00>A<bh:00>r<bh:00>t<bh:00>i<bh:00>s<bh:00>t<bh:00> <bh:00>i<bh:00>m<bh:00>a<bh:00>g<bh:00>e<bh:00>.<bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>APIC<bh:00><bh:00><bh:00><bh:1f><bh:00><bh:00><bh:00>image/jpeg<bh:00><bh:03>Front cover.<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1556,7 +1556,7 @@
+ oID3V2_3_0Tag.addCOMMFrame(oCOMM);
+ oID3V2_3_0Tag.addCOMMFrame(new COMMID3V2Frame("rus", "next description", "next actual text"));
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>{COMM<bh:00><bh:00><bh:00>B<bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>s<bh:00>h<bh:00>o<bh:00>r<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:ff><bh:fe>a<bh:00>c<bh:00>t<bh:00>u<bh:00>a<bh:00>l<bh:00> <bh:00>t<bh:00>e<bh:00>x<bh:00>t<bh:00>COMM<bh:00><bh:00><bh:00>%<bh:00><bh:00><bh:00>rusnext description<bh:00>next actual text";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>{COMM<bh:00><bh:00><bh:00>B<bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>s<bh:00>h<bh:00>o<bh:00>r<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:fe><bh:ff><bh:00>a<bh:00>c<bh:00>t<bh:00>u<bh:00>a<bh:00>l<bh:00> <bh:00>t<bh:00>e<bh:00>x<bh:00>tCOMM<bh:00><bh:00><bh:00>%<bh:00><bh:00><bh:00>rusnext description<bh:00>next actual text";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1605,7 +1605,7 @@
+ oCOMR.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setCOMRFrame(oCOMR);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>tCOMR<bh:00><bh:00><bh:00>j<bh:00><bh:00><bh:01>cad12.99<bh:00>25250101http://jid3.blinkenlights.org<bh:00><bh:03><bh:ff><bh:fe>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00>image/png<bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>tCOMR<bh:00><bh:00><bh:00>j<bh:00><bh:00><bh:01>cad12.99<bh:00>25250101http://jid3.blinkenlights.org<bh:00><bh:03><bh:fe><bh:ff><bh:00>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00>image/png<bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1717,7 +1717,7 @@
+ oGEOB = new GEOBID3V2Frame("image/jpeg", "filename2", "another content description", new byte[] { 0x05, 0x04, 0x03, 0x02, 0x01 });
+ oID3V2_3_0Tag.addGEOBFrame(oGEOB);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:19>GEOB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:00>image/jpeg<bh:00>filename2<bh:00>another content description<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>GEOB<bh:00><bh:00><bh:00>N<bh:00><bh:00><bh:01>image/png<bh:00><bh:ff><bh:fe>f<bh:00>i<bh:00>l<bh:00>e<bh:00>n<bh:00>a<bh:00>m<bh:00>e<bh:00><bh:00><bh:00><bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:19>GEOB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:00>image/jpeg<bh:00>filename2<bh:00>another content description<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>GEOB<bh:00><bh:00><bh:00>N<bh:00><bh:00><bh:01>image/png<bh:00><bh:fe><bh:ff><bh:00>f<bh:00>i<bh:00>l<bh:00>e<bh:00>n<bh:00>a<bh:00>m<bh:00>e<bh:00><bh:00><bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1779,7 +1779,7 @@
+ oIPLS.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setIPLSFrame(oIPLS);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:15>IPLS<bh:00><bh:00><bh:00><bh:8b><bh:00><bh:00><bh:01><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>2<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>2<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>3<bh:00><bh:00><bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:15>IPLS<bh:00><bh:00><bh:00><bh:8b><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>2<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>2<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>3<bh:00><bh:00>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1871,7 +1871,7 @@
+ oOWNE.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setOWNEFrame(oOWNE);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*OWNE<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>cad12.34<bh:00>20000102<bh:ff><bh:fe>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*OWNE<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>cad12.34<bh:00>20000102<bh:fe><bh:ff><bh:00>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2063,7 +2063,7 @@
+ oSYLT.addSyncEntry(new SYLTID3V2Frame.SyncEntry("def", 5));
+ oID3V2_3_0Tag.addSYLTFrame(oSYLT);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:1a>SYLT<bh:00><bh:00><bh:00><bh:5c><bh:00><bh:00><bh:01>eng<bh:02><bh:01><bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>o<bh:00>n<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:01><bh:ff><bh:fe>t<bh:00>w<bh:00>o<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:02><bh:ff><bh:fe>t<bh:00>h<bh:00>r<bh:00>e<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:03>SYLT<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>rus<bh:01><bh:06>another description<bh:00>abc<bh:00><bh:00><bh:00><bh:00><bh:04>def<bh:00><bh:00><bh:00><bh:00><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:1a>SYLT<bh:00><bh:00><bh:00><bh:5c><bh:00><bh:00><bh:01>eng<bh:02><bh:01><bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>o<bh:00>n<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>t<bh:00>w<bh:00>o<bh:00><bh:00><bh:00><bh:00><bh:00><bh:02><bh:fe><bh:ff><bh:00>t<bh:00>h<bh:00>r<bh:00>e<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:03>SYLT<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>rus<bh:01><bh:06>another description<bh:00>abc<bh:00><bh:00><bh:00><bh:00><bh:04>def<bh:00><bh:00><bh:00><bh:00><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2141,7 +2141,7 @@
+ oUSER.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setUSERFrame(oUSER);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*USER<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>T<bh:00>e<bh:00>r<bh:00>m<bh:00>s<bh:00> <bh:00>o<bh:00>f<bh:00> <bh:00>u<bh:00>s<bh:00>e<bh:00>.<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*USER<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>T<bh:00>e<bh:00>r<bh:00>m<bh:00>s<bh:00> <bh:00>o<bh:00>f<bh:00> <bh:00>u<bh:00>s<bh:00>e<bh:00>.";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2177,7 +2177,7 @@
+ oUSLT.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.addUSLTFrame(oUSLT);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>DUSLT<bh:00><bh:00><bh:00>:<bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>l<bh:00>y<bh:00>r<bh:00>i<bh:00>c<bh:00>s<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>DUSLT<bh:00><bh:00><bh:00>:<bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>l<bh:00>y<bh:00>r<bh:00>i<bh:00>c<bh:00>s";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2599,7 +2599,7 @@
+ ID3Tag.useStrict(false);
+ try
+ {
+- File oSourceDir = new File("c:/temp/mp3");
++ File oSourceDir = new File("test_data");
+ recurseDirectoryForMP3s(oSourceDir);
+ }
+ catch (Exception e)
+--- src/org/blinkenlights/jid3/v2/ID3V2Tag.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/v2/ID3V2Tag.java 2008-05-27 11:09:51.000000000 -0700
+@@ -50,7 +50,7 @@
+ protected boolean m_bCRCDataFlag;
+
+ /** Mapping from frame ID to list containing frames. For frames that can only be used once. */
+- protected Map m_oFrameIdToFrameMap = null;
++ protected SortedMap m_oFrameIdToFrameMap = null;
+
+ /** Default padding for ID3 v2 frames, if not specified. 16 bytes, because Winamp does not read the last
+ * frame when there isn't at least 6 bytes of padding following it in a tag. */
+@@ -72,7 +72,7 @@
+ m_bUnsynchronizationUsedFlag = bUnsynchronizationUsedFlag;
+ m_bExtendedHeaderFlag = bExtendedHeaderFlag;
+ m_bExperimentalFlag = bExperimentalFlag;
+- m_oFrameIdToFrameMap = new HashMap();
++ m_oFrameIdToFrameMap = new TreeMap();
+ //HACK: Default padding of 16 bytes, because Winamp doesn't seem to see the last frame in a v2 tag
+ // when there is less than 6 bytes of padding. (???)
+ m_iPaddingLength = s_iDefaultPaddingLength;
diff --git a/dev-java/jid3/jid3-0.46-r2.ebuild b/dev-java/jid3/jid3-0.46-r2.ebuild
new file mode 100644
index 000000000000..f50f2e94610f
--- /dev/null
+++ b/dev-java/jid3/jid3-0.46-r2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source test"
+
+# To make sure the javadoc patch doesn't break things
+WANT_SPLIT_WANT="true"
+
+inherit eutils java-pkg-2 java-ant-2
+
+MY_P="${P/-/_}"
+
+DESCRIPTION="ID3 Class Library Implementation"
+HOMEPAGE="http://jid3.blinkenlights.org/"
+SRC_URI="http://jid3.blinkenlights.org/release/${MY_P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+S="${WORKDIR}/${MY_P}"
+
+# Feel free to submit a patch that doesn't bundle the classes
+# into the result jar
+DEPEND=">=virtual/jdk-1.4
+ test? ( =dev-java/junit-3.8* )"
+
+RDEPEND=">=virtual/jre-1.4"
+
+java_prepare() {
+ epatch "${FILESDIR}"/${PV}-javadoc.patch
+ epatch "${FILESDIR}"/${PV}-tests-and-unicode.patch
+
+ rm -v "${S}"/dist/*.jar || die
+
+ if use !test; then
+ rm -rv "${S}/src/org/blinkenlights/jid3/test" || die
+ fi
+
+}
+
+src_compile() {
+ local junit="-Dlibs.junit.classpath"
+ eant jar $(use_doc) \
+ $(use test && echo ${junit}=$(java-pkg_getjars --build-only junit))
+}
+
+src_test() {
+ ejunit -cp dist/JID3.jar org.blinkenlights.jid3.test.AllTests
+}
+
+src_install() {
+ java-pkg_dojar dist/JID3.jar
+
+ use doc && java-pkg_dojavadoc dist/javadoc
+ use source && java-pkg_dosrc src/
+}
diff --git a/dev-java/jid3/metadata.xml b/dev-java/jid3/metadata.xml
new file mode 100644
index 000000000000..9c54bd0250a2
--- /dev/null
+++ b/dev-java/jid3/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <longdescription lang="en">
+ JID3 is a class library, written in Java and licensed under the LGPL,
+ which provides the required functionality for editing ID3 tags commonly
+ used in MP3 media files.
+ </longdescription>
+</pkgmetadata>