diff --git a/CHANGELOG.md b/CHANGELOG.md index c0ea1f9..9d230a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +## Version 1.2.0 *(July 2nd 2018)* + +* Parsing WayPoint description. + ## Version 1.1.2 *(June 26th 2018)* * Fix to prevent endless loop in case of malformed GPX track (thanks to D. Elliot!) diff --git a/README.md b/README.md index 0fb5985..bfa44f4 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,8 @@ Download Grab via Gradle: ```groovy -api 'io.ticofab.androidgpxparser:parser:1.1.2' -// compile 'io.ticofab.androidgpxparser:parser:1.1.2' - for gradle plugin < 3.0.0 +api 'io.ticofab.androidgpxparser:parser:1.2.0' +// compile 'io.ticofab.androidgpxparser:parser:1.2.0' - for gradle plugin < 3.0.0 ``` Dependencies diff --git a/app/build.gradle b/app/build.gradle index 9611933..963bb4a 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { minSdkVersion 14 targetSdkVersion 27 versionCode 2 - versionName "1.1.2" + versionName "1.2.0" } buildTypes { release { diff --git a/parser/build.gradle b/parser/build.gradle index 8fbd56b..ffcc6a1 100644 --- a/parser/build.gradle +++ b/parser/build.gradle @@ -13,7 +13,7 @@ ext { siteUrl = 'https://github.com/ticofab/android-gpx-parser' gitUrl = 'https://github.com/ticofab/android-gpx-parser.git' - libraryVersion = '1.1.2' + libraryVersion = '1.2.0' developerId = 'ticofab' developerName = 'Fabio Tiriticco' @@ -31,8 +31,8 @@ android { defaultConfig { minSdkVersion 14 targetSdkVersion 27 - versionCode 6 - versionName "1.1.2" + versionCode 7 + versionName "1.2.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { @@ -46,7 +46,7 @@ android { dependencies { // JodaTime for Android // https://github.com/dlew/joda-time-android - implementation 'net.danlew:android.joda:2.9.9.2' + implementation 'net.danlew:android.joda:2.9.9.4' androidTestImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support:support-annotations:27.1.1' diff --git a/parser/src/androidTest/java/io/ticofab/androidgpxparser/parser/GPXParserTest.java b/parser/src/androidTest/java/io/ticofab/androidgpxparser/parser/GPXParserTest.java index d6c5a56..c96b8ea 100644 --- a/parser/src/androidTest/java/io/ticofab/androidgpxparser/parser/GPXParserTest.java +++ b/parser/src/androidTest/java/io/ticofab/androidgpxparser/parser/GPXParserTest.java @@ -47,6 +47,8 @@ public void testGarminBaseCampExport() throws IOException, XmlPullParserExceptio assertEquals(3, gpx.getWayPoints().size()); assertEquals(1, gpx.getRoutes().size()); assertEquals(7, gpx.getRoutes().get(0).getRoutePoints().size()); + assertEquals(" A92", gpx.getWayPoints().get(0).getDesc()); + assertEquals("Erding Ab", gpx.getWayPoints().get(2).getDesc()); } @Test(expected = XmlPullParserException.class) diff --git a/parser/src/main/java/io/ticofab/androidgpxparser/parser/GPXParser.java b/parser/src/main/java/io/ticofab/androidgpxparser/parser/GPXParser.java index 439fad1..2426ad6 100644 --- a/parser/src/main/java/io/ticofab/androidgpxparser/parser/GPXParser.java +++ b/parser/src/main/java/io/ticofab/androidgpxparser/parser/GPXParser.java @@ -264,6 +264,9 @@ private Point readPoint(Point.Builder builder, XmlPullParser parser, String tagN case TAG_NAME: builder.setName(readName(parser)); break; + case TAG_DESC: + builder.setDesc(readDesc(parser)); + break; case TAG_ELEVATION: builder.setElevation(readElevation(parser)); break; diff --git a/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Point.java b/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Point.java index 0d87c14..d4a99e4 100644 --- a/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Point.java +++ b/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Point.java @@ -4,14 +4,14 @@ /** * A point containing a location, time and name. - * */ public abstract class Point { private final Double mLatitude; private final Double mLongitude; private final Double mElevation; private final DateTime mTime; - private String mName; + private final String mName; + private final String mDesc; Point(Builder builder) { mLatitude = builder.mLatitude; @@ -19,6 +19,7 @@ public abstract class Point { mElevation = builder.mElevation; mTime = builder.mTime; mName = builder.mName; + mDesc = builder.mDesc; } /** @@ -53,12 +54,20 @@ public String getName() { return mName; } + /** + * @return the description + */ + public String getDesc() { + return mDesc; + } + public static abstract class Builder { private Double mLatitude; private Double mLongitude; private Double mElevation; private DateTime mTime; private String mName; + private String mDesc; public Builder setLatitude(Double latitude) { mLatitude = latitude; @@ -80,8 +89,13 @@ public Builder setTime(DateTime time) { return this; } - public Builder setName(String mName) { - this.mName = mName; + public Builder setName(String mame) { + mName = mame; + return this; + } + + public Builder setDesc(String desc) { + mDesc = desc; return this; } diff --git a/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Route.java b/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Route.java index ff038a8..b88dbc7 100644 --- a/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Route.java +++ b/parser/src/main/java/io/ticofab/androidgpxparser/parser/domain/Route.java @@ -72,38 +72,38 @@ public Builder setRoutePoints(List routePoints) { return this; } - public Builder setRouteName(String mRouteName) { - this.mRouteName = mRouteName; + public Builder setRouteName(String routeName) { + mRouteName = routeName; return this; } - public Builder setRouteDesc(String mRouteDesc) { - this.mRouteDesc = mRouteDesc; + public Builder setRouteDesc(String routeDesc) { + mRouteDesc = routeDesc; return this; } - public Builder setRouteCmt(String mRouteCmt) { - this.mRouteCmt = mRouteCmt; + public Builder setRouteCmt(String routeCmt) { + mRouteCmt = routeCmt; return this; } - public Builder setRouteSrc(String mRouteSrc) { - this.mRouteSrc = mRouteSrc; + public Builder setRouteSrc(String routeSrc) { + mRouteSrc = routeSrc; return this; } - public Builder setRouteNumber(Integer mRouteNumber) { - this.mRouteNumber = mRouteNumber; + public Builder setRouteNumber(Integer routeNumber) { + mRouteNumber = routeNumber; return this; } - public Builder setRouteLink(Link mRouteLink) { - this.mRouteLink = mRouteLink; + public Builder setRouteLink(Link routeLink) { + mRouteLink = routeLink; return this; } - public Builder setRouteType(String mRouteType) { - this.mRouteType = mRouteType; + public Builder setRouteType(String routeType) { + mRouteType = routeType; return this; }