forked from D-Net/dnet-hadoop
skip urls with authentication
This commit is contained in:
parent
339d8124f2
commit
6b0f7cc8b0
|
@ -125,8 +125,13 @@ public class OsfPreprintsIterator implements Iterator<String> {
|
||||||
final String xml = JsonUtils.convertToXML(json);
|
final String xml = JsonUtils.convertToXML(json);
|
||||||
|
|
||||||
return DocumentHelper.parseText(xml);
|
return DocumentHelper.parseText(xml);
|
||||||
|
|
||||||
} catch (final Throwable e) {
|
} catch (final Throwable e) {
|
||||||
log.warn(e.getMessage(), e);
|
log.warn(e.getMessage(), e);
|
||||||
|
if ((e instanceof CollectorException) && e.getMessage().contains("401")) {
|
||||||
|
final Element root = DocumentHelper.createElement("error_401_authorization_required");
|
||||||
|
return DocumentHelper.createDocument(root);
|
||||||
|
}
|
||||||
return downloadUrl(url, attempt + 1);
|
return downloadUrl(url, attempt + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
|
|
||||||
package eu.dnetlib.dhp.collection.plugin.osf;
|
package eu.dnetlib.dhp.collection.plugin.osf;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||||
|
import static org.junit.jupiter.api.Assertions.fail;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.concurrent.atomic.AtomicLong;
|
import java.util.concurrent.atomic.AtomicLong;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
import org.dom4j.DocumentHelper;
|
||||||
import org.junit.jupiter.api.Assertions;
|
import org.junit.jupiter.api.Assertions;
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
import org.junit.jupiter.api.Disabled;
|
import org.junit.jupiter.api.Disabled;
|
||||||
|
@ -17,6 +21,7 @@ import eu.dnetlib.dhp.collection.ApiDescriptor;
|
||||||
import eu.dnetlib.dhp.common.aggregation.AggregatorReport;
|
import eu.dnetlib.dhp.common.aggregation.AggregatorReport;
|
||||||
import eu.dnetlib.dhp.common.collection.CollectorException;
|
import eu.dnetlib.dhp.common.collection.CollectorException;
|
||||||
import eu.dnetlib.dhp.common.collection.HttpClientParams;
|
import eu.dnetlib.dhp.common.collection.HttpClientParams;
|
||||||
|
import eu.dnetlib.dhp.common.collection.HttpConnector2;
|
||||||
|
|
||||||
public class OsfPreprintsCollectorPluginTest {
|
public class OsfPreprintsCollectorPluginTest {
|
||||||
|
|
||||||
|
@ -50,7 +55,7 @@ public class OsfPreprintsCollectorPluginTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
// @Disabled
|
@Disabled
|
||||||
void test_limited() throws CollectorException {
|
void test_limited() throws CollectorException {
|
||||||
final AtomicInteger i = new AtomicInteger(0);
|
final AtomicInteger i = new AtomicInteger(0);
|
||||||
final Stream<String> stream = this.plugin.collect(this.api, new AggregatorReport());
|
final Stream<String> stream = this.plugin.collect(this.api, new AggregatorReport());
|
||||||
|
@ -83,4 +88,26 @@ public class OsfPreprintsCollectorPluginTest {
|
||||||
Assertions.assertTrue(i.get() > 0);
|
Assertions.assertTrue(i.get() > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
// @Disabled
|
||||||
|
void test_authentication_required() {
|
||||||
|
final HttpConnector2 connector = new HttpConnector2();
|
||||||
|
|
||||||
|
try {
|
||||||
|
final String res = connector.getInputSource("https://api.osf.io/v2/preprints/ydtzx/contributors/?format=json");
|
||||||
|
System.out.println(res);
|
||||||
|
fail();
|
||||||
|
} catch (final Throwable e) {
|
||||||
|
|
||||||
|
System.out.println("**** ERROR: " + e.getMessage());
|
||||||
|
|
||||||
|
if ((e instanceof CollectorException) && e.getMessage().contains("401")) {
|
||||||
|
System.out.println(" XML: " + DocumentHelper.createDocument().getRootElement().detach());
|
||||||
|
}
|
||||||
|
|
||||||
|
assertTrue(e.getMessage().contains("401"));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue