Author: anuzzolese
Date: Thu May 12 12:18:33 2011
New Revision: 1102260

URL: http://svn.apache.org/viewvc?rev=1102260&view=rev
Log:
STANBOL-195 Aligned rules.web to the common management of HTTP end-points.

Added:
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/RulesFragment.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RecipeResource.java
      - copied, changed from r1101823, 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRecipe.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleResource.java
      - copied, changed from r1101823, 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRule.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RulesRootResource.java
    incubator/stanbol/trunk/rules/web/src/main/resources/org/
    incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/
    incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/static/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/rulesDescription.ftl
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/index.ftl
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/index.ftl
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/index.ftl
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/index.ftl
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/
    
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/index.ftl
Removed:
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/JerseyEndpoint.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/JerseyEndpointApplication.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/JettyServer.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRecipe.java
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRule.java
Modified:
    incubator/stanbol/trunk/rules/web/pom.xml
    
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleStoreResource.java
    
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RecipeTest.java
    
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RuleTest.java

Modified: incubator/stanbol/trunk/rules/web/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/pom.xml?rev=1102260&r1=1102259&r2=1102260&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/web/pom.xml (original)
+++ incubator/stanbol/trunk/rules/web/pom.xml Thu May 12 12:18:33 2011
@@ -1,190 +1,116 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more 
contributor 
-       license agreements. See the NOTICE file distributed with this work for 
additional 
-       information regarding copyright ownership. The ASF licenses this file 
to 
-       You under the Apache License, Version 2.0 (the "License"); you may not 
use 
-       this file except in compliance with the License. You may obtain a copy 
of 
-       the License at http://www.apache.org/licenses/LICENSE-2.0 Unless 
required 
-       by applicable law or agreed to in writing, software distributed under 
the 
-       License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 
CONDITIONS 
-       OF ANY KIND, either express or implied. See the License for the 
specific 
-       language governing permissions and limitations under the License. -->
 <project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+  <modelVersion>4.0.0</modelVersion>
 
