1 package net.sf.openrocket.android.db;
\r
3 import java.io.ByteArrayInputStream;
\r
4 import java.io.ByteArrayOutputStream;
\r
5 import java.io.ObjectInputStream;
\r
6 import java.io.ObjectOutputStream;
\r
8 import net.sf.openrocket.motor.Motor;
\r
9 import net.sf.openrocket.util.Coordinate;
\r
11 abstract class ConversionUtils {
\r
13 static double[] stringToDelays( String value ) {
\r
14 if (value == null || "".equals(value) ) {
\r
15 return new double[0];
\r
17 String[] parts = value.split(",");
\r
18 double[] values = new double[parts.length];
\r
19 for( int i =0; i<parts.length; i++ ) {
\r
20 String p = parts[i];
\r
21 if ( "P".equals(p) ) {
\r
22 values[i] = Motor.PLUGGED;
\r
24 double d = Double.parseDouble(p);
\r
31 static String delaysToString( double[] delays ) {
\r
32 StringBuilder s = new StringBuilder();
\r
33 boolean first = true;
\r
34 for( double d:delays ) {
\r
40 if ( d == Motor.PLUGGED ) {
\r
43 s.append(Math.round(d));
\r
46 return s.toString();
\r
49 static double[] deserializeArrayOfDouble( byte[] bytes ) throws Exception {
\r
50 double[] data = null;
\r
51 if (bytes != null ) {
\r
52 ObjectInputStream is = new ObjectInputStream( new ByteArrayInputStream(bytes));
\r
53 data = (double[]) is.readObject();
\r
58 static byte[] serializeArrayOfDouble( double[] data ) throws Exception {
\r
60 byte[] serObj = null;
\r
61 if ( data != null ) {
\r
62 ByteArrayOutputStream b = new ByteArrayOutputStream();
\r
63 ObjectOutputStream os = new ObjectOutputStream(b);
\r
64 os.writeObject(data);
\r
66 serObj = b.toByteArray();
\r
71 static Coordinate[] deserializeArrayOfCoordinate( byte[] bytes ) throws Exception {
\r
72 Coordinate[] data = null;
\r
73 if (bytes != null ) {
\r
74 ObjectInputStream is = new ObjectInputStream( new ByteArrayInputStream(bytes));
\r
75 data = (Coordinate[]) is.readObject();
\r
80 static byte[] serializeArrayOfCoordinate( Coordinate[] data ) throws Exception {
\r
82 byte[] serObj = null;
\r
83 if ( data != null ) {
\r
84 ByteArrayOutputStream b = new ByteArrayOutputStream();
\r
85 ObjectOutputStream os = new ObjectOutputStream(b);
\r
86 os.writeObject(data);
\r
88 serObj = b.toByteArray();
\r