clerezza-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From m..@apache.org
Subject svn commit: r918086 - /incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java
Date Tue, 02 Mar 2010 15:56:00 GMT
Author: mir
Date: Tue Mar  2 15:56:00 2010
New Revision: 918086

URL: http://svn.apache.org/viewvc?rev=918086&view=rev
Log:
CLEREZZA-20: added "supportedFormat" service property to JenaSerializerProvider so it is possible
to bind this service depending on its supported formats

Modified:
    incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java

Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java?rev=918086&r1=918085&r2=918086&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java
(original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.serializer/src/main/java/org/apache/clerezza/rdf/jena/serializer/JenaSerializerProvider.java
Tue Mar  2 15:56:00 2010
@@ -16,68 +16,73 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.clerezza.rdf.jena.serializer;
-
-import java.io.OutputStream;
-
-import org.apache.clerezza.rdf.core.serializedform.SerializingProvider;
-import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
-import org.apache.clerezza.rdf.jena.facade.JenaGraph;
-
-import com.hp.hpl.jena.rdf.model.Model;
-import com.hp.hpl.jena.rdf.model.ModelFactory;
-import com.hp.hpl.jena.rdf.model.RDFWriter;
-import org.apache.clerezza.rdf.core.TripleCollection;
-import org.apache.clerezza.rdf.core.serializedform.UnsupportedSerializationFormatException;
-/**
- * A {@link org.apache.clerezza.rdf.core.serializedform.SerializingProvider} based on Jena
- *
- * @author mir
- * 
- * @scr.component immediate="true"
- * @scr.service interface="org.apache.clerezza.rdf.core.serializedform.SerializingProvider"
- */
-/*
- * see http://jena.sourceforge.net/IO/iohowto.html
- */
-@SupportedFormat({SupportedFormat.RDF_XML,
-	SupportedFormat.TURTLE,	SupportedFormat.X_TURTLE,
-	SupportedFormat.N_TRIPLE, SupportedFormat.N3})
-public class JenaSerializerProvider implements SerializingProvider {
-
-	@Override
-	public void serialize(OutputStream serializedGraph, TripleCollection tc,
-			String formatIdentifier) {
-		String jenaFormat = getJenaFormat(formatIdentifier);
-		com.hp.hpl.jena.graph.Graph graph = new JenaGraph(tc);
-		Model model = ModelFactory.createModelForGraph(graph);
-		RDFWriter writer = model.getWriter(jenaFormat);
-		if ("RDF/XML".equals(jenaFormat)) {
-			//jena complains about some URIs that aren't truely bad
-			//see: http://tech.groups.yahoo.com/group/jena-dev/message/38313
-			writer.setProperty("allowBadURIs", Boolean.TRUE);
-		}
-		writer.write(model, serializedGraph, "");
-	}
-
-	private String getJenaFormat(String formatIdentifier) {
-		int semicolonPos = formatIdentifier.indexOf(';');
-		if (semicolonPos > -1) {
-			formatIdentifier = formatIdentifier.substring(0, semicolonPos);
-		}
-		if (formatIdentifier.equals(SupportedFormat.RDF_XML)) {
-			return "RDF/XML";
-		}
-		if (formatIdentifier.equals(SupportedFormat.TURTLE) ||
-				formatIdentifier.equals(SupportedFormat.X_TURTLE)) {
-			return "TURTLE";
-		}
-		if (formatIdentifier.equals(SupportedFormat.N3)) {
-			return "N3";
-		}
-		if (formatIdentifier.equals(SupportedFormat.N_TRIPLE)) {
-			return "N-TRIPLE";
-		}
-		throw new UnsupportedSerializationFormatException(formatIdentifier);
-	}
-}
+package org.apache.clerezza.rdf.jena.serializer;
+
+import java.io.OutputStream;
+
+import org.apache.clerezza.rdf.core.serializedform.SerializingProvider;
+import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
+import org.apache.clerezza.rdf.jena.facade.JenaGraph;
+
+import com.hp.hpl.jena.rdf.model.Model;
+import com.hp.hpl.jena.rdf.model.ModelFactory;
+import com.hp.hpl.jena.rdf.model.RDFWriter;
+import org.apache.clerezza.rdf.core.TripleCollection;
+import org.apache.clerezza.rdf.core.serializedform.UnsupportedSerializationFormatException;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Property;
+import org.apache.felix.scr.annotations.Service;
+/**
+ * A {@link org.apache.clerezza.rdf.core.serializedform.SerializingProvider} based on Jena
+ *
+ * @author mir
+ */
+/*
+ * see http://jena.sourceforge.net/IO/iohowto.html
+ */
+@Component
+@Service(SerializingProvider.class)
+@Property(name="supportedFormat", value={SupportedFormat.RDF_XML,
+	SupportedFormat.TURTLE,	SupportedFormat.X_TURTLE,
+	SupportedFormat.N_TRIPLE, SupportedFormat.N3})
+@SupportedFormat({SupportedFormat.RDF_XML,
+	SupportedFormat.TURTLE,	SupportedFormat.X_TURTLE,
+	SupportedFormat.N_TRIPLE, SupportedFormat.N3})
+public class JenaSerializerProvider implements SerializingProvider {
+
+	@Override
+	public void serialize(OutputStream serializedGraph, TripleCollection tc,
+			String formatIdentifier) {
+		String jenaFormat = getJenaFormat(formatIdentifier);
+		com.hp.hpl.jena.graph.Graph graph = new JenaGraph(tc);
+		Model model = ModelFactory.createModelForGraph(graph);
+		RDFWriter writer = model.getWriter(jenaFormat);
+		if ("RDF/XML".equals(jenaFormat)) {
+			//jena complains about some URIs that aren't truely bad
+			//see: http://tech.groups.yahoo.com/group/jena-dev/message/38313
+			writer.setProperty("allowBadURIs", Boolean.TRUE);
+		}
+		writer.write(model, serializedGraph, "");
+	}
+
+	private String getJenaFormat(String formatIdentifier) {
+		int semicolonPos = formatIdentifier.indexOf(';');
+		if (semicolonPos > -1) {
+			formatIdentifier = formatIdentifier.substring(0, semicolonPos);
+		}
+		if (formatIdentifier.equals(SupportedFormat.RDF_XML)) {
+			return "RDF/XML";
+		}
+		if (formatIdentifier.equals(SupportedFormat.TURTLE) ||
+				formatIdentifier.equals(SupportedFormat.X_TURTLE)) {
+			return "TURTLE";
+		}
+		if (formatIdentifier.equals(SupportedFormat.N3)) {
+			return "N3";
+		}
+		if (formatIdentifier.equals(SupportedFormat.N_TRIPLE)) {
+			return "N-TRIPLE";
+		}
+		throw new UnsupportedSerializationFormatException(formatIdentifier);
+	}
+}



Mime
View raw message