You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by an...@apache.org on 2011/06/21 15:28:15 UTC

svn commit: r1137999 - in /incubator/stanbol/trunk/rules: manager/src/main/java/org/apache/stanbol/rules/manager/parse/ refactor/src/main/java/org/apache/stanbol/rules/refactor/api/ refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/ refacto...

Author: anuzzolese
Date: Tue Jun 21 13:28:15 2011
New Revision: 1137999

URL: http://svn.apache.org/viewvc?rev=1137999&view=rev
Log:
Removed NoSuchRecipeException throw from the Refactor.

Modified:
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java
    incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/api/Refactorer.java
    incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/RefactorerImpl.java
    incubator/stanbol/trunk/rules/refactor/src/test/java/org/apache/stanbol/rules/refactor/RefactoringTest.java

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java?rev=1137999&r1=1137998&r2=1137999&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java Tue Jun 21 13:28:15 2011
@@ -63,12 +63,12 @@ public class RuleParserImpl implements R
 
   static KB kReSKB;
 
-  public static KB parse( String inString ) {
+  public static KB parse( String inString ) throws IllegalStateException{
   {
         kReSKB = new KB();
         Reader reader = new StringReader( inString ) ;
-    RuleParserImpl parser = new RuleParserImpl(reader);
-    StringBuffer buffer = new StringBuffer() ;
+        RuleParserImpl parser = new RuleParserImpl(reader);
+    
         try {
                 parser.start( ) ;
         } catch( TokenMgrError e ) {

Modified: incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/api/Refactorer.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/api/Refactorer.java?rev=1137999&r1=1137998&r2=1137999&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/api/Refactorer.java (original)
+++ incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/api/Refactorer.java Tue Jun 21 13:28:15 2011
@@ -58,7 +58,7 @@ public interface Refactorer {
                                                                                  NoSuchRecipeException;
 
     /**
-	 * The refactoring is perfomed by the {@code SemionRefactorer} by invoking this method. The {@code datasetURI} is the URI
+	 * The refactoring is perfomed by the {@code Refactorer} by invoking this method. The {@code datasetURI} is the URI
 	 * of an RDF graph in KReS and the {@code recipe} is the recipe that needs to be applied to RDF graph in order to obtain the refactoring. 
 	 * 
 	 * @param datasetURI {@link UriRef} 
@@ -67,6 +67,6 @@ public interface Refactorer {
 	 * @throws SemionRefactoringException
 	 * @throws NoSuchRecipeException
 	 */
-	public OWLOntology ontologyRefactoring(OWLOntology datasetURI, Recipe recipe) throws RefactoringException, NoSuchRecipeException;
+	public OWLOntology ontologyRefactoring(OWLOntology datasetURI, Recipe recipe) throws RefactoringException;
     
 }

Modified: incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/RefactorerImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/RefactorerImpl.java?rev=1137999&r1=1137998&r2=1137999&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/RefactorerImpl.java (original)
+++ incubator/stanbol/trunk/rules/refactor/src/main/java/org/apache/stanbol/rules/refactor/impl/RefactorerImpl.java Tue Jun 21 13:28:15 2011
@@ -63,6 +63,7 @@ import com.hp.hpl.jena.reasoner.Reasoner
 import com.hp.hpl.jena.sparql.function.FunctionRegistry;
 import com.hp.hpl.jena.sparql.pfunction.PropertyFunctionRegistry;
 import com.hp.hpl.jena.update.UpdateAction;
+import com.hp.hpl.jena.util.FileManager;
 
 /**
  * The RefactorerImpl is the concrete implementation of the Refactorer interface defined in the KReS APIs. A
@@ -482,8 +483,8 @@ public class RefactorerImpl implements R
         }
     }
     
-
-
+    
+    
     private Graph kReSCoreOperation(String query, MGraph mGraph) {
 
         /*

Modified: incubator/stanbol/trunk/rules/refactor/src/test/java/org/apache/stanbol/rules/refactor/RefactoringTest.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/refactor/src/test/java/org/apache/stanbol/rules/refactor/RefactoringTest.java?rev=1137999&r1=1137998&r2=1137999&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/refactor/src/test/java/org/apache/stanbol/rules/refactor/RefactoringTest.java (original)
+++ incubator/stanbol/trunk/rules/refactor/src/test/java/org/apache/stanbol/rules/refactor/RefactoringTest.java Tue Jun 21 13:28:15 2011
@@ -1,6 +1,7 @@
 package org.apache.stanbol.rules.refactor;
 
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 import java.io.InputStream;
 import java.util.Dictionary;
@@ -21,6 +22,7 @@ import org.apache.stanbol.rules.base.api
 import org.apache.stanbol.rules.base.api.RuleStore;
 import org.apache.stanbol.rules.base.api.util.RecipeList;
 import org.apache.stanbol.rules.base.api.util.RuleList;
+import org.apache.stanbol.rules.manager.KB;
 import org.apache.stanbol.rules.manager.changes.RecipeImpl;
 import org.apache.stanbol.rules.manager.parse.RuleParserImpl;
 import org.apache.stanbol.rules.refactor.api.Refactorer;
@@ -240,5 +242,65 @@ public class RefactoringTest {
             fail("Error while refactoring: no such recipe");
         }
     }
+    
+    
+    @Test
+    public void easyRefactoringTest() throws Exception {
+        Dictionary<String,Object> emptyConfig = new Hashtable<String,Object>();
+
+        class SpecialTcManager extends TcManager {
+            public SpecialTcManager(QueryEngine qe, WeightedTcProvider wtcp) {
+                super();
+                bindQueryEngine(qe);
+                bindWeightedTcProvider(wtcp);
+            }
+        }
+
+        QueryEngine qe = new JenaSparqlEngine();
+        WeightedTcProvider wtcp = new SimpleTcProvider();
+        TcManager tcm = new SpecialTcManager(qe, wtcp);
+
+        
+        String recipe = "rule[is(<http://kres.iks-project.eu/ontology.owl#Person>, ?x) -> is(<http://xmlns.com/foaf/0.1/Person>, ?x)]";
+        
+        KB kb = RuleParserImpl.parse(recipe);
+        RuleList ruleList = kb.getkReSRuleList();
+        Recipe actualRecipe = new RecipeImpl(null, null, ruleList);
+        	
+        ONManager onm = new ONManagerImpl(tcm, wtcp, emptyConfig);
+        Refactorer refactorer = new RefactorerImpl(null, new Serializer(), tcm, onm, ruleStore, emptyConfig);
+        try {
+            refactorer.ontologyRefactoring(ontology, actualRecipe);
+        } catch (RefactoringException e) {
+            fail("Error while refactoring.");
+        }
+    }
+    
+    @Test
+    public void brokenRecipeTest() throws Exception {
+        Dictionary<String,Object> emptyConfig = new Hashtable<String,Object>();
+
+        class SpecialTcManager extends TcManager {
+            public SpecialTcManager(QueryEngine qe, WeightedTcProvider wtcp) {
+                super();
+                bindQueryEngine(qe);
+                bindWeightedTcProvider(wtcp);
+            }
+        }
+
+        QueryEngine qe = new JenaSparqlEngine();
+        WeightedTcProvider wtcp = new SimpleTcProvider();
+        TcManager tcm = new SpecialTcManager(qe, wtcp);
+
+        // broken recipe
+        String recipe = "rule[is(<http://kres.iks-project.eu/ontology.owl#Person>) -> is(<http://xmlns.com/foaf/0.1/Person>, ?x)]";
+        
+        KB kb = null;
+        try{
+        	kb = RuleParserImpl.parse(recipe);
+        } catch (IllegalStateException e) {
+			assertTrue(true);
+		}
+    }
 
 }