Author: anuzzolese
Date: Mon May 16 22:53:37 2011
New Revision: 1103942
URL: http://svn.apache.org/viewvc?rev=1103942&view=rev
Log:
STANBOL-203 Created a WebFragment, i.e. OWLFragment, in org.apache.stanbol.owl.
It allows to add the body writer for the OWLOntology.
Added:
incubator/stanbol/trunk/owl/src/main/java/org/apache/stanbol/owl/web/OWLFragment.java
Modified:
incubator/stanbol/trunk/owl/pom.xml
Modified: incubator/stanbol/trunk/owl/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/owl/pom.xml?rev=1103942&r1=1103941&r2=1103942&view=diff
==============================================================================
--- incubator/stanbol/trunk/owl/pom.xml (original)
+++ incubator/stanbol/trunk/owl/pom.xml Mon May 16 22:53:37 2011
@@ -87,78 +87,68 @@
<!-- OSGi deps -->
<dependency>
- <groupId>org.apache.felix</groupId>
+ <groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
- <version>1.4.0</version>
</dependency>
+
+ <!-- Stanbol deps -->
+ <dependency>
+ <groupId>org.apache.stanbol</groupId>
+ <artifactId>org.apache.stanbol.commons.web.base</artifactId>
+ </dependency>
<!-- OWL deps -->
<dependency>
<groupId>com.hp.hpl.jena</groupId>
<artifactId>jena</artifactId>
- <version>2.6.2</version>
</dependency>
<dependency>
<groupId>com.hp.hpl.jena</groupId>
<artifactId>arq</artifactId>
- <version>2.8.3</version>
- <type>jar</type>
</dependency>
<dependency>
<groupId>owlapi</groupId>
<artifactId>owlapi</artifactId>
<version>3.0.0</version>
- <type>jar</type>
</dependency>
<!-- Persistence deps -->
<dependency>
<groupId>org.apache.clerezza</groupId>
<artifactId>org.apache.clerezza.rdf.core</artifactId>
- <version>0.12-incubating-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.clerezza</groupId>
<artifactId>org.apache.clerezza.rdf.jena.parser</artifactId>
- <version>0.10-incubating-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.clerezza</groupId>
<artifactId>org.apache.clerezza.rdf.jena.serializer</artifactId>
- <version>0.9-incubating-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.clerezza</groupId>
<artifactId>org.apache.clerezza.rdf.rdfjson</artifactId>
- <version>0.3-incubating-SNAPSHOT</version>
- <type>bundle</type>
</dependency>
<!-- Web Service deps -->
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
- <version>1.1.1</version>
- <type>jar</type>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.4</version>
- <scope>provided</scope>
</dependency>
<!-- Diagnostics deps -->
- <dependency> <!-- we use log4j 1.2 -->
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
- <scope>runtime</scope>
</dependency>
<dependency> <!-- see also the log4j.properties in
src/main/resources -->
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
- <scope>runtime</scope>
</dependency>
<!-- Testing deps -->
Added:
incubator/stanbol/trunk/owl/src/main/java/org/apache/stanbol/owl/web/OWLFragment.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/owl/src/main/java/org/apache/stanbol/owl/web/OWLFragment.java?rev=1103942&view=auto
==============================================================================
---
incubator/stanbol/trunk/owl/src/main/java/org/apache/stanbol/owl/web/OWLFragment.java
(added)
+++
incubator/stanbol/trunk/owl/src/main/java/org/apache/stanbol/owl/web/OWLFragment.java
Mon May 16 22:53:37 2011
@@ -0,0 +1,97 @@
+package org.apache.stanbol.owl.web;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Service;
+import org.apache.stanbol.commons.web.base.LinkResource;
+import org.apache.stanbol.commons.web.base.NavigationLink;
+import org.apache.stanbol.commons.web.base.ScriptResource;
+import org.apache.stanbol.commons.web.base.WebFragment;
+import org.osgi.framework.BundleContext;
+import org.osgi.service.component.ComponentContext;
+
+import freemarker.cache.ClassTemplateLoader;
+import freemarker.cache.TemplateLoader;
+
+/**
+ * Implementation of WebFragment for the OWL API.
+ *
+ * @author andrea.nuzzolese
+ *
+ */
+
+@Component(immediate = true, metatype = true)
+@Service(WebFragment.class)
+public class OWLFragment implements WebFragment {
+
+ private static final String NAME = "owl";
+
+ private static final String STATIC_RESOURCE_PATH =
"/org/apache/stanbol/owl/web/static";
+
+ private static final String TEMPLATE_PATH =
"/org/apache/stanbol/owl/web/templates";
+
+ private BundleContext bundleContext;
+
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Activate
+ protected void activate(ComponentContext ctx) {
+ this.bundleContext = ctx.getBundleContext();
+ }
+
+ @Override
+ public String getStaticResourceClassPath() {
+ return STATIC_RESOURCE_PATH;
+ }
+
+ @Override
+ public Set<Class<?>> getJaxrsResourceClasses() {
+ Set<Class<?>> classes = new HashSet<Class<?>>();
+ classes.add(OWLOntologyWriter.class);
+ return classes;
+ }
+
+ @Override
+ public Set<Object> getJaxrsResourceSingletons() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ public TemplateLoader getTemplateLoader() {
+ return new ClassTemplateLoader(getClass(), TEMPLATE_PATH);
+ }
+
+ @Override
+ public List<LinkResource> getLinkResources() {
+ List<LinkResource> resources = new ArrayList<LinkResource>();
+ return resources;
+ }
+
+ @Override
+ public List<ScriptResource> getScriptResources() {
+ List<ScriptResource> resources = new
ArrayList<ScriptResource>();
+ return resources;
+ }
+
+ @Override
+ public List<NavigationLink> getNavigationLinks() {
+ List<NavigationLink> resources = new
ArrayList<NavigationLink>();
+ return resources;
+ }
+
+ @Override
+ public BundleContext getBundleContext() {
+ return bundleContext;
+ }
+
+}