You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by re...@apache.org on 2011/06/22 13:23:04 UTC
svn commit: r1138406 - in /incubator/clerezza/trunk/parent/rdf.web:
rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/
rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/
rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/...
Author: reto
Date: Wed Jun 22 11:23:04 2011
New Revision: 1138406
URL: http://svn.apache.org/viewvc?rev=1138406&view=rev
Log:
CLEREZZA-575: Distinguishing between graphs and mgraphs in meta-graph
Modified:
incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/BackupMessageBodyWriter.java
incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/BackupTest.java
incubator/clerezza/trunk/parent/rdf.web/rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/web/ontologies/backup.rdf
Modified: incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/BackupMessageBodyWriter.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/BackupMessageBodyWriter.java?rev=1138406&r1=1138405&r2=1138406&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/BackupMessageBodyWriter.java (original)
+++ incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/main/java/org/apache/clerezza/rdf/web/core/BackupMessageBodyWriter.java Wed Jun 22 11:23:04 2011
@@ -135,9 +135,15 @@ public class BackupMessageBodyWriter imp
UriRef tcUri = tcUriRefs.next();
String fileName = folder + getTcFileName(tcUri, ".nt",
fileNameCount);
- archive(compressedTcs, tcManager.getTriples(tcUri), fileName);
- backupContents.add(new TripleImpl(tcUri, RDF.type,
- BACKUP.Graph));
+ TripleCollection tripleCollection = tcManager.getTriples(tcUri);
+ archive(compressedTcs, tripleCollection, fileName);
+ if (tripleCollection instanceof MGraph) {
+ backupContents.add(new TripleImpl(tcUri, RDF.type,
+ BACKUP.MGraph));
+ } else {
+ backupContents.add(new TripleImpl(tcUri, RDF.type,
+ BACKUP.Graph));
+ }
backupContents.add(new TripleImpl(tcUri, BACKUP.file,
LiteralFactory.getInstance().createTypedLiteral(
fileName)));
Modified: incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/BackupTest.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/BackupTest.java?rev=1138406&r1=1138405&r2=1138406&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/BackupTest.java (original)
+++ incubator/clerezza/trunk/parent/rdf.web/rdf.web.core/src/test/java/org/apache/clerezza/rdf/web/core/BackupTest.java Wed Jun 22 11:23:04 2011
@@ -22,8 +22,10 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.Map;
import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
@@ -58,18 +60,27 @@ public class BackupTest {
private static String testGraphFileName = "test.graph";
- private static MGraph testGraph0 = new SimpleMGraph();
- private static UriRef testGraphUri0 = // the URI of testGraph0
+ private static MGraph testMGraph0 = new SimpleMGraph();
+ private static UriRef testMGraphUri0 = // the URI of testMGraph0
new UriRef("http://localhost/test0/"+testGraphFileName);
- // a resource in testGraph0
+ // a resource in testMGraph0
private static UriRef uri0 = new UriRef("http://localhost/test0/testuri");
- private static MGraph testGraph1 = new SimpleMGraph();
- private static UriRef testGraphUri1 = // the URI of testGraph1
+ private static MGraph testMGraph1 = new SimpleMGraph();
+ private static UriRef testMGraphUri1 = // the URI of testMGraph1
new UriRef("http://localhost/test1/"+testGraphFileName);
- // a resource in testGraph1
+
+ // a resource in testMGraph1
private static UriRef uri1 = new UriRef("http://localhost/test1/testuri");
+ private static Graph testGraphA;
+ private static UriRef testGraphUriA = // the URI of testGraphA
+ new UriRef("http://localhost/testA/"+testGraphFileName);
+
+ // a resource in testGraphA
+ private static UriRef uriA = new UriRef("http://localhost/testA/testuri");
+
+
private static String backupContentFileName = "triplecollections.nt";
private static BackupMessageBodyWriter backup;
private static Parser parser = Parser.getInstance();
@@ -81,20 +92,24 @@ public class BackupTest {
backup.serializer = Serializer.getInstance();
backup.serializer.bindSerializingProvider(
new JenaSerializerProvider());
- testGraph0.add(new TripleImpl(uri0, uri0, uri0));
- testGraph1.add(new TripleImpl(uri1, uri1, uri1));
+ testMGraph0.add(new TripleImpl(uri0, uri0, uri0));
+ testMGraph1.add(new TripleImpl(uri1, uri1, uri1));
+ MGraph graphBuilder = new SimpleMGraph();
+ graphBuilder.add(new TripleImpl(uriA, uriA, uriA));
+ testGraphA = graphBuilder.getGraph();
}
@Test
public void testBackup() throws IOException {
- Graph downloadedTestGraphX = null;
- Graph downloadedTestGraphY = null;
+ //Graph downloadedTestGraphX = null;
+ //Graph downloadedTestGraphY = null;
Graph downloadedBackupContentsGraph = null;
byte[] download = backup.createBackup();
ByteArrayInputStream bais = new ByteArrayInputStream(download);
ZipInputStream compressedTcs = new ZipInputStream(bais);
+ Map<String, TripleCollection> extractedTc = new HashMap<String, TripleCollection>();
String folder = "";
ZipEntry entry;
while ((entry = compressedTcs.getNextEntry()) != null) {
@@ -112,77 +127,93 @@ public class BackupTest {
}
ByteArrayInputStream serializedGraph = new ByteArrayInputStream(
baos.toByteArray());
- if (entryName.equals(folder+testGraphFileName + ".nt")) {
+ /*if (entryName.equals(folder+testGraphFileName + ".nt")) {
downloadedTestGraphX = parser.parse(serializedGraph,
SupportedFormat.N_TRIPLE, null);
} else if (entryName.startsWith(folder+testGraphFileName)) {
downloadedTestGraphY = parser.parse(serializedGraph,
SupportedFormat.N_TRIPLE, null);
- }
+ }*/
if (entryName.equals(backupContentFileName)) {
downloadedBackupContentsGraph = parser.parse(serializedGraph,
SupportedFormat.N_TRIPLE, null);
+ } else {
+ Graph deserializedGraph = parser.parse(serializedGraph,
+ SupportedFormat.N_TRIPLE, null);
+ extractedTc.put(entryName, deserializedGraph);
}
baos.flush();
baos.close();
}
}
compressedTcs.close();
- checkDownloadedGraphs(downloadedTestGraphX, downloadedTestGraphY,
+ checkDownloadedGraphs(extractedTc,
downloadedBackupContentsGraph, folder);
}
- private void checkDownloadedGraphs(Graph downloadedTestGraphX,
- Graph downloadedTestGraphY, Graph downloadedBackupContentsGraph,
- String folder) {
- Assert.assertNotNull(downloadedTestGraphX);
- Assert.assertNotNull(downloadedTestGraphY);
+ private void checkDownloadedGraphs(Map<String, TripleCollection> extractedTc,
+ Graph downloadedBackupContentsGraph, String folder) {
+ Assert.assertFalse(extractedTc.isEmpty());
Assert.assertNotNull(downloadedBackupContentsGraph);
Assert.assertTrue(downloadedBackupContentsGraph.contains(new TripleImpl(
- testGraphUri0, RDF.type, BACKUP.Graph)));
+ testMGraphUri0, RDF.type, BACKUP.MGraph)));
Iterator<Triple> triples = downloadedBackupContentsGraph.filter(
- testGraphUri0, BACKUP.file, null);
+ testMGraphUri0, BACKUP.file, null);
Assert.assertTrue(triples.hasNext());
- String fileNameA = ((TypedLiteral) triples.next().getObject()).getLexicalForm();
- Assert.assertTrue(fileNameA.startsWith(folder+testGraphFileName));
+ String fileName0 = ((TypedLiteral) triples.next().getObject()).getLexicalForm();
+ Assert.assertTrue(fileName0.startsWith(folder+testGraphFileName));
- if (fileNameA.equals(folder+testGraphFileName+".nt")) {
- Assert.assertTrue(downloadedTestGraphX.filter(uri0, uri0, uri0).hasNext());
- } else {
- Assert.assertTrue(downloadedTestGraphY.filter(uri0, uri0, uri0).hasNext());
- }
+ TripleCollection extracted0 = extractedTc.get(fileName0);
+ Assert.assertNotNull(extracted0);
+ Assert.assertTrue(extracted0.filter(uri0, uri0, uri0).hasNext());
Assert.assertTrue(downloadedBackupContentsGraph.contains(new TripleImpl(
- testGraphUri1, RDF.type, BACKUP.Graph)));
+ testMGraphUri1, RDF.type, BACKUP.MGraph)));
triples = downloadedBackupContentsGraph.filter(
- testGraphUri1, BACKUP.file, null);
+ testMGraphUri1, BACKUP.file, null);
Assert.assertTrue(triples.hasNext());
- String fileNameB = ((TypedLiteral) triples.next().getObject()).getLexicalForm();
- Assert.assertTrue(fileNameB.startsWith(folder+testGraphFileName));
+ String fileName1 = ((TypedLiteral) triples.next().getObject()).getLexicalForm();
+ Assert.assertTrue(fileName1.startsWith(folder+testGraphFileName));
- if (fileNameB.equals(folder+testGraphFileName+".nt")) {
- Assert.assertTrue(downloadedTestGraphX.filter(uri1, uri1, uri1).hasNext());
- } else {
- Assert.assertTrue(downloadedTestGraphY.filter(uri1, uri1, uri1).hasNext());
- }
+ TripleCollection extracted1 = extractedTc.get(fileName1);
+ Assert.assertNotNull(extracted1);
+
+ Assert.assertTrue(extracted1.filter(uri1, uri1, uri1).hasNext());
+
+
+
+ Assert.assertTrue(downloadedBackupContentsGraph.contains(new TripleImpl(
+ testGraphUriA, RDF.type, BACKUP.Graph)));
+
+ triples = downloadedBackupContentsGraph.filter(
+ testGraphUriA, BACKUP.file, null);
+ Assert.assertTrue(triples.hasNext());
+
+ String fileNameA = ((TypedLiteral) triples.next().getObject()).getLexicalForm();
+ Assert.assertTrue(fileNameA.startsWith(folder+testGraphFileName));
+ TripleCollection extractedA = extractedTc.get(fileNameA);
+ Assert.assertNotNull(extractedA);
+
+ Assert.assertTrue(extractedA.filter(uriA, uriA, uriA).hasNext());
- Assert.assertFalse(fileNameA.equals(fileNameB));
}
private class TestTcManager extends TcManager {
- // Associates testGraphUri0 with testGraph0 and testGraphUri1 with testGraph1
+ // Associates testGraphUri0 with testMGraph0 and testGraphUri1 with testGraph1
@Override
public TripleCollection getTriples(UriRef name) throws NoSuchEntityException {
- if (name.equals(testGraphUri0)) {
- return testGraph0;
- } else if (name.equals(testGraphUri1)) {
- return testGraph1;
+ if (name.equals(testMGraphUri0)) {
+ return testMGraph0;
+ } else if (name.equals(testMGraphUri1)) {
+ return testMGraph1;
+ } else if (name.equals(testGraphUriA)) {
+ return testGraphA;
}
return null;
}
@@ -190,8 +221,9 @@ public class BackupTest {
@Override
public Set<UriRef> listTripleCollections() {
Set<UriRef> result = new HashSet<UriRef>();
- result.add(testGraphUri0);
- result.add(testGraphUri1);
+ result.add(testMGraphUri0);
+ result.add(testMGraphUri1);
+ result.add(testGraphUriA);
return result;
}
}
Modified: incubator/clerezza/trunk/parent/rdf.web/rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/web/ontologies/backup.rdf
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/rdf.web/rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/web/ontologies/backup.rdf?rev=1138406&r1=1138405&r2=1138406&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/rdf.web/rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/web/ontologies/backup.rdf (original)
+++ incubator/clerezza/trunk/parent/rdf.web/rdf.web.ontologies/src/main/resources/org/apache/clerezza/rdf/web/ontologies/backup.rdf Wed Jun 22 11:23:04 2011
@@ -25,6 +25,12 @@
<skos:definition xml:lang="en">An RDF graph.</skos:definition>
</rdfs:Class>
+<rdfs:Class rdf:about="#MGraph">
+ <rdf:type rdf:resource="owl:Class"/>
+ <rdfs:label xml:lang="en">MGraph</rdfs:label>
+ <skos:definition xml:lang="en">A mutable RDF graph.</skos:definition>
+</rdfs:Class>
+
<!-- Properties -->
<rdf:Property rdf:about="#file">