java: Bump java library versions for next release
[fw/altos] / altoslib / AltosTelemetry.java
index b84455d34d17236ad09dff2326166a63a4d727f4..4d50a05933100b0a7552eb89dca2a0d4fbc0d3e4 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package org.altusmetrum.altoslib_1;
+package org.altusmetrum.altoslib_5;
 
 import java.text.*;
 
@@ -43,6 +43,12 @@ public abstract class AltosTelemetry implements AltosStateUpdate {
        }
 
        public void update_state(AltosState state) {
+               state.set_serial(serial);
+               if (state.state == AltosLib.ao_flight_invalid)
+                       state.set_state(AltosLib.ao_flight_startup);
+               state.set_tick(tick);
+               state.set_rssi(rssi, status);
+               state.set_received_time(received_time);
        }
 
        final static int PKT_APPEND_STATUS_1_CRC_OK             = (1 << 7);
@@ -56,10 +62,12 @@ public abstract class AltosTelemetry implements AltosStateUpdate {
        final static int packet_type_location = 0x05;
        final static int packet_type_satellite = 0x06;
        final static int packet_type_companion = 0x07;
-       final static int packet_type_MM_sensor = 0x08;
-       final static int packet_type_MM_data = 0x09;
-       final static int packet_type_Mini = 0x10;
-       
+       final static int packet_type_mega_sensor = 0x08;
+       final static int packet_type_mega_data = 0x09;
+       final static int packet_type_metrum_sensor = 0x0a;
+       final static int packet_type_metrum_data = 0x0b;
+       final static int packet_type_mini = 0x10;
+
        static AltosTelemetry parse_hex(String hex)  throws ParseException, AltosCRCException {
                AltosTelemetry  telem = null;
 
@@ -87,37 +95,7 @@ public abstract class AltosTelemetry implements AltosStateUpdate {
                /* length, data ..., rssi, status, checksum -- 4 bytes extra */
                switch (bytes.length) {
                case AltosLib.ao_telemetry_standard_len + 4:
-                       int     type = AltosLib.uint8(bytes, 4 + 1);
-/*
-                       switch (type) {
-                       case packet_type_TM_sensor:
-                       case packet_type_Tm_sensor:
-                       case packet_type_Tn_sensor:
-                               telem = new AltosTelemetrySensor(bytes);
-                               break;
-                       case packet_type_configuration:
-                               telem = new AltosTelemetryConfiguration(bytes);
-                               break;
-                       case packet_type_location:
-                               telem = new AltosTelemetryLocation(bytes);
-                               break;
-                       case packet_type_satellite:
-                               telem = new AltosTelemetrySatellite(bytes);
-                               break;
-                       case packet_type_companion:
-                               telem = new AltosTelemetryCompanion(bytes);
-                               break;
-                       case packet_type_MM_sensor:
-                               telem = new AltosTelemetryMegaSensor(bytes);
-                               break;
-                       case packet_type_MM_data:
-                               telem = new AltosTelemetryMegaData(bytes);
-                               break;
-                       default:
-                               telem = new AltosTelemetryRaw(bytes);
-                               break;
-                       }
-*/
+                       telem = AltosTelemetryStandard.parse_hex(bytes);
                        break;
                case AltosLib.ao_telemetry_0_9_len + 4:
                        telem = new AltosTelemetryLegacy(bytes);