/** * Copyright 2015 ArcBees Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.arcbees.gaestudio.client.application.entity.editor; import com.google.gwt.json.client.JSONNumber; import com.google.gwt.json.client.JSONObject; public class GeoPoint { private static final String LATITUDE = "latitude"; private static final String LONGITUDE = "longitude"; private Float latitude; private Float longitude; public GeoPoint( Float latitude, Float longitude) { this.latitude = latitude; this.longitude = longitude; } public static GeoPoint fromJsonObject(JSONObject jsonObject) { Float latitude = (float) jsonObject.get(LATITUDE).isNumber().doubleValue(); Float longitude = (float) jsonObject.get(LONGITUDE).isNumber().doubleValue(); return new GeoPoint(latitude, longitude); } public JSONObject asJsonObject() { JSONObject object = new JSONObject(); object.put(LATITUDE, new JSONNumber(getLatitude())); object.put(LONGITUDE, new JSONNumber(getLongitude())); return object; } public Float getLatitude() { return latitude; } public void setLatitude(Float latitude) { this.latitude = latitude; } public Float getLongitude() { return longitude; } public void setLongitude(Float longitude) { this.longitude = longitude; } }