[jboss-svn-commits] JBL Code SVN: r23270 - labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Oct 2 13:18:29 EDT 2008
Author: ge0ffrey
Date: 2008-10-02 13:18:29 -0400 (Thu, 02 Oct 2008)
New Revision: 23270
Modified:
labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/SolutionDao.java
labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/XstreamSolutionDaoImpl.java
Log:
smoke test voor NQueens
Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/SolutionDao.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/SolutionDao.java 2008-10-02 17:15:31 UTC (rev 23269)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/SolutionDao.java 2008-10-02 17:18:29 UTC (rev 23270)
@@ -1,6 +1,7 @@
package org.drools.solver.examples.common.persistence;
import java.io.File;
+import java.io.InputStream;
import org.drools.solver.core.solution.Solution;
@@ -10,6 +11,7 @@
public interface SolutionDao {
Solution readSolution(File file);
+ Solution readSolution(InputStream in);
void writeSolution(Solution solution, File file);
}
Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/XstreamSolutionDaoImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/XstreamSolutionDaoImpl.java 2008-10-02 17:15:31 UTC (rev 23269)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/persistence/XstreamSolutionDaoImpl.java 2008-10-02 17:18:29 UTC (rev 23270)
@@ -8,6 +8,7 @@
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.Writer;
+import java.io.InputStream;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.converters.reflection.FieldDictionary;
@@ -41,7 +42,7 @@
logger.info("Loaded: {}", file);
return solution;
} catch (IOException e) {
- throw new IllegalArgumentException("Could not read: " + file, e);
+ throw new IllegalArgumentException("Could not read file: " + file, e);
} finally {
if (reader != null) {
try {
@@ -53,6 +54,26 @@
}
}
+ public Solution readSolution(InputStream in) {
+ Reader reader = null;
+ try {
+ // xStream.fromXml(InputStream) does not use UTF-8
+ reader = new InputStreamReader(in, "UTF-8");
+ Solution solution = (Solution) xStream.fromXML(reader);
+ return solution;
+ } catch (IOException e) {
+ throw new IllegalArgumentException("Could not read from InputStream: " + in, e);
+ } finally {
+ if (reader != null) {
+ try {
+ reader.close();
+ } catch (IOException e) {
+ logger.warn("Problem closing InputStream (" + in + ")", e);
+ }
+ }
+ }
+ }
+
public void writeSolution(Solution solution, File file) {
Writer writer = null;
try {
More information about the jboss-svn-commits
mailing list