Class GeoLocation


  • public class GeoLocation
    extends Object
    Utility class for geographic location.
    Since:
    3.12
    Author:
    nicklas
    • Field Detail

      • region

        private String region
      • country

        private String country
      • latitude

        private Float latitude
      • longitude

        private Float longitude
    • Constructor Detail

      • GeoLocation

        public GeoLocation()
    • Method Detail

      • getLocationFromIp

        public static GeoLocation getLocationFromIp​(String ip)
        Try to convert the given ip address to a location. This will query the 'freegeoip' server specified in base.config. The default is ''. If this has been disabled or if the location is unknown, null is returned.
      • getURLToMap

        public static String getURLToMap​(Float latitude,
                                         Float longitude)
        Get an URL that opens a map marking the given position. A link template must have been configured in base.config (geolocation.maptemplate). Use {LAT} and {LONG} as placeholders for the latitude and longitude.
        Parameters:
        latitude - The latitude of the location
        longitude - The longitude of the location
        Returns:
        A link or null if either of the parameters is null
      • fromJson

        public static GeoLocation fromJson​(org.json.simple.JSONObject json)
        Convert JSON data from freegeoip to a GeoLocation instance. The JSON must contain at least one of "city", "region_name" or "country_name".
        Returns:
        A location object or null if there is no data
      • getCity

        public String getCity()
      • setCity

        public void setCity​(String city)
      • getRegion

        public String getRegion()
      • setRegion

        public void setRegion​(String region)
      • getCountry

        public String getCountry()
      • setCountry

        public void setCountry​(String country)
      • getLatitude

        public Float getLatitude()
      • setLatitude

        public void setLatitude​(Float latitude)
      • getLongitude

        public Float getLongitude()
      • setLongitude

        public void setLongitude​(Float longitude)