From cf2027fce7828edce0aa59b46ce3df7d17eca793 Mon Sep 17 00:00:00 2001 From: Vyacheslav Blinov Date: Tue, 31 Mar 2015 11:52:30 +0300 Subject: [PATCH] Fix XEP-0080 geoloc extensions elements formating XEP-0080 states that lon,lat,error,alt,accuracy,bearing and speed are decimal values, and thus should either be present as decimal, or not present at all (as they are optional elements). Usage of String.valueOf(value) in code lead to creating a "null" string in case number was not present, thus creating an element with "null" content, which is not a valid decimal value. --- .../smackx/geoloc/packet/GeoLocation.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java index d868e7a8f..0bda4585e 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/packet/GeoLocation.java @@ -211,24 +211,24 @@ public class GeoLocation implements Serializable, ExtensionElement { public CharSequence toXML() { XmlStringBuilder xml = new XmlStringBuilder(this); xml.rightAngleBracket(); - xml.optElement("accuracy", String.valueOf(accuracy)); - xml.optElement("alt", String.valueOf(alt)); + xml.optElement("accuracy", accuracy); + xml.optElement("alt", alt); xml.optElement("area", area); - xml.optElement("bearing", String.valueOf(bearing)); + xml.optElement("bearing", bearing); xml.optElement("building", building); xml.optElement("country", country); xml.optElement("countrycode", countryCode); xml.optElement("datum", datum); xml.optElement("description", description); - xml.optElement("error", String.valueOf(error)); + xml.optElement("error", error); xml.optElement("floor", floor); - xml.optElement("lat", String.valueOf(lat)); + xml.optElement("lat", lat); xml.optElement("locality", locality); - xml.optElement("lon", String.valueOf(lon)); + xml.optElement("lon", lon); xml.optElement("postalcode", postalcode); xml.optElement("region", region); xml.optElement("room", room); - xml.optElement("speed", String.valueOf(speed)); + xml.optElement("speed", speed); xml.optElement("street", street); xml.optElement("text", text); xml.optElement("timestamp", timestamp);