1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
Description: [PATCH 1/4] Fix DOI resolving by using https
Origin: https://github.com/JabRef/jabref/pull/2889
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/jabref/+bug/1836719
Author: Siedlerchr <siedlerkiller@gmail.com>
Reviewed-by: gregor herrmann <gregoa@debian.org>
Last-Update: 2020-05-04
Applied-Upstream: https://github.com/JabRef/jabref/pull/2889
--- a/src/main/java/net/sf/jabref/logic/util/DOI.java
+++ b/src/main/java/net/sf/jabref/logic/util/DOI.java
@@ -22,7 +22,7 @@
private static final Log LOGGER = LogFactory.getLog(DOI.class);
// DOI resolver
- public static final URI RESOLVER = URI.create("http://doi.org");
+ public static final URI RESOLVER = URI.create("https://doi.org");
// DOI
private final String doi;
--- a/src/test/java/net/sf/jabref/logic/util/DOITest.java
+++ b/src/test/java/net/sf/jabref/logic/util/DOITest.java
@@ -52,15 +52,15 @@
public void acceptURNPrefix() {
Assert.assertEquals("10.123/456", new DOI("urn:10.123/456").getDOI());
Assert.assertEquals("10.123/456", new DOI("urn:doi:10.123/456").getDOI());
- Assert.assertEquals("10.123/456", new DOI("http://doi.org/urn:doi:10.123/456").getDOI());
+ Assert.assertEquals("10.123/456", new DOI("https://doi.org/urn:doi:10.123/456").getDOI());
// : is also allowed as divider, will be replaced by RESOLVER
- Assert.assertEquals("10.123:456ABC/zyz", new DOI("http://doi.org/urn:doi:10.123:456ABC%2Fzyz").getDOI());
+ Assert.assertEquals("10.123:456ABC/zyz", new DOI("https://doi.org/urn:doi:10.123:456ABC%2Fzyz").getDOI());
}
@Test
public void acceptURLDoi() {
// http
- Assert.assertEquals("10.1006/jmbi.1998.2354", new DOI("http://doi.org/10.1006/jmbi.1998.2354").getDOI());
+ Assert.assertEquals("10.1006/jmbi.1998.2354", new DOI("https://doi.org/10.1006/jmbi.1998.2354").getDOI());
// https
Assert.assertEquals("10.1006/jmbi.1998.2354", new DOI("https://doi.org/10.1006/jmbi.1998.2354").getDOI());
// other domains
@@ -80,38 +80,38 @@
public void correctlyDecodeHttpDOIs() {
// See http://www.doi.org/doi_handbook/2_Numbering.html#2.5.2.4
// % -> (%25)
- Assert.assertEquals("10.1006/rwei.1999%.0001", new DOI("http://doi.org/10.1006/rwei.1999%25.0001").getDOI());
+ Assert.assertEquals("10.1006/rwei.1999%.0001", new DOI("https://doi.org/10.1006/rwei.1999%25.0001").getDOI());
// " -> (%22)
- Assert.assertEquals("10.1006/rwei.1999\".0001", new DOI("http://doi.org/10.1006/rwei.1999%22.0001").getDOI());
+ Assert.assertEquals("10.1006/rwei.1999\".0001", new DOI("https://doi.org/10.1006/rwei.1999%22.0001").getDOI());
// # -> (%23)
- Assert.assertEquals("10.1006/rwei.1999#.0001", new DOI("http://doi.org/10.1006/rwei.1999%23.0001").getDOI());
+ Assert.assertEquals("10.1006/rwei.1999#.0001", new DOI("https://doi.org/10.1006/rwei.1999%23.0001").getDOI());
// SPACE -> (%20)
- Assert.assertEquals("10.1006/rwei.1999 .0001", new DOI("http://doi.org/10.1006/rwei.1999%20.0001").getDOI());
+ Assert.assertEquals("10.1006/rwei.1999 .0001", new DOI("https://doi.org/10.1006/rwei.1999%20.0001").getDOI());
// ? -> (%3F)
- Assert.assertEquals("10.1006/rwei.1999?.0001", new DOI("http://doi.org/10.1006/rwei.1999%3F.0001").getDOI());
+ Assert.assertEquals("10.1006/rwei.1999?.0001", new DOI("https://doi.org/10.1006/rwei.1999%3F.0001").getDOI());
}
@Test
public void correctlyEncodeDOIs() {
// See http://www.doi.org/doi_handbook/2_Numbering.html#2.5.2.4
// % -> (%25)
- Assert.assertEquals("http://doi.org/10.1006/rwei.1999%25.0001", new DOI("http://doi.org/10.1006/rwei.1999%25.0001").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/rwei.1999%25.0001", new DOI("https://doi.org/10.1006/rwei.1999%25.0001").getURIAsASCIIString());
// " -> (%22)
- Assert.assertEquals("http://doi.org/10.1006/rwei.1999%22.0001", new DOI("http://doi.org/10.1006/rwei.1999%22.0001").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/rwei.1999%22.0001", new DOI("https://doi.org/10.1006/rwei.1999%22.0001").getURIAsASCIIString());
// # -> (%23)
- Assert.assertEquals("http://doi.org/10.1006/rwei.1999%23.0001", new DOI("http://doi.org/10.1006/rwei.1999%23.0001").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/rwei.1999%23.0001", new DOI("https://doi.org/10.1006/rwei.1999%23.0001").getURIAsASCIIString());
// SPACE -> (%20)
- Assert.assertEquals("http://doi.org/10.1006/rwei.1999%20.0001", new DOI("http://doi.org/10.1006/rwei.1999%20.0001").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/rwei.1999%20.0001", new DOI("https://doi.org/10.1006/rwei.1999%20.0001").getURIAsASCIIString());
// ? -> (%3F)
- Assert.assertEquals("http://doi.org/10.1006/rwei.1999%3F.0001", new DOI("http://doi.org/10.1006/rwei.1999%3F.0001").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/rwei.1999%3F.0001", new DOI("https://doi.org/10.1006/rwei.1999%3F.0001").getURIAsASCIIString());
}
@Test
public void constructCorrectURLForDoi() {
// add / to RESOLVER url if missing
- Assert.assertEquals("http://doi.org/10.1006/jmbi.1998.2354", new DOI("10.1006/jmbi.1998.2354").getURIAsASCIIString());
- Assert.assertEquals("http://doi.org/10.1006/jmbi.1998.2354", new DOI("http://doi.org/10.1006/jmbi.1998.2354").getURIAsASCIIString());
- Assert.assertEquals("http://doi.org/10.1109/VLHCC.2004.20", new DOI("doi:10.1109/VLHCC.2004.20").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/jmbi.1998.2354", new DOI("10.1006/jmbi.1998.2354").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1006/jmbi.1998.2354", new DOI("https://doi.org/10.1006/jmbi.1998.2354").getURIAsASCIIString());
+ Assert.assertEquals("https://doi.org/10.1109/VLHCC.2004.20", new DOI("doi:10.1109/VLHCC.2004.20").getURIAsASCIIString());
}
@Test
--- a/src/test/java/net/sf/jabref/logic/layout/format/DOICheckTest.java
+++ b/src/test/java/net/sf/jabref/logic/layout/format/DOICheckTest.java
@@ -14,19 +14,19 @@
Assert.assertEquals("", lf.format(""));
Assert.assertEquals(null, lf.format(null));
- Assert.assertEquals("http://doi.org/10.1000/ISBN1-900512-44-0", lf.format("10.1000/ISBN1-900512-44-0"));
- Assert.assertEquals("http://doi.org/10.1000/ISBN1-900512-44-0",
+ Assert.assertEquals("https://doi.org/10.1000/ISBN1-900512-44-0", lf.format("10.1000/ISBN1-900512-44-0"));
+ Assert.assertEquals("https://doi.org/10.1000/ISBN1-900512-44-0",
lf.format("http://dx.doi.org/10.1000/ISBN1-900512-44-0"));
- Assert.assertEquals("http://doi.org/10.1000/ISBN1-900512-44-0",
+ Assert.assertEquals("https://doi.org/10.1000/ISBN1-900512-44-0",
lf.format("http://doi.acm.org/10.1000/ISBN1-900512-44-0"));
- Assert.assertEquals("http://doi.org/10.1145/354401.354407",
+ Assert.assertEquals("https://doi.org/10.1145/354401.354407",
lf.format("http://doi.acm.org/10.1145/354401.354407"));
- Assert.assertEquals("http://doi.org/10.1145/354401.354407", lf.format("10.1145/354401.354407"));
+ Assert.assertEquals("https://doi.org/10.1145/354401.354407", lf.format("10.1145/354401.354407"));
// Works even when having a / at the front
- Assert.assertEquals("http://doi.org/10.1145/354401.354407", lf.format("/10.1145/354401.354407"));
+ Assert.assertEquals("https://doi.org/10.1145/354401.354407", lf.format("/10.1145/354401.354407"));
// Obviously a wrong doi, will not change anything.
Assert.assertEquals("10", lf.format("10"));
|