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