Marine Api Versions Save

Java Marine API - NMEA 0183 library for Java

0.12.0

1 year ago

0.11.0

4 years ago

0.10.0

6 years ago

0.9.0

8 years ago

CHANGES

  • SentenceValidator now accepts different combinations of newline and carriage return characters.
  • GSV sentence may now contain less than four satellite infos.
  • Date class; fixed month index off-by-one in toDate() method.
  • SentenceReader; I/O exceptions are logged only when ExceptionHandler is not set. InputStream is now checked with ready() before reading.
  • SentenceParser; hasValue() now checks fields content explicitly.
  • DPTSentence; getMaximum() return value changed from int to double.
  • XDRSentence; fixed fields indexing bug in getMeasurements().
  • TalkerId enum; added ids BD, GA, GB, GI, GQ, IR, QZ, RC and VM.

NEW FEATURES

  • Support for VBW sentences; dual ground/water speed.
  • Support for MDA sentences; meteorological composite.
  • Support for MWD sentences; wind speed and direction.
  • SentenceReader; DataListener interface for receiving any non-NMEA data that has been read from current data source.
  • SentenceReader; read interval is now configurable.
  • SentenceFactory; listParser() method for listing registered parsers.
  • SentenceFactory; reset() method for resetting the factory in initial state.

0.8.1

9 years ago

Bug-fix release, ExceptionListener visibility was accidentally set to package-only. Fixed back to public.

0.8.0

9 years ago

NEW FEATURES

  • Support for RSA sentences; rudder angle in degrees.
  • Support for XTE sentences; measured cross-track error.
  • Support for VDR sentences; set and drift.
  • Support for TTM sentences; tracked target message.
  • Support for DTM sentences; datum reference.
  • Support for RPM sentences; engine or shaft revolutions.
  • Support for VLW sentences; distance traveled through water.
  • Support for APB sentences; autopilot destination, bearings and heading.
  • SentenceReader; exception listener for detecting i/o errors.

CHANGES

  • TalkerId; added ids 'GL' and 'GN' for GLONASS sentences.
  • SentenceReader; UDP packet may now contain multiple lines/sentences.
  • SentenceParser; setFieldCount() now preserves existing/remaining values.
  • RMCParser, VTGParser; if optional FAA mode was omitted, sentence field count is now adjusted before setting the mode.
  • SentenceValidator; sentences including line terminator <CR><LF> did not pass validation. Fixed by adding optional newline in sentence format regexp.

0.7.0

10 years ago

New Features

  • AbstractSentenceListener; base class for creating listeners with automatic sentence type resolving and casting.
  • Support for ROT sentences (vessel's rate of turn)

Changes

  • SentenceId; fixed a bug in parseStr(), sentence id length was assumed to be exactly three chars. This prevented parsing proprietary sentences that may have ids of different lenghts.
  • PositionEvent; fixed speed returned in knots instead of km/h.
  • TalkerId; added new id 'CP' (Channel Pilot).
  • SentenceReader; refactored and removed duplicate code.
  • Javadoc improvements

0.6.0

10 years ago

New features

  • UDP/DatagramSocket support in SentenceReader.
  • SatelliteInfoProvider; reports all GPS satellite information in single event.
  • SentenceParser; reset() and setFieldCount(int) methods for resetting and adjusting the number of data fields.
  • PositionParser; parsePosition(Position) and setPositionValues(Position) methods.
  • Date, Time; added support for time zones and ISO 8601 formatting.
  • ZDASentence; setTimeAndLocalZone(Time t) for setting time and offset.
  • Support for XDR sentences; transducer measurements.

Changes

  • SentenceReader; refactored to better support diffrent data sources, including some performance tweaks (should take less CPU now). When dispatching events, all exceptions thrown by SentenceListeners are now logged using the default java.util.logging.Logger on level WARNING.
  • SentenceValidator; performance tweaks in regular expressions. Sentence length is no longer strictly checked, sentence IDs may contain now 3-10 chars.
  • SentenceParser; due to changes in SentenceValidator, toSentence() does not automatically check sentence length anymore. Added toSentence(int) method for validating the length.
  • TPVProvider and related classes renamed to PositionProvider.
  • GSASentence; getSatellitesIds() renamed to getSatelliteIds().
  • Sentence; removed unused constant ADDRESS_FIELD.
  • Date, Time; fractions of second are now handled. Moved common date/time parsing and formatting in Date and Time classes. Fixed a bug in Time.toDate() causing incorrect hour of day.
  • GLL, GGA, RMC and ZDA parsers; fractions of second are now parsed and formatted in timestamp fields. When setting/formatting values, three decimals is used regardless of given precision (padded with zeros as needed).
  • Position; refactored and removed explicit hemisphere indicators. Hemispheres are now handled more automatically and indicated by positive and negative values of latitude and longitude. Affected classes are PositionParser, GGAParser, GLLParser, RMAParser, RMCParser, WPLParser and Waypoint.