You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bi...@apache.org on 2009/05/24 02:02:54 UTC
svn commit: r778071 - in /commons/proper/math/trunk/src:
java/org/apache/commons/math/linear/ test/org/apache/commons/math/linear/
Author: billbarker
Date: Sun May 24 00:02:54 2009
New Revision: 778071
URL: http://svn.apache.org/viewvc?rev=778071&view=rev
Log:
Serializable changes for RealMatrix
Modified:
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/AbstractRealMatrix.java
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/OpenMapRealMatrix.java
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealMatrix.java
commons/proper/math/trunk/src/test/org/apache/commons/math/linear/DenseRealMatrixTest.java
commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealMatrixImplTest.java
commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealMatrixTest.java
Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/linear/AbstractRealMatrix.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/linear/AbstractRealMatrix.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/java/org/apache/commons/math/linear/AbstractRealMatrix.java (original)
+++ commons/proper/math/trunk/src/java/org/apache/commons/math/linear/AbstractRealMatrix.java Sun May 24 00:02:54 2009
@@ -34,11 +34,9 @@
* @version $Revision$ $Date$
* @since 2.0
*/
-public abstract class AbstractRealMatrix implements RealMatrix, Serializable {
+public abstract class AbstractRealMatrix implements RealMatrix {
+
- /** Serializable version identifier. */
- private static final long serialVersionUID = -3665653040524315561L;
-
/** Cached LU solver.
* @deprecated as of release 2.0, since all methods using this are deprecated
*/
Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/linear/OpenMapRealMatrix.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/linear/OpenMapRealMatrix.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/java/org/apache/commons/math/linear/OpenMapRealMatrix.java (original)
+++ commons/proper/math/trunk/src/java/org/apache/commons/math/linear/OpenMapRealMatrix.java Sun May 24 00:02:54 2009
@@ -17,6 +17,8 @@
package org.apache.commons.math.linear;
+import java.io.Serializable;
+
import org.apache.commons.math.util.OpenIntToDoubleHashMap;
/**
@@ -25,7 +27,7 @@
* @version $Revision$ $Date$
* @since 2.0
*/
-public class OpenMapRealMatrix extends AbstractRealMatrix implements SparseRealMatrix {
+public class OpenMapRealMatrix extends AbstractRealMatrix implements SparseRealMatrix, Serializable {
/** Serializable version identifier. */
private static final long serialVersionUID = -5962461716457143437L;
Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealMatrix.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealMatrix.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealMatrix.java (original)
+++ commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealMatrix.java Sun May 24 00:02:54 2009
@@ -32,7 +32,7 @@
*
* @version $Revision$ $Date$
*/
-public interface RealMatrix extends AnyMatrix, Serializable {
+public interface RealMatrix extends AnyMatrix {
/**
* Create a new RealMatrix of the same type as the instance with the supplied
Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/linear/DenseRealMatrixTest.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/linear/DenseRealMatrixTest.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/test/org/apache/commons/math/linear/DenseRealMatrixTest.java (original)
+++ commons/proper/math/trunk/src/test/org/apache/commons/math/linear/DenseRealMatrixTest.java Sun May 24 00:02:54 2009
@@ -16,6 +16,12 @@
*/
package org.apache.commons.math.linear;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
import java.util.Arrays;
import java.util.Random;
@@ -1156,6 +1162,26 @@
}
+ public void testSerial() {
+ try {
+ File test = File.createTempFile("DRM",".ser");
+ ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(test));
+ DenseRealMatrix m = new DenseRealMatrix(testData);
+ out.writeObject(m);
+ out.close();
+ ObjectInputStream in = new ObjectInputStream(new FileInputStream(test));
+ DenseRealMatrix nm = (DenseRealMatrix)in.readObject();
+ in.close();
+ test.delete();
+ assertEquals(m,nm);
+
+ } catch (IOException e) {
+ fail("IOException: "+e);
+ } catch (ClassNotFoundException e) {
+ fail("Can't happen: "+e);
+ }
+ }
+
private static class SetVisitor extends DefaultRealMatrixChangingVisitor {
private static final long serialVersionUID = 1773444180892369386L;
@Override
Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealMatrixImplTest.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealMatrixImplTest.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealMatrixImplTest.java (original)
+++ commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealMatrixImplTest.java Sun May 24 00:02:54 2009
@@ -16,6 +16,13 @@
*/
package org.apache.commons.math.linear;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
@@ -933,6 +940,27 @@
}
}
+
+ public void testSerial() {
+ try {
+ File test = File.createTempFile("RMI",".ser");
+ ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(test));
+ RealMatrixImpl m = new RealMatrixImpl(testData);
+ out.writeObject(m);
+ out.close();
+ ObjectInputStream in = new ObjectInputStream(new FileInputStream(test));
+ RealMatrixImpl nm = (RealMatrixImpl)in.readObject();
+ in.close();
+ test.delete();
+ assertEquals(m,nm);
+
+ } catch (IOException e) {
+ fail("IOException: "+e);
+ } catch (ClassNotFoundException e) {
+ fail("Can't happen: "+e);
+ }
+ }
+
private static class SetVisitor extends DefaultRealMatrixChangingVisitor {
private static final long serialVersionUID = -5082825244208703349L;
Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealMatrixTest.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealMatrixTest.java?rev=778071&r1=778070&r2=778071&view=diff
==============================================================================
--- commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealMatrixTest.java (original)
+++ commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealMatrixTest.java Sun May 24 00:02:54 2009
@@ -16,6 +16,13 @@
*/
package org.apache.commons.math.linear;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
@@ -641,6 +648,26 @@
}
+ public void testSerial() {
+ try {
+ File test = File.createTempFile("OMRM",".ser");
+ ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(test));
+ OpenMapRealMatrix m = createSparseMatrix(testData);
+ out.writeObject(m);
+ out.close();
+ ObjectInputStream in = new ObjectInputStream(new FileInputStream(test));
+ OpenMapRealMatrix nm = (OpenMapRealMatrix)in.readObject();
+ in.close();
+ test.delete();
+ assertEquals(m,nm);
+
+ } catch (IOException e) {
+ fail("IOException: "+e);
+ } catch (ClassNotFoundException e) {
+ fail("Can't happen: "+e);
+ }
+ }
+
// --------------- -----------------Protected methods
/** verifies that two matrices are close (1-norm) */
@@ -670,4 +697,6 @@
}
return matrix;
}
+
+
}