Skip to content
This repository was archived by the owner on May 24, 2020. It is now read-only.

Commit ed9c51c

Browse files
adds gradle 4.8-rc1
1 parent e11ae65 commit ed9c51c

File tree

12 files changed

+93
-48
lines changed

12 files changed

+93
-48
lines changed

build.gradle

+9-12
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ allprojects { subproj ->
6060
apply plugin: 'checkstyle'
6161
apply plugin: 'com.bmuschko.nexus'
6262
apply plugin: 'org.junit.platform.gradle.plugin'
63-
apply plugin: 'jacoco'
63+
//apply plugin: 'jacoco'
6464
apply plugin: 'com.kncept.junit5.reporter'
6565

6666
ext {
@@ -75,15 +75,12 @@ allprojects { subproj ->
7575
license = 'Apache 2'
7676
}
7777

78-
jacoco.toolVersion = jacocoVersion
78+
//jacoco.toolVersion = jacocoVersion
7979

8080
group = 'org.trellisldp'
8181

8282
repositories {
8383
mavenCentral()
84-
flatDir {
85-
dirs "$rootProject.projectDir/lib"
86-
}
8784
maven {
8885
url "https://oss.sonatype.org/content/repositories/snapshots"
8986
}
@@ -122,12 +119,9 @@ allprojects { subproj ->
122119
tasks.withType(JavaCompile) {
123120
options.compilerArgs.add("-Xlint:unchecked")
124121
options.compilerArgs.add("-Xlint:deprecation")
125-
options.compilerArgs.addAll(["--add-modules", "jdk.incubator.httpclient"])
126122
}
127123
}
128124

129-
junitPlatformTest.jvmArgs("--add-modules", "jdk.incubator.httpclient")
130-
131125
dependencies {
132126
testImplementation("org.junit.jupiter:junit-jupiter-api:$junitVersion")
133127
testImplementation("org.junit.jupiter:junit-jupiter-engine:$junitVersion")
@@ -139,8 +133,8 @@ allprojects { subproj ->
139133

140134
subprojects { subproj ->
141135

142-
sourceCompatibility = 1.11
143-
targetCompatibility = 1.11
136+
sourceCompatibility = 1.10
137+
targetCompatibility = 1.10
144138

145139
checkstyle {
146140
configFile = rootProject.file('buildtools/src/main/resources/checkstyle/checkstyle.xml')
@@ -232,16 +226,18 @@ subprojects { subproj ->
232226
links 'https://commons.apache.org/proper/commons-rdf/apidocs/'
233227
}
234228
}
235-
229+
/*
236230
afterEvaluate {
237231
if (subproj.name in jacocoTestProjects) {
238232
jacoco {
239233
applyTo junitPlatformTest
240234
}
241235
}
242236
}
237+
*/
243238
}
244239

240+
/*
245241
configure(rootProject) {
246242
task jacocoMerge(type: JacocoMerge) {
247243
subprojects.findAll { it.name in jacocoTestProjects }
@@ -265,4 +261,5 @@ configure(rootProject) {
265261
csv.enabled = false
266262
}
267263
}
268-
}
264+
}
265+
*/

buildtools/src/install/install-jdk-10.sh renamed to buildtools/src/install/install-jdk-11.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
set -e
66

7-
JDK_FEATURE=10
8-
JDK_ARCHIVE=openjdk-${JDK_FEATURE}_linux-x64_bin.tar.gz
7+
JDK_FEATURE=11
8+
JDK_ARCHIVE=openjdk-${JDK_FEATURE}-ea+13_linux-x64_bin.tar.gz
99

1010
cd ~
11-
wget https://download.java.net/java/GA/jdk${JDK_FEATURE}/${JDK_FEATURE}/binaries/${JDK_ARCHIVE}
11+
wget https://download.java.net/java/early_access/jdk11/13/GPL/openjdk-11-ea+13_linux-x64_bin.tar.gz
1212
tar -xzf ${JDK_ARCHIVE}
1313
export JAVA_HOME=~/jdk-${JDK_FEATURE}
1414
export PATH=${JAVA_HOME}/bin:$PATH

client/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ dependencies {
5353
testImplementation("javax.activation:javax.activation-api:$activationApiVersion")
5454
testImplementation("org.apache.commons:commons-collections4:$commonsCollectionsVersion")
5555
testImplementation("org.apache.httpcomponents:httpclient-cache:$httpclientVersion")
56-
testImplementation("org.apache.servicemix.bundles:org.apache.servicemix.bundles.kafka-clients:$kafkaVersion")
56+
testImplementation("org.apache.kafka:kafka-clients:$kafkaVersion")
5757
testImplementation("com.github.spullara.mustache.java:compiler:$mustacheVersion")
5858
testImplementation("org.apache.thrift:libthrift:$thriftVersion")
5959
testImplementation("org.eclipse.jetty:jetty-alpn-java-server:$jettyAlpnVersion")

client/src/main/java/org/trellisldp/client/LdpClient.java

+13-4
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,14 @@
1414

1515
package org.trellisldp.client;
1616

17+
import java.io.FileInputStream;
1718
import java.io.InputStream;
1819
import java.net.URI;
20+
import java.net.http.HttpResponse;
1921
import java.nio.file.Path;
2022
import java.util.List;
2123
import java.util.Map;
22-
import java.util.concurrent.CompletableFuture;
23-
24-
import java.net.http.HttpRequest;
25-
import java.net.http.HttpResponse;
24+
import java.util.function.Supplier;
2625

2726
import org.apache.commons.rdf.api.IRI;
2827

@@ -410,6 +409,16 @@ void createDirectContainerWithAuth(final IRI identifier, final String slug, IRI
410409
*/
411410
void put(final IRI identifier, final InputStream stream, final String contentType) throws LdpClientException;
412411

412+
/**
413+
* put.
414+
*
415+
* @param identifier a resource identifier
416+
* @param fileInputStreamSupplier an {@link Supplier}
417+
* @param contentType a content type
418+
* @throws LdpClientException an URISyntaxException, IOException or InterruptedException
419+
*/
420+
void putSupplier(final IRI identifier, Supplier<FileInputStream> fileInputStreamSupplier, final String contentType) throws LdpClientException;
421+
413422
/**
414423
* putWithResponse.
415424
*

client/src/main/java/org/trellisldp/client/LdpClientImpl.java

+27-11
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,13 @@
1414

1515
package org.trellisldp.client;
1616

17+
import static java.net.http.HttpClient.Version.HTTP_2;
1718
import static java.net.http.HttpRequest.BodyPublishers.noBody;
19+
import static java.net.http.HttpRequest.BodyPublishers.ofInputStream;
20+
import static java.net.http.HttpRequest.BodyPublishers.ofString;
21+
import static java.net.http.HttpResponse.BodyHandlers.ofByteArray;
1822
import static java.net.http.HttpResponse.BodyHandlers.ofFile;
23+
import static java.net.http.HttpResponse.BodyHandlers.ofString;
1924
import static java.time.Instant.ofEpochMilli;
2025
import static java.time.ZoneOffset.UTC;
2126
import static java.time.format.DateTimeFormatter.RFC_1123_DATE_TIME;
@@ -27,38 +32,32 @@
2732
import static javax.ws.rs.core.HttpHeaders.CONTENT_TYPE;
2833
import static javax.ws.rs.core.HttpHeaders.ETAG;
2934
import static javax.ws.rs.core.HttpHeaders.LINK;
30-
import static java.net.http.HttpClient.Version.HTTP_2;
31-
import static java.net.http.HttpRequest.BodyPublishers.ofInputStream;
32-
import static java.net.http.HttpRequest.BodyPublishers.ofString;
33-
import static java.net.http.HttpResponse.BodyHandlers.ofString;
34-
import static java.net.http.HttpResponse.BodyHandlers.discarding;
35-
import static java.net.http.HttpResponse.BodyHandlers.ofByteArray;
3635
import static org.apache.jena.arq.riot.WebContent.contentTypeJSONLD;
3736
import static org.apache.jena.arq.riot.WebContent.contentTypeNTriples;
3837
import static org.apache.jena.arq.riot.WebContent.contentTypeSPARQLUpdate;
3938
import static org.apache.jena.arq.riot.WebContent.contentTypeTurtle;
4039
import static org.slf4j.LoggerFactory.getLogger;
4140

41+
import java.io.FileInputStream;
4242
import java.io.InputStream;
4343
import java.net.URI;
44+
import java.net.http.HttpClient;
45+
import java.net.http.HttpRequest;
46+
import java.net.http.HttpResponse;
4447
import java.nio.charset.StandardCharsets;
4548
import java.nio.file.Path;
4649
import java.util.ArrayList;
4750
import java.util.HashMap;
4851
import java.util.List;
4952
import java.util.Map;
50-
import java.util.Optional;
5153
import java.util.concurrent.CompletableFuture;
5254
import java.util.concurrent.ExecutorService;
5355
import java.util.concurrent.Executors;
56+
import java.util.function.Supplier;
5457
import java.util.stream.Collectors;
5558

5659
import javax.net.ssl.SSLContext;
5760

58-
import java.net.http.HttpClient;
59-
import java.net.http.HttpRequest;
60-
import java.net.http.HttpResponse;
61-
6261
import org.apache.commons.rdf.api.IRI;
6362
import org.slf4j.Logger;
6463
import org.trellisldp.vocabulary.DC;
@@ -775,6 +774,23 @@ public void put(final IRI identifier, final InputStream stream, final String con
775774
}
776775
}
777776

777+
@Override
778+
public void putSupplier(final IRI identifier, Supplier<FileInputStream> fileInputStreamSupplier, final String contentType) throws
779+
LdpClientException {
780+
try {
781+
requireNonNull(identifier, NON_NULL_IDENTIFIER);
782+
final URI uri = new URI(identifier.getIRIString());
783+
final HttpRequest req = HttpRequest.newBuilder(uri).headers(CONTENT_TYPE, contentType).PUT(
784+
ofInputStream(fileInputStreamSupplier)).build();
785+
final HttpResponse<String> response = client.send(req, ofString());
786+
log.info(
787+
String.valueOf(response.version()) + " PUT request to {} returned {}", identifier,
788+
String.valueOf(response.statusCode()));
789+
} catch (Exception ex) {
790+
throw new LdpClientException(ex.toString(), ex.getCause());
791+
}
792+
}
793+
778794
@Override
779795
public Boolean putWithResponse(final IRI identifier, final InputStream stream, final String contentType) throws
780796
LdpClientException {

client/src/test/java/org/trellisldp/client/EarlReportExtension.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import static java.time.LocalDateTime.now;
1818
import static org.apache.jena.arq.riot.RDFFormat.NQUADS;
1919

20+
import com.github.jsonldjava.core.JsonLdError;
2021
import com.github.jsonldjava.core.JsonLdOptions;
2122
import com.github.jsonldjava.utils.JsonUtils;
2223

@@ -120,9 +121,10 @@ private static String writeGraphToN3(final DatasetGraph graph) {
120121
private static void writeFramedJsonLd(final OutputStream output, final DatasetGraph graph) {
121122
String n3 = writeGraphToN3(graph);
122123
final JsonLdOptions opts = new JsonLdOptions();
124+
try {
123125
final Object outobj = com.github.jsonldjava.core.JsonLdProcessor.fromRDF(n3, opts);
124126
final InputStream fs = EarlReportExtension.class.getResourceAsStream("/earlreport/earlreport-frame.json");
125-
try {
127+
126128
final Object frame = JsonUtils.fromInputStream(fs);
127129
final Object frameobj = com.github.jsonldjava.core.JsonLdProcessor.frame(outobj, frame, opts);
128130
final String json = JsonUtils.toPrettyString(frameobj);
@@ -131,6 +133,8 @@ private static void writeFramedJsonLd(final OutputStream output, final DatasetGr
131133
output.close();
132134
} catch (IOException e) {
133135
e.getMessage();
136+
} catch (JsonLdError jsonLdError) {
137+
jsonLdError.printStackTrace();
134138
}
135139
}
136140

client/src/test/java/org/trellisldp/client/H2ClientTest.java

+30-11
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,24 @@
2323

2424
import io.dropwizard.testing.DropwizardTestSupport;
2525

26+
import java.io.FileInputStream;
2627
import java.io.IOException;
2728
import java.io.InputStream;
29+
import java.io.UncheckedIOException;
2830
import java.net.URI;
31+
import java.nio.file.Path;
32+
import java.nio.file.Paths;
33+
import java.security.AccessController;
34+
import java.security.PrivilegedActionException;
35+
import java.security.PrivilegedExceptionAction;
2936
import java.util.HashMap;
3037
import java.util.List;
3138
import java.util.Map;
3239
import java.util.UUID;
33-
import java.util.concurrent.CompletableFuture;
40+
import java.util.function.Supplier;
3441

3542
import javax.net.ssl.SSLContext;
3643

37-
import java.net.http.HttpRequest;
38-
import java.net.http.HttpResponse;
39-
4044
import org.apache.commons.rdf.api.IRI;
4145
import org.apache.commons.rdf.jena.JenaRDF;
4246
import org.junit.jupiter.api.AfterAll;
@@ -57,10 +61,10 @@
5761
public class H2ClientTest {
5862
private static final DropwizardTestSupport<TrellisConfiguration> APP = new DropwizardTestSupport<>(
5963
TrellisApplication.class, resourceFilePath("trellis-config.yml"), config("server"
60-
+ ".applicationConnectors[1].port", "8446"), config("binaries", resourceFilePath("data")
61-
+ "/binaries"), config("mementos", resourceFilePath("data") + "/mementos"), config("namespaces",
62-
resourceFilePath("data/namespaces.json")), config("server.applicationConnectors[1].keyStorePath",
63-
resourceFilePath("keystore/trellis.jks")));
64+
+ ".applicationConnectors[1].port", "8446"), config("binaries", resourceFilePath("data")
65+
+ "/binaries"), config("mementos", resourceFilePath("data") + "/mementos"), config("namespaces",
66+
resourceFilePath("data/namespaces.json")), config("server.applicationConnectors[1].keyStorePath",
67+
resourceFilePath("keystore/trellis.jks")));
6468
private static final JenaRDF rdf = new JenaRDF();
6569
private static String baseUrl;
6670
private static String pid;
@@ -93,8 +97,8 @@ void init() {
9397
void tearDown() {
9498
}
9599

96-
private static InputStream getTestJsonResource() {
97-
return H2ClientTest.class.getResourceAsStream("/webanno.complete-embedded.json");
100+
private static Path getTestJsonResource() {
101+
return Paths.get(H2ClientTest.class.getResource("/webanno.complete-embedded.json").getPath());
98102
}
99103

100104
private static InputStream getTestN3Resource() {
@@ -117,7 +121,7 @@ void testRepeatedPutH2N3Resource() throws Exception {
117121
void testRepeatedPutH2JsonResource() throws Exception {
118122
try {
119123
final IRI identifier = rdf.createIRI(baseUrl + pid);
120-
h2client.put(identifier, getTestJsonResource(), contentTypeJSONLD);
124+
h2client.putSupplier(identifier, fileInputStreamSupplier(getTestJsonResource()), contentTypeJSONLD);
121125
final Map<String, List<String>> headers = h2client.head(identifier);
122126
assertTrue(headers.containsKey(LINK));
123127
} catch (Exception ex) {
@@ -143,4 +147,19 @@ void testJoiningCompletableFuturePut() throws Exception {
143147
}
144148
}
145149

150+
static Supplier<FileInputStream> fileInputStreamSupplier(Path f) {
151+
return new Supplier<>() {
152+
Path file = f;
153+
@Override
154+
public FileInputStream get() {
155+
try {
156+
PrivilegedExceptionAction<FileInputStream> pa =
157+
() -> new FileInputStream(file.toFile());
158+
return AccessController.doPrivileged(pa);
159+
} catch (PrivilegedActionException x) {
160+
throw new UncheckedIOException((IOException)x.getCause());
161+
}
162+
}
163+
};
164+
}
146165
}

client/src/test/java/org/trellisldp/client/LdpClientTest.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import java.io.ByteArrayInputStream;
4444
import java.io.InputStream;
4545
import java.net.URLEncoder;
46+
import java.net.http.HttpResponse;
4647
import java.nio.charset.StandardCharsets;
4748
import java.nio.file.Files;
4849
import java.nio.file.Path;
@@ -62,8 +63,6 @@
6263

6364
import javax.ws.rs.core.Link;
6465

65-
import java.net.http.HttpResponse;
66-
6766
import org.apache.commons.rdf.api.Graph;
6867
import org.apache.commons.rdf.api.IRI;
6968
import org.apache.commons.rdf.jena.JenaRDF;
-12 Bytes
Binary file not shown.

gradle/wrapper/gradle-wrapper.jar

5 Bytes
Binary file not shown.
+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
#Thu May 10 13:21:34 CEST 2018
1+
#Wed May 16 20:56:30 CEST 2018
22
distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-4.7-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-rc-1-all.zip

settings.gradle

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
rootProject.name = 'trellis-client'
22
include 'trellis-client'
3-
project(':trellis-client').projectDir = "$rootDir/client" as File
3+
project(':trellis-client').projectDir = "$rootDir/client" as File
4+
enableFeaturePreview('STABLE_PUBLISHING')

0 commit comments

Comments
 (0)