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;
+       }
+
+}


Reply via email to