Skip to content

Commit 0d07db1

Browse files
committed
Final removal of direct apache commons dependencies.
Downside: tighter coupling with jena
1 parent c132edb commit 0d07db1

File tree

13 files changed

+38
-36
lines changed

13 files changed

+38
-36
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ dependencies {
113113
implementation "org.apache.jena:jena-commonsrdf:${jenaVersion}"
114114
implementation "org.apache.thrift:libthrift:0.18.1"
115115

116-
implementation "org.apache.commons:commons-rdf-jsonld-java:0.5.0"
116+
testImplementation "org.apache.commons:commons-rdf-jsonld-java:0.5.0"
117117
implementation "com.github.java-json-tools:json-schema-validator:2.2.14"
118118

119119
implementation "org.apache.commons:commons-collections4:4.1"

src/main/java/edu/kit/scc/dem/wapsrv/model/Container.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package edu.kit.scc.dem.wapsrv.model;
22

33
import org.apache.commons.rdf.api.BlankNodeOrIRI;
4-
import org.apache.commons.rdf.simple.SimpleRDF;
54
import edu.kit.scc.dem.wapsrv.model.rdf.RdfUtilities;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* The container interface defines all methods special to containers. These address root containers, labels and other
@@ -43,7 +43,7 @@ public interface Container extends WapObject {
4343
* @return the IRI of the rdf:seq for Annotations
4444
*/
4545
static BlankNodeOrIRI toAnnotationSeqIri(BlankNodeOrIRI iri) {
46-
SimpleRDF rdf = new SimpleRDF();
46+
JenaRDF rdf = new JenaRDF();
4747
return rdf.createIRI(toAnnotationSeqIriString(RdfUtilities.nStringToString(iri.ntriplesString())));
4848
}
4949

@@ -66,7 +66,7 @@ static String toAnnotationSeqIriString(String containerIriString) {
6666
* @return the IRI of the rdf:seq for Subcontainers
6767
*/
6868
static BlankNodeOrIRI toContainerSeqIri(BlankNodeOrIRI iri) {
69-
SimpleRDF rdf = new SimpleRDF();
69+
JenaRDF rdf = new JenaRDF();
7070
return rdf.createIRI(toContainerSeqIriString(RdfUtilities.nStringToString(iri.ntriplesString())));
7171
}
7272

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/RdfOutputContainer.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
import org.apache.commons.rdf.api.Dataset;
44
import org.apache.commons.rdf.api.IRI;
55
import org.apache.commons.rdf.api.Literal;
6-
import org.apache.commons.rdf.simple.Types;
76
import edu.kit.scc.dem.wapsrv.app.WapServerConfig;
87
import edu.kit.scc.dem.wapsrv.model.Container;
98
import edu.kit.scc.dem.wapsrv.model.rdf.vocabulary.AsVocab;
109
import edu.kit.scc.dem.wapsrv.model.rdf.vocabulary.LdpVocab;
1110
import edu.kit.scc.dem.wapsrv.model.rdf.vocabulary.RdfVocab;
11+
import org.apache.jena.datatypes.xsd.XSDDatatype;
1212

1313
/**
1414
* The class is used to generate the correct output representation of the Container. It extends the Container class and
@@ -51,9 +51,10 @@ public RdfOutputContainer(Dataset dataset, boolean preferMinimalContainer, boole
5151
@Override
5252
public Dataset getDataset() {
5353
// Because the sequence head is also included we need to substract 1
54+
IRI typeIRI_INT = rdfBackend.getRdf().createIRI(XSDDatatype.XSDnonNegativeInteger.getURI());
5455
long annoCount = dataset.getGraph().stream(Container.toAnnotationSeqIri(iri), null, null).count() - 1;
5556
Literal annoCountLiteral
56-
= rdfBackend.getRdf().createLiteral(String.valueOf(annoCount), Types.XSD_NONNEGATIVEINTEGER);
57+
= rdfBackend.getRdf().createLiteral(String.valueOf(annoCount), typeIRI_INT);
5758
dataset.getGraph().add(iri, AsVocab.totalItems, annoCountLiteral);
5859
// Don't show first and last if there are no Annotation, hence no page.
5960
if (annoCount != 0) {

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/RdfPage.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import org.apache.commons.rdf.api.Dataset;
66
import org.apache.commons.rdf.api.Graph;
77
import org.apache.commons.rdf.api.IRI;
8-
import org.apache.commons.rdf.simple.Types;
8+
import org.apache.jena.datatypes.xsd.XSDDatatype;
99
import edu.kit.scc.dem.wapsrv.app.WapServerConfig;
1010
import edu.kit.scc.dem.wapsrv.exceptions.FormatNotAvailableException;
1111
import edu.kit.scc.dem.wapsrv.model.Annotation;
@@ -82,13 +82,17 @@ public RdfPage(Dataset dataset, String containerIriString, int pageNr, boolean p
8282
// IRI containerIri = rdfBackend.getRdf().createIRI(containerIriString);
8383
// Put basic information
8484
dataset.getGraph().add(iriFull, RdfVocab.type, AsVocab.orderedCollectionPage);
85+
86+
IRI typeIRI_INT = rdfBackend.getRdf().createIRI(XSDDatatype.XSDnonNegativeInteger.getURI());
87+
IRI typeIRI_DATETIME = rdfBackend.getRdf().createIRI(XSDDatatype.XSDdateTime.getURI());
88+
8589
if (!isEmbedded) {
8690
// --- part of content start
8791
dataset.getGraph().add(iriFull, AsVocab.partOf, iriPreferOnly);
8892
dataset.getGraph().add(iriPreferOnly, AsVocab.totalItems,
89-
rdfBackend.getRdf().createLiteral(String.valueOf(annoTotalCount), Types.XSD_NONNEGATIVEINTEGER));
93+
rdfBackend.getRdf().createLiteral(String.valueOf(annoTotalCount), typeIRI_INT));
9094
dataset.getGraph().add(iriPreferOnly, DcTermsVocab.modified,
91-
rdfBackend.getRdf().createLiteral(String.valueOf(modified), Types.XSD_DATETIME));
95+
rdfBackend.getRdf().createLiteral(String.valueOf(modified), typeIRI_DATETIME));
9296
dataset.getGraph().add(iriPreferOnly, AsVocab.first, getIriforPage(0));
9397
dataset.getGraph().add(iriPreferOnly, AsVocab.last, getIriforPage(getPageCount() - 1));
9498
// label from container
@@ -98,7 +102,7 @@ public RdfPage(Dataset dataset, String containerIriString, int pageNr, boolean p
98102
asCollection = new AsCollection(dataset.getGraph(), iriFull);
99103
// Set startIndex
100104
dataset.getGraph().add(iriFull, AsVocab.startIndex, rdfBackend.getRdf()
101-
.createLiteral(String.valueOf(getFirstAnnotationPosition()), Types.XSD_NONNEGATIVEINTEGER));
105+
.createLiteral(String.valueOf(getFirstAnnotationPosition()), typeIRI_INT));
102106
// Put next/prev pages
103107
if (hasNextPage()) {
104108
dataset.getGraph().add(iriFull, AsVocab.next, getIriforPage(pageNr + 1));

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/RdfUtilities.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,10 @@
88
import java.util.Set;
99
import java.util.TimeZone;
1010
import java.util.Vector;
11-
import org.apache.commons.rdf.api.BlankNodeOrIRI;
12-
import org.apache.commons.rdf.api.Dataset;
13-
import org.apache.commons.rdf.api.Graph;
14-
import org.apache.commons.rdf.api.Literal;
15-
import org.apache.commons.rdf.api.Quad;
16-
import org.apache.commons.rdf.api.RDF;
17-
import org.apache.commons.rdf.api.Triple;
18-
import org.apache.commons.rdf.simple.Types;
11+
12+
import org.apache.commons.rdf.api.*;
1913
import edu.kit.scc.dem.wapsrv.exceptions.InternalServerException;
14+
import org.apache.jena.datatypes.xsd.XSDDatatype;
2015

2116
/**
2217
* Utility class with common operations on graphs and datasets
@@ -165,7 +160,8 @@ public static Literal rdfLiteralFromCalendar(Calendar calendar, RDF rdf) {
165160
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
166161
// calendar.setTimeZone(TimeZone.getTimeZone("UTC"));
167162
String dateTimeString = sdf.format(calendar.getTime());
168-
Literal timedate = rdf.createLiteral(dateTimeString, Types.XSD_DATETIME);
163+
IRI typeIRI_DATETIME = rdf.createIRI(XSDDatatype.XSDdateTime.getURI());
164+
Literal timedate = rdf.createLiteral(dateTimeString, typeIRI_DATETIME);
169165
return timedate;
170166
}
171167
}

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/vocabulary/AnnoVocab.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.rdf.api.IRI;
44
import org.apache.commons.rdf.api.RDF;
5-
import org.apache.commons.rdf.simple.SimpleRDF;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* This class provides the vocabulary for annotations of the W3C (from http://www.w3.org/ns/oa#).
@@ -264,7 +264,7 @@ public class AnnoVocab {
264264

265265
private static IRI buildIri(String property) {
266266
if (rdf == null) {
267-
rdf = new SimpleRDF();
267+
rdf = new JenaRDF();
268268
}
269269
return rdf.createIRI(ROOT + property);
270270
}

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/vocabulary/AsVocab.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.rdf.api.IRI;
44
import org.apache.commons.rdf.api.RDF;
5-
import org.apache.commons.rdf.simple.SimpleRDF;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* This class provides the vocabulary ActivityStreams (from http://www.w3.org/ns/activitystreams#).
@@ -484,7 +484,7 @@ public class AsVocab {
484484

485485
private static IRI buildIri(String property) {
486486
if (rdf == null) {
487-
rdf = new SimpleRDF();
487+
rdf = new JenaRDF();
488488
}
489489
return rdf.createIRI(ROOT + property);
490490
}

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/vocabulary/DcTermsVocab.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.rdf.api.IRI;
44
import org.apache.commons.rdf.api.RDF;
5-
import org.apache.commons.rdf.simple.SimpleRDF;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* This class provides the vocabulary for dc-terms (http://dublincore.org/documents/dcmi-terms/).
@@ -239,7 +239,7 @@ public class DcTermsVocab {
239239

240240
private static IRI buildIri(String property) {
241241
if (rdf == null) {
242-
rdf = new SimpleRDF();
242+
rdf = new JenaRDF();
243243
}
244244
return rdf.createIRI(property);
245245
}

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/vocabulary/LdpVocab.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.rdf.api.IRI;
44
import org.apache.commons.rdf.api.RDF;
5-
import org.apache.commons.rdf.simple.SimpleRDF;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* This class provides the vocabulary for annotations of the W3C (from http://www.w3.org/ns/ldp#).
@@ -76,7 +76,7 @@ public class LdpVocab {
7676

7777
private static IRI buildIri(String property) {
7878
if (rdf == null) {
79-
rdf = new SimpleRDF();
79+
rdf = new JenaRDF();
8080
}
8181
return rdf.createIRI(ROOT + property);
8282
}

src/main/java/edu/kit/scc/dem/wapsrv/model/rdf/vocabulary/RdfSchemaVocab.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.rdf.api.IRI;
44
import org.apache.commons.rdf.api.RDF;
5-
import org.apache.commons.rdf.simple.SimpleRDF;
5+
import org.apache.jena.commonsrdf.JenaRDF;
66

77
/**
88
* This class provides the vocabulary for RDF schema (https://www.w3.org/2000/01/rdf-schema#) this class currently only
@@ -25,7 +25,7 @@ public class RdfSchemaVocab {
2525

2626
private static IRI buildIri(String property) {
2727
if (rdf == null) {
28-
rdf = new SimpleRDF();
28+
rdf = new JenaRDF();
2929
}
3030
return rdf.createIRI(ROOT + property);
3131
}

0 commit comments

Comments
 (0)