001// Generated by delombok at Fri Oct 04 16:05:59 CEST 2024 002/* 003 * Copyright (c) 2010-2024 Mark Allen, Norbert Bartels. 004 * 005 * Permission is hereby granted, free of charge, to any person obtaining a copy 006 * of this software and associated documentation files (the "Software"), to deal 007 * in the Software without restriction, including without limitation the rights 008 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 009 * copies of the Software, and to permit persons to whom the Software is 010 * furnished to do so, subject to the following conditions: 011 * 012 * The above copyright notice and this permission notice shall be included in 013 * all copies or substantial portions of the Software. 014 * 015 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 016 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 017 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 018 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 019 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 020 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 021 * THE SOFTWARE. 022 */ 023package com.restfb.types.webhook.messaging.nlp; 024 025import java.util.ArrayList; 026import java.util.Collections; 027import java.util.List; 028import java.util.TimeZone; 029import com.restfb.Facebook; 030import com.restfb.JsonMapper; 031import com.restfb.types.AbstractFacebookType; 032 033public class NlpLocation extends BaseNlpEntity { 034 @Facebook 035 private List<Place> resolved = new ArrayList<>(); 036 037 public List<Place> getResolved() { 038 return Collections.unmodifiableList(resolved); 039 } 040 041 042 public static class Place extends AbstractFacebookType { 043 @Facebook 044 private String name; 045 @Facebook 046 private String grain; 047 @Facebook 048 private String type; 049 @Facebook("timezone") 050 private String timezoneAsString; 051 private TimeZone timeZone; 052 @Facebook 053 private Coords coords; 054 @Facebook 055 private External external; 056 057 @JsonMapper.JsonMappingCompleted 058 protected void convertTimezone() { 059 if (timezoneAsString != null) { 060 try { 061 timeZone = TimeZone.getTimeZone(timezoneAsString); 062 } catch (Exception e) { 063 } 064 } 065 // exception during timezone detection is ignored here 066 } 067 068 @java.lang.SuppressWarnings("all") 069 public String getName() { 070 return this.name; 071 } 072 073 @java.lang.SuppressWarnings("all") 074 public void setName(final String name) { 075 this.name = name; 076 } 077 078 @java.lang.SuppressWarnings("all") 079 public String getGrain() { 080 return this.grain; 081 } 082 083 @java.lang.SuppressWarnings("all") 084 public void setGrain(final String grain) { 085 this.grain = grain; 086 } 087 088 @java.lang.SuppressWarnings("all") 089 public String getType() { 090 return this.type; 091 } 092 093 @java.lang.SuppressWarnings("all") 094 public void setType(final String type) { 095 this.type = type; 096 } 097 098 @java.lang.SuppressWarnings("all") 099 public String getTimezoneAsString() { 100 return this.timezoneAsString; 101 } 102 103 @java.lang.SuppressWarnings("all") 104 public void setTimezoneAsString(final String timezoneAsString) { 105 this.timezoneAsString = timezoneAsString; 106 } 107 108 @java.lang.SuppressWarnings("all") 109 public TimeZone getTimeZone() { 110 return this.timeZone; 111 } 112 113 @java.lang.SuppressWarnings("all") 114 public void setTimeZone(final TimeZone timeZone) { 115 this.timeZone = timeZone; 116 } 117 118 @java.lang.SuppressWarnings("all") 119 public Coords getCoords() { 120 return this.coords; 121 } 122 123 @java.lang.SuppressWarnings("all") 124 public void setCoords(final Coords coords) { 125 this.coords = coords; 126 } 127 128 @java.lang.SuppressWarnings("all") 129 public External getExternal() { 130 return this.external; 131 } 132 133 @java.lang.SuppressWarnings("all") 134 public void setExternal(final External external) { 135 this.external = external; 136 } 137 } 138 139 140 public static class Coords extends AbstractFacebookType { 141 @Facebook("lat") 142 private Double latitude; 143 @Facebook("long") 144 private Double longitude; 145 146 @java.lang.SuppressWarnings("all") 147 public Double getLatitude() { 148 return this.latitude; 149 } 150 151 @java.lang.SuppressWarnings("all") 152 public void setLatitude(final Double latitude) { 153 this.latitude = latitude; 154 } 155 156 @java.lang.SuppressWarnings("all") 157 public Double getLongitude() { 158 return this.longitude; 159 } 160 161 @java.lang.SuppressWarnings("all") 162 public void setLongitude(final Double longitude) { 163 this.longitude = longitude; 164 } 165 } 166 167 168 public static class External extends AbstractFacebookType { 169 @Facebook 170 private String geonames; 171 @Facebook 172 private String wikidata; 173 @Facebook 174 private String wikipedia; 175 176 @java.lang.SuppressWarnings("all") 177 public String getGeonames() { 178 return this.geonames; 179 } 180 181 @java.lang.SuppressWarnings("all") 182 public void setGeonames(final String geonames) { 183 this.geonames = geonames; 184 } 185 186 @java.lang.SuppressWarnings("all") 187 public String getWikidata() { 188 return this.wikidata; 189 } 190 191 @java.lang.SuppressWarnings("all") 192 public void setWikidata(final String wikidata) { 193 this.wikidata = wikidata; 194 } 195 196 @java.lang.SuppressWarnings("all") 197 public String getWikipedia() { 198 return this.wikipedia; 199 } 200 201 @java.lang.SuppressWarnings("all") 202 public void setWikipedia(final String wikipedia) { 203 this.wikipedia = wikipedia; 204 } 205 } 206}