public void setResponse(GeocodeResponse response) { if (response != null) { this.formattedAddress = response.getFormattedAddress(); this.latitude = response.getLatitude(); this.longitude = response.getLongitude(); this.geocodeLevel = response.getGeocodeLevel(); } }
public void testForward() throws Exception { Log log = testForwardLog; GeocodeClient client = new ClientFactory(baseUrl).getGeocode(); GeocodeInvoker invoker = GeocodeInvoker.builder() .address("1600 Amphitheatre Parkway, Mountain View, CA") .sensor(false) .build(); GeocodeResponse response = null; try { long start = System.currentTimeMillis(); response = invoker.geocode(client); long end = System.currentTimeMillis(); log.trace(String.format("Forward geocode took %s ms", end - start)); } catch (Exception e) { log.error(e); fail(); } assertNotNull(response); assertNotNull(response.getStatus()); assertEquals(GeocodeStatus.OK, response.getStatus()); assertNotNull(response.getResults()); assertEquals(1, response.getResults().size()); GeocodeResult result1 = response.getResults().get(0); assertNotNull(result1.getTypes()); assertEquals(Arrays.asList(GeocodeResultType.STREET_ADDRESS), result1.getTypes()); assertEquals( "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", result1.getFormattedAddress()); assertNotNull(result1.getAddressComponents()); assertEquals(8, result1.getAddressComponents().size()); GeocodeAddressComponent addressComponent1 = result1.getAddressComponents().get(0); assertNotNull(addressComponent1.getTypes()); assertEquals( Arrays.asList(GeocodeAddressComponentType.STREET_NUMBER), addressComponent1.getTypes()); assertNotNull(addressComponent1.getLongName()); assertEquals("1600", addressComponent1.getLongName()); assertNotNull(addressComponent1.getShortName()); assertEquals("1600", addressComponent1.getShortName()); GeocodeGeometry geometry = result1.getGeometry(); assertNotNull(geometry); assertNotNull(geometry.getLocationType()); assertEquals(GeocodeLocationType.ROOFTOP, geometry.getLocationType()); validateLocation(geometry.getLocation(), 37.4227820D, -122.0850990D); validateFrame(geometry.getViewPort(), 37.4196344D, -122.0882466D, 37.4259296D, -122.0819514D); assertNull(geometry.getBounds()); }
public void testReverse() throws Exception { Log log = testReverseLog; GeocodeClient client = new ClientFactory(baseUrl).getGeocode(); GeocodeInvoker invoker = GeocodeInvoker.builder().latLng(40.714224D, -73.961452D).sensor(false).build(); GeocodeResponse response = null; try { long start = System.currentTimeMillis(); response = invoker.geocode(client); long end = System.currentTimeMillis(); log.trace(String.format("Reverse geocode took %s ms", end - start)); } catch (Exception e) { log.error(e); fail(); } assertNotNull(response); assertNotNull(response.getStatus()); assertEquals(GeocodeStatus.OK, response.getStatus()); assertNotNull(response.getResults()); assertEquals(8, response.getResults().size()); GeocodeResult result1 = response.getResults().get(0); assertNotNull(result1.getTypes()); assertEquals(Arrays.asList(GeocodeResultType.STREET_ADDRESS), result1.getTypes()); assertEquals("279-281 Bedford Ave, Brooklyn, NY 11211, USA", result1.getFormattedAddress()); assertNotNull(result1.getAddressComponents()); assertEquals(8, result1.getAddressComponents().size()); GeocodeAddressComponent addressComponent1 = result1.getAddressComponents().get(0); assertNotNull(addressComponent1.getTypes()); assertEquals( Arrays.asList(GeocodeAddressComponentType.STREET_NUMBER), addressComponent1.getTypes()); assertNotNull(addressComponent1.getLongName()); assertEquals("279-281", addressComponent1.getLongName()); assertNotNull(addressComponent1.getShortName()); assertEquals("279-281", addressComponent1.getShortName()); GeocodeGeometry geometry = result1.getGeometry(); assertNotNull(geometry); assertNotNull(geometry.getLocationType()); assertEquals(GeocodeLocationType.RANGE_INTERPOLATED, geometry.getLocationType()); validateLocation(geometry.getLocation(), 40.7142215D, -73.9614454D); validateFrame(geometry.getViewPort(), 40.7110552D, -73.9646313D, 40.7173505D, -73.9583361D); validateFrame(geometry.getBounds(), 40.7139010D, -73.9616800D, 40.7145047D, -73.9612874D); }