-       <modelVersion>4.0.0</modelVersion>
-
-       <parent>
-               <groupId>org.apache.stanbol</groupId>
-               <artifactId>stanbol-parent</artifactId>
-               <version>0.9-SNAPSHOT</version>
-               <relativePath>../../parent</relativePath>
-       </parent>
-
-       <groupId>org.apache.stanbol</groupId>
-       <artifactId>org.apache.stanbol.rules.web</artifactId>
-       <packaging>bundle</packaging>
-
-       <name>Apache Stanbol Rules Web</name>
-       <description>Set of rst service to deal with rules and 
recipes</description>
-
-       <dependencies>
-
-               <!-- dependencies on other IKS modules -->
-               <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.rdfjson</artifactId>
-                       <version>0.3-incubating-SNAPSHOT</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.clerezza</groupId>
-                       
<artifactId>org.apache.clerezza.jaxrs.rdf.providers</artifactId>
-                       <version>0.13-incubating-SNAPSHOT</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.clerezza</groupId>
-                       
<artifactId>org.apache.clerezza.rdf.jena.serializer</artifactId>
-                       <version>0.9-incubating-SNAPSHOT</version>
-                       <scope>provided</scope>
-               </dependency>
-
-               <!-- specific deps for this project -->
-               <dependency>
-                       <groupId>com.sun.jersey</groupId>
-                       <artifactId>jersey-server</artifactId>
-                       <version>${jersey-version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>com.sun.jersey</groupId>
-                       <artifactId>jersey-core</artifactId>
-                       <version>${jersey-version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>com.sun.jersey</groupId>
-                       <artifactId>jersey-json</artifactId>
-                       <version>${jersey-version}</version>
-                       <exclusions>
-                               <!-- jaxb is now part of java 6 -->
-                               <exclusion>
-                                       <groupId>com.sun.xml.bind</groupId>
-                                       <artifactId>jaxb-api</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>com.sun.xml.bind</groupId>
-                                       <artifactId>jaxb-impl</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <!-- <dependency> <groupId>com.sun.jersey.contribs</groupId> 
<artifactId>jersey-multipart</artifactId> 
-                       <version>1.4</version> </dependency> -->
-               <dependency>
-                       <groupId>javax.servlet</groupId>
-                       <artifactId>servlet-api</artifactId>
-                       <version>2.4</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>freemarker</groupId>
-                       <artifactId>freemarker</artifactId>
-                       <version>2.3.9</version>
-               </dependency>
-               <!-- indirect dependency for freemarker -->
-               <dependency>
-                       <groupId>org.codehaus.jettison</groupId>
-                       <artifactId>jettison</artifactId>
-                       <version>1.2</version>
-               </dependency>
-
-               <!-- servlet container, most useful for the tests -->
-               <dependency>
-                       <groupId>org.mortbay.jetty</groupId>
-                       <artifactId>jetty</artifactId>
-                       <version>6.1.22</version>
-                       <scope>provided</scope>
-               </dependency>
-
-               <!-- generic tax -->
-               <dependency>
-                       <groupId>commons-io</groupId>
-                       <artifactId>commons-io</artifactId>
-                       <version>1.4</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>commons-lang</groupId>
-                       <artifactId>commons-lang</artifactId>
-                       <version>2.4</version>
-                       <scope>provided</scope>
-               </dependency>
-
-               <!-- OSGi tax -->
-               <dependency>
-                       <groupId>org.osgi</groupId>
-                       <artifactId>org.osgi.core</artifactId>
-                       <version>4.1.0</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.osgi</groupId>
-                       <artifactId>org.osgi.compendium</artifactId>
-                       <version>4.1.0</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.felix</groupId>
-                       
<artifactId>org.apache.felix.scr.annotations</artifactId>
-                       <version>1.2.0</version>
-                       <scope>provided</scope>
-               </dependency>
-
-               <!-- for tests -->
-               <dependency>
-                       <groupId>org.mockito</groupId>
-                       <artifactId>mockito-all</artifactId>
-                       <version>1.6</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>com.sun.jersey</groupId>
-                       <artifactId>jersey-client</artifactId>
-                       <version>${jersey-version}</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.ops4j.pax.exam</groupId>
-                       <artifactId>pax-exam</artifactId>
-                       <version>${pax-exam-version}</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.ops4j.pax.exam</groupId>
-                       <artifactId>pax-exam-junit</artifactId>
-                       <version>${pax-exam-version}</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.ops4j.pax.exam</groupId>
-                       <artifactId>pax-exam-container-default</artifactId>
-                       <version>${pax-exam-version}</version>
-                       <scope>test</scope>
-               </dependency>
-
-               <!-- Stanbol deps -->
-               <dependency>
-                       <groupId>org.apache.stanbol</groupId>
-                       
<artifactId>org.apache.stanbol.commons.web.base</artifactId>
-                       <version>${stanbol-version}</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
+  <parent>
+    <groupId>org.apache.stanbol</groupId>
+    <artifactId>stanbol-parent</artifactId>
+    <version>0.9-SNAPSHOT</version>
+    <relativePath>../../../parent</relativePath>
+  </parent>
+
+  <groupId>org.apache.stanbol</groupId>
+  <artifactId>org.apache.stanbol.rules.web</artifactId>
+  <packaging>bundle</packaging>
+
+  <name>Apache Stanbol Rules Web Home</name>
+  <description>Home page of Apache Stanbol Rules HTTP endpoints.</description>
+  <scm>
+    <connection>
+      scm:svn:http://svn.apache.org/repos/asf/incubator/stanbol/trunk/rules/web
+    </connection>
+    <developerConnection>
+      
scm:svn:https://svn.apache.org/repos/asf/incubator/stanbol/trunk/rules/web
+    </developerConnection>
+    <url>http://incubator.apache.org/stanbol/</url>
+  </scm>
+
+  <build>
+    <!-- make it an OSGi bundle -->
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-scr-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+          <instructions>
+            <Export-Package>
+              org.apache.stanbol.rules.web.*
+            </Export-Package>
+            
<Embed-Dependency>*;scope=compile|runtime;inline=false;artifactId=jersey-json|jettison|jackson-core-asl
+            </Embed-Dependency>
+            <Embed-Transitive>true</Embed-Transitive>
+            <Import-Package>
+            !org.apache.felix.http.jetty, 
+            *
+            </Import-Package>
+          </instructions>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>commons-lang</groupId>
+      <artifactId>commons-lang</artifactId>
+    </dependency>
+    
+    <!-- Jersey, servlet and freemarker -->
+    <dependency>
+      <groupId>com.sun.jersey</groupId>
+      <artifactId>jersey-server</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.jersey</groupId>
+      <artifactId>jersey-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.jersey</groupId>
+      <artifactId>jersey-json</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.freemarker</groupId>
+      <artifactId>freemarker</artifactId>
+    </dependency>
+
+    <!-- OSGi tax -->
+    <dependency>
+      <groupId>org.osgi</groupId>
+      <artifactId>org.osgi.core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.osgi</groupId>
+      <artifactId>org.osgi.compendium</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.apache.felix.scr.annotations</artifactId>
+    </dependency>
+
+    <!-- Stanbol -->
+    <dependency>
+      <groupId>org.apache.stanbol</groupId>
+      <artifactId>org.apache.stanbol.commons.web.base</artifactId>
+    </dependency>
+    <dependency>
                        <groupId>org.apache.stanbol</groupId>
                        
<artifactId>org.apache.stanbol.ontologymanager.ontonet</artifactId>
                        <version>${stanbol-version}</version>
@@ -192,134 +118,29 @@
                <dependency>
                        <groupId>org.apache.stanbol</groupId>
                        
<artifactId>org.apache.stanbol.rules.manager</artifactId>
-                       <version>${stanbol-version}</version>
+                       <version>${stanbol-version}</version>                   
                </dependency>
                <dependency>
                        <groupId>org.apache.stanbol</groupId>
                        
<artifactId>org.apache.stanbol.rules.refactor</artifactId>
-                       <version>${stanbol-version}</version>
+                       <version>${stanbol-version}</version>                   
                </dependency>
                <dependency>
                        <groupId>org.apache.stanbol</groupId>
                        <artifactId>org.apache.stanbol.rules.base</artifactId>
-                       <version>${stanbol-version}</version>
+                       <version>${stanbol-version}</version>                   
                </dependency>
                <dependency>
                        <groupId>org.apache.stanbol</groupId>
                        <artifactId>org.apache.stanbol.owl</artifactId>
-                       <version>${stanbol-version}</version>
-               </dependency>
-
-               <!-- OWL deps -->
-               <dependency>
-                       <groupId>com.hp.hpl.jena</groupId>
-                       <artifactId>jena</artifactId>
-                       <version>2.6.2</version>
-                       <scope>provided</scope>
-               </dependency>
-               <dependency>
-                       <groupId>owlapi</groupId>
-                       <artifactId>owlapi</artifactId>
-                       <version>3.0.0</version>
+                       <version>${stanbol-version}</version>                   
                </dependency>
 
-               <!-- Diagnostics deps -->
-               <dependency> <!-- we use log4j 1.2 -->
-                       <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 -->
-               <dependency>
-                       <groupId>junit</groupId>
-                       <artifactId>junit</artifactId>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.slf4j</groupId>
-                       <artifactId>slf4j-log4j12</artifactId>
-                       <scope>test</scope>
-               </dependency>
-
-       </dependencies>
-
-
-       <repositories>
-               <!-- needed for jersey -->
-               <repository>
-                       <id>maven2-repository.dev.java.net</id>
-                       <name>Java.net Repository for Maven</name>
-                       <url>http://download.java.net/maven/2/</url>
-               </repository>
-               <repository>
-                       <id>repository-codehaus</id>
-                       <name>Codehaus maven repository</name>
-                       <url>http://repository.codehaus.org</url>
-               </repository>
-
-               <!-- needed for clerezza SNAPSHOT only -->
-               <repository>
-                       <id>apache repository - snapshot repo</id>
-                       <name>apache repository</name>
-                       
<url>https://repository.apache.org/content/repositories/snapshots</url>
-               </repository>
-       </repositories>
-
-       <build>
-               <!-- make it an OSGi bundle -->
-               <plugins>
-                       <plugin>
-                               <groupId>org.apache.felix</groupId>
-                               <artifactId>maven-bundle-plugin</artifactId>
-                               <extensions>true</extensions>
-                               <configuration>
-                                       <instructions>
-                                               <Export-Package>
-                                                       
org.apache.stanbol.rules.web.*;version=${stanbol-version}
-            </Export-Package>
-                                               
<Embed-Dependency>*;scope=compile|runtime;inline=false;artifactId=jersey-json|jettison|jackson-core-asl
-            </Embed-Dependency>
-                                               
<Embed-Transitive>true</Embed-Transitive>
-                                               <Import-Package>
-                                                       
org.semanticweb.owlapi.*,
-                                                       !javax.servlet.jsp.*,
-                                                       !org.apache.tools.*,
-                                                       !org.mortbay.*,
-                                                       !org.apache.xpath.*,
-                                                       !org.jdom.*,
-                                                       !org.jaxen.*,
-                                                       !org.apache.xml.*,
-                                                       
!org.mozilla.javascript.*,
-                                                       !org.python.*,
-                                                       !org.dom4j.*,
-                                                       !org.apache.log.*,
-                                                       *
-            </Import-Package>
-                                               
<Embed-Dependency>freemarker</Embed-Dependency>
-                                               <_nouses>true</_nouses>
-                                       </instructions>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.felix</groupId>
-                               <artifactId>maven-scr-plugin</artifactId>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-compiler-plugin</artifactId>
-                               <version>2.0.2</version>
-                               <configuration>
-                                       <source>1.6</source>
-                                       <target>1.6</target>
-                               </configuration>
-                       </plugin>
-               </plugins>
-       </build>
+       <!-- Clerezza -->
+       <dependency>
+      <groupId>org.apache.clerezza</groupId>
+      <artifactId>org.apache.clerezza.rdf.core</artifactId>
+    </dependency>
+  </dependencies>
 
 </project>

Added: 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/RulesFragment.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/RulesFragment.java?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/RulesFragment.java
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/RulesFragment.java
 Thu May 12 12:18:33 2011
@@ -0,0 +1,108 @@
+package org.apache.stanbol.rules.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.Reference;
+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.apache.stanbol.rules.base.api.RuleStore;
+import org.apache.stanbol.rules.refactor.api.Refactorer;
+import org.apache.stanbol.rules.web.resources.RefactorResource;
+import org.apache.stanbol.rules.web.resources.RecipeResource;
+import org.apache.stanbol.rules.web.resources.RuleResource;
+import org.apache.stanbol.rules.web.resources.RuleStoreResource;
+import org.apache.stanbol.rules.web.resources.RulesRootResource;
+import org.osgi.framework.BundleContext;
+import org.osgi.service.component.ComponentContext;
+
+import freemarker.cache.ClassTemplateLoader;
+import freemarker.cache.TemplateLoader;
+
+
+@Component(immediate = true, metatype = true)
+@Service(WebFragment.class)
+public class RulesFragment implements WebFragment{
+       
+       private static final String NAME = "rules";
+
+    private static final String STATIC_RESOURCE_PATH = 
"/org/apache/stanbol/rules/web/static";
+
+    private static final String TEMPLATE_PATH = 
"/org/apache/stanbol/rules/web/templates";
+
+    private BundleContext bundleContext;
+    
+    @Reference
+    Refactorer refactorer;
+    
+    @Reference
+    RuleStore ruleStore;
+
+    @Override
+    public String getName() {
+        return NAME;
+    }
+    
+    @Activate
+    protected void activate(ComponentContext ctx) {
+        this.bundleContext = ctx.getBundleContext();
+    }
+
+    @Override
+    public Set<Class<?>> getJaxrsResourceClasses() {
+        Set<Class<?>> classes = new HashSet<Class<?>>();
+        // resources
+        classes.add(RefactorResource.class);
+        classes.add(RecipeResource.class);
+        classes.add(RuleResource.class);
+        classes.add(RuleStoreResource.class);
+        classes.add(RulesRootResource.class);
+        return classes;
+    }
+
+    @Override
+    public Set<Object> getJaxrsResourceSingletons() {
+        return Collections.emptySet();
+    }
+
+    @Override
+    public String getStaticResourceClassPath() {
+        return STATIC_RESOURCE_PATH;
+    }
+
+    @Override
+    public TemplateLoader getTemplateLoader() {
+        return new ClassTemplateLoader(getClass(), TEMPLATE_PATH);
+    }
+
+       @Override
+       public List<LinkResource> getLinkResources() {
+               return Collections.emptyList();
+       }
+
+       @Override
+       public List<ScriptResource> getScriptResources() {
+               return Collections.emptyList();
+       }
+
+       @Override
+       public List<NavigationLink> getNavigationLinks() {
+               List<NavigationLink> links = new ArrayList<NavigationLink>();
+        links.add(new NavigationLink("rules", "/rules", 
"/imports/rulesDescription.ftl", 50));
+        return links;
+       }
+
+       @Override
+       public BundleContext getBundleContext() {
+               return bundleContext;
+       }
+    
+}

Copied: 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RecipeResource.java
 (from r1101823, 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRecipe.java)
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RecipeResource.java?p2=incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RecipeResource.java&p1=incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRecipe.java&r1=1101823&r2=1102260&rev=1102260&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRecipe.java
 (original)
+++ 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RecipeResource.java
 Thu May 12 12:18:33 2011
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
 @Path("/recipe")
 // /{uri:.+}")
 // @ImplicitProduces(MediaType.TEXT_HTML + ";qs=2")
-public class RestRecipe extends BaseStanbolResource {
+public class RecipeResource extends BaseStanbolResource {
 
     protected ONManager onm;
 
@@ -75,40 +75,30 @@ public class RestRecipe extends BaseStan
      * @param servletContext
      *            {To get the context where the REST service is running.}
      */
-    public RestRecipe(@Context ServletContext servletContext) {
+    public RecipeResource(@Context ServletContext servletContext) {
         this.kresRuleStore = (RuleStore) 
servletContext.getAttribute(RuleStore.class.getName());
         this.onm = (ONManager) 
servletContext.getAttribute(ONManager.class.getName());
-//      this.storage = (OntologyStorage) servletContext
-//      .getAttribute(OntologyStorage.class.getName());
-// Contingency code for missing components follows.
-/*
- * FIXME! The following code is required only for the tests. This should
- * be removed and the test should work without this code.
- */
-if (onm == null) {
-    log
-            .warn("No KReSONManager in servlet context. Instantiating 
manually...");
-    onm = new ONManagerImpl(new TcManager(), null,
-            new Hashtable<String, Object>());
-}
-this.storage = onm.getOntologyStore();
-if (storage == null) {
-    log.warn("No OntologyStorage in servlet context. Instantiating 
manually...");
-    storage = new ClerezzaOntologyStorage(new TcManager(),null);
-}
+        //      this.storage = (OntologyStorage) servletContext
+        //      .getAttribute(OntologyStorage.class.getName());
+        // Contingency code for missing components follows.
+
+        /*
+                        * FIXME! The following code is required only for the 
tests. This should
+                        * be removed and the test should work without this 
code.
+                */
+               if (onm == null) {
+                   log.warn("No ONManager in servlet context. Instantiating 
manually...");
+                   onm = new ONManagerImpl(new TcManager(), null,
+                           new Hashtable<String, Object>());
+               }
+               this.storage = onm.getOntologyStore();
+               if (storage == null) {
+                   log.warn("No OntologyStorage in servlet context. 
Instantiating manually...");
+                   storage = new ClerezzaOntologyStorage(new TcManager(),null);
+               }
         if (kresRuleStore == null) {
-            log
-                    .warn("No KReSRuleStore with stored rules and recipes 
found in servlet context. Instantiating manually with default values...");
-//            String iri = 
"http://www.ontologydesignpatterns.org/ont/iks/kres/rmi_config.owl";;
-//            OWLOntology o;
-//            try {
-//                o = 
OWLManager.createOWLOntologyManager().loadOntologyFromOntologyDocument(IRI.create(iri));
-//                this.kresRuleStore = new RuleStoreImpl(onm, new 
Hashtable<String,Object>(), "");
-//                log.debug("PATH TO OWL FILE LOADED: " + 
kresRuleStore.getFilePath());
-//            } catch (OWLOntologyCreationException e) {
-//
-//            }
-            
+            log.warn("No RuleStore with stored rules and recipes found in 
servlet context. Instantiating manually with default values...");
+
             this.kresRuleStore = new RuleStoreImpl(onm, new 
Hashtable<String,Object>(), "");
 
         }

Copied: 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleResource.java
 (from r1101823, 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRule.java)
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleResource.java?p2=incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleResource.java&p1=incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRule.java&r1=1101823&r2=1102260&rev=1102260&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RestRule.java
 (original)
+++ 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleResource.java
 Thu May 12 12:18:33 2011
@@ -63,7 +63,7 @@ import org.slf4j.LoggerFactory;
  * 
  */
 @Path("/rule")
-public class RestRule extends BaseStanbolResource{
+public class RuleResource extends BaseStanbolResource{
 
        protected ONManager onm;
        protected ClerezzaOntologyStorage storage;
@@ -80,7 +80,7 @@ public class RestRule extends BaseStanbo
         * @param servletContext
         *            {To get the context where the REST service is running.}
      */
-    public RestRule(@Context ServletContext servletContext){
+    public RuleResource(@Context ServletContext servletContext){
                this.kresRuleStore = (RuleStore) servletContext
                                .getAttribute(RuleStore.class.getName());
                this.onm = (ONManager) servletContext

Modified: 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleStoreResource.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleStoreResource.java?rev=1102260&r1=1102259&r2=1102260&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleStoreResource.java
 (original)
+++ 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RuleStoreResource.java
 Thu May 12 12:18:33 2011
@@ -12,6 +12,7 @@ import javax.ws.rs.Produces;
 import javax.ws.rs.core.Context;
 import javax.ws.rs.core.Response;
 
+import org.apache.stanbol.commons.web.base.resource.BaseStanbolResource;
 import org.apache.stanbol.rules.manager.changes.RuleStoreImpl;
 
 /**
@@ -19,7 +20,7 @@ import org.apache.stanbol.rules.manager.
  * @author elvio
  */
 @Path("/rulestore")
-public class RuleStoreResource {
+public class RuleStoreResource extends BaseStanbolResource {
     
     private RuleStoreImpl kresRuleStore;
 

Added: 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RulesRootResource.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RulesRootResource.java?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RulesRootResource.java
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/java/org/apache/stanbol/rules/web/resources/RulesRootResource.java
 Thu May 12 12:18:33 2011
@@ -0,0 +1,41 @@
+package org.apache.stanbol.rules.web.resources;
+
+import static javax.ws.rs.core.MediaType.TEXT_HTML;
+
+import javax.servlet.ServletContext;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import org.apache.stanbol.commons.web.base.resource.BaseStanbolResource;
+
+import com.sun.jersey.api.view.ImplicitProduces;
+import com.sun.jersey.api.view.Viewable;
+
+/**
+ * This is the root resource of Apache Stanbol Rules.<br>
+ * It contains an explaination about the HTTP services provided by Stanbol 
Rules.
+ * 
+ * @author andrea.nuzzolese
+ *
+ */
+
+@Path("/rules")
+@ImplicitProduces(MediaType.TEXT_HTML + ";qs=2")
+public class RulesRootResource extends BaseStanbolResource {
+
+       public RulesRootResource(@Context ServletContext servletContext) {
+        
+
+    }
+       
+       @GET
+    @Produces(TEXT_HTML)
+    public Response get() {
+        return Response.ok(new Viewable("index", this), TEXT_HTML).build();
+    }
+       
+}

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/rulesDescription.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/rulesDescription.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/rulesDescription.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/imports/rulesDescription.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1,2 @@
+This is a the implementation of Stanbol Rules which can be used both for 
<strong>reasoning</strong>
+and <strong>refactoring</strong>
\ No newline at end of file

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/index.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/index.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/index.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RefactorResource/index.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1,2 @@
+This is a the implementation of Stanbol Rules which can be used both for 
<strong>reasoning</strong>
+and <strong>refactoring</strong>
\ No newline at end of file

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/index.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/index.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/index.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRecipe/index.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1,2 @@
+This is a the implementation of Stanbol Rules which can be used both for 
<strong>reasoning</strong>
+and <strong>refactoring</strong>
\ No newline at end of file

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/index.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/index.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/index.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RestRule/index.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1,2 @@
+This is a the implementation of Stanbol Rules which can be used both for 
<strong>reasoning</strong>
+and <strong>refactoring</strong>
\ No newline at end of file

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/index.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/index.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/index.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RuleStoreResource/index.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1,2 @@
+This is a the implementation of Stanbol Rules which can be used both for 
<strong>reasoning</strong>
+and <strong>refactoring</strong>
\ No newline at end of file

Added: 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/index.ftl
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/index.ftl?rev=1102260&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/index.ftl
 (added)
+++ 
incubator/stanbol/trunk/rules/web/src/main/resources/org/apache/stanbol/rules/web/templates/org/apache/stanbol/rules/web/resources/RulesRootResource/index.ftl
 Thu May 12 12:18:33 2011
@@ -0,0 +1 @@
+Welcome to <b>Apache Stanbol Rules</b>
\ No newline at end of file

Modified: 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RecipeTest.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RecipeTest.java?rev=1102260&r1=1102259&r2=1102260&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RecipeTest.java
 (original)
+++ 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RecipeTest.java
 Thu May 12 12:18:33 2011
@@ -5,25 +5,13 @@
 
 package org.apache.stanbol.rules.web;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
-
-import org.junit.After;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import com.sun.jersey.api.client.Client;
-import com.sun.jersey.api.client.ClientResponse;
-import com.sun.jersey.api.client.WebResource;
 
 /**
  *
  * @author elvio
  */
 public class RecipeTest {
-
+/*
     public static final int __PORT = 9999;
     public static final String __TEST_URI = "http://localhost:"; + __PORT + "/";
     public static final String _ROOT_URI = __TEST_URI + "recipe";
@@ -61,9 +49,12 @@ public class RecipeTest {
     public void tearDown() {
     }
 
+*/
+       
     /**
      * Test of getRecipe method, of class GetRecipe.
      */
+       /*
     @Test
     public void testGetRecipe() {
         WebResource webresget = 
webres.path("http://kres.iks-project.eu/ontology/meta/rmi_config.owl#ProvaParentRecipe";);
@@ -78,10 +69,11 @@ public class RecipeTest {
         else
             fail("Some errors occurred");
     }
-
+*/
     /**
      * Test of getRecipe method, of class GetRecipe.
      */
+       /*
     @Test
     public void testGetAllRecipes() {
 
@@ -95,7 +87,7 @@ public class RecipeTest {
         else
             fail("Some errors occurred");
     }
-
+*/
 //   /**
 //     * Test of getRecipe method, of class GetRecipe.
 //     */

Modified: 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RuleTest.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RuleTest.java?rev=1102260&r1=1102259&r2=1102260&view=diff
==============================================================================
--- 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RuleTest.java
 (original)
+++ 
incubator/stanbol/trunk/rules/web/src/test/java/org/apache/stanbol/rules/web/RuleTest.java
 Thu May 12 12:18:33 2011
@@ -5,24 +5,13 @@
 
 package org.apache.stanbol.rules.web;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
-
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import com.sun.jersey.api.client.Client;
-import com.sun.jersey.api.client.ClientResponse;
-import com.sun.jersey.api.client.WebResource;
-
 /**
  *
  * @author elvio
  */
 public class RuleTest {
 
+       /*
     public RuleTest() {
     }
 
@@ -50,9 +39,11 @@ public class RuleTest {
 
     }
 
+*/
     /**
      * Test of getRule method, of class Rule.
      */
+       /*
     @Test
     public void testGetRule() {
         System.err.println("::::::::::::::::::::::::::::::::::::::::::::::::");
@@ -72,10 +63,11 @@ public class RuleTest {
             fail("Some errors occurred");
         }
     }
-
+*/
     /**
      * Test of getRecipe method, of class GetRecipe.
      */
+       /*
     @Test
     public void testGetAllRules() {
         System.err.println("::::::::::::::::::::::::::::::::::::::::::::::::");
@@ -95,7 +87,7 @@ public class RuleTest {
             fail("Some errors occurred");
         }
     }
-
+*/
 //     /**
 //     * Test of addRuleToRecipe method, of class Rule.
 //     */


Reply via email to