[[geocoder-component]]
= Geocoder Component
//THIS FILE IS COPIED: EDIT THE SOURCE FILE:
:page-source: components/camel-geocoder/src/main/docs/geocoder-component.adoc
:docTitle: Geocoder
:artifactId: camel-geocoder
:description: Find geocodes (latitude and longitude) for a given address or the other way round.
:since: 2.12
:supportLevel: Stable
:component-header: Only producer is supported

*Since Camel {since}*

*{component-header}*

The Geocoder component is used for looking up geocodes (latitude and
longitude) for a given address, or reverse lookup.

The component uses either a hosted https://github.com/openstreetmap/Nominatim[Nominatim server] or
the https://code.google.com/p/geocoder-java/[Java  API for Google Geocoder] library.

Maven users will need to add the following dependency to their `pom.xml`
for this component:

[source,xml]
------------------------------------------------------------
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-geocoder</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>
------------------------------------------------------------

== URI format

[source,java]
--------------------------------------------
geocoder:address:name[?options]
geocoder:latlng:latitude,longitude[?options]
--------------------------------------------

== Options


// component options: START
The Geocoder component supports 2 options, which are listed below.



[width="100%",cols="2,5,^1,2",options="header"]
|===
| Name | Description | Default | Type
| *lazyStartProducer* (producer) | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. | false | boolean
| *basicPropertyBinding* (advanced) | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | boolean
|===
// component options: END




// endpoint options: START
The Geocoder endpoint is configured using URI syntax:

----
geocoder:address:latlng
----

with the following path and query parameters:

=== Path Parameters (2 parameters):


[width="100%",cols="2,5,^1,2",options="header"]
|===
| Name | Description | Default | Type
| *address* | The geo address which should be prefixed with address: |  | String
| *latlng* | The geo latitude and longitude which should be prefixed with latlng: |  | String
|===


=== Query Parameters (17 parameters):


[width="100%",cols="2,5,^1,2",options="header"]
|===
| Name | Description | Default | Type
| *headersOnly* (producer) | Whether to only enrich the Exchange with headers, and leave the body as-is. | false | boolean
| *language* (producer) | The language to use. | en | String
| *lazyStartProducer* (producer) | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. | false | boolean
| *serverUrl* (producer) | URL to the geocoder server. Mandatory for Nominatim server. |  | String
| *type* (producer) | Type of GeoCoding server. Supported Nominatim and Google. The value can be one of: NOMINATIM, GOOGLE |  | GeoCoderType
| *basicPropertyBinding* (advanced) | Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | boolean
| *synchronous* (advanced) | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | false | boolean
| *proxyAuthDomain* (proxy) | Proxy Authentication Domain to access Google GeoCoding server. |  | String
| *proxyAuthHost* (proxy) | Proxy Authentication Host to access Google GeoCoding server. |  | String
| *proxyAuthMethod* (proxy) | Authentication Method to Google GeoCoding server. |  | String
| *proxyAuthPassword* (proxy) | Proxy Password to access GeoCoding server. |  | String
| *proxyAuthUsername* (proxy) | Proxy Username to access GeoCoding server. |  | String
| *proxyHost* (proxy) | Proxy Host to access GeoCoding server. |  | String
| *proxyPort* (proxy) | Proxy Port to access GeoCoding server. |  | Integer
| *apiKey* (security) | API Key to access Google. Mandatory for Google GeoCoding server. |  | String
| *clientId* (security) | Client ID to access Google GeoCoding server. |  | String
| *clientKey* (security) | Client Key to access Google GeoCoding server. |  | String
|===
// endpoint options: END




== Exchange data format

== Message Headers

[width="100%",cols="50%,50%",options="header",]
|=======================================================================
|Header |Description

|`CamelGeoCoderStatus` |Mandatory. Status code from the geocoder library. If status is
`GeocoderStatus.OK` then additional headers is enriched

|`CamelGeoCoderAddress` |The formatted address

|`CamelGeoCoderLat` |The latitude of the location.

|`CamelGeoCoderLng` |The longitude of the location.

|`CamelGeoCoderLatlng` |The latitude and longitude of the location. Separated by comma.

|`CamelGeoCoderCity` |The city long name.

|`CamelGeoCoderRegionCode` |The region code.

|`CamelGeoCoderRegionName` |The region name.

|`CamelGeoCoderCountryLong` |The country long name.

|`CamelGeoCoderCountryShort` |The country short name.

|`CamelGeoCoderPostalCode` |The postal code.
|=======================================================================

Notice not all headers may be provided depending on available data and
mode in use (address vs latlng).

=== Body using a Nominatim Server

Camel will deliver the body as a JSONv2 type.

=== Body using a Google Server

Camel will deliver the body as a
`com.google.code.geocoder.model.GeocodeResponse` type. +
And if the address is `"current"` then the response is a String type
with a JSON representation of the current location.

If the option `headersOnly` is set to `true` then the message body is
left as-is, and only headers will be added to the
Exchange.

== Samples

In the example below we get the latitude and longitude for Paris, France

[source,java]
-----------------------------------------
  from("direct:start")
    .to("geocoder:address:Paris, France?type=NOMINATIM&serverUrl=https://nominatim.openstreetmap.org")
-----------------------------------------

If you provide a header with the `CamelGeoCoderAddress` then that
overrides the endpoint configuration, so to get the location of
Copenhagen, Denmark we can send a message with a headers as shown:

[source,java]
------------------------------------------------------------------------------------------------------
template.sendBodyAndHeader("direct:start", "Hello", GeoCoderConstants.ADDRESS, "Copenhagen, Denmark");
------------------------------------------------------------------------------------------------------

To get the address for a latitude and longitude we can do:

[source,java]
---------------------------------------------------------------------------------------------------------------------------------------------------
  from("direct:start")
    .to("geocoder:latlng:40.714224,-73.961452")
    .log("Location ${header.CamelGeocoderAddress} is at lat/lng: ${header.CamelGeocoderLatlng} and in country ${header.CamelGeoCoderCountryShort}")
---------------------------------------------------------------------------------------------------------------------------------------------------

Which will log

[source,java]
--------------------------------------------------------------------------------------------------------------
Location 285 Bedford Avenue, Brooklyn, NY 11211, USA is at lat/lng: 40.71412890,-73.96140740 and in country US
--------------------------------------------------------------------------------------------------------------

To get the current location using the Google GeoCoder,
you can use "current" as the address as shown:

[source,java]
-----------------------------------
  from("direct:start")
    .to("geocoder:address:current")
-----------------------------------

include::camel-spring-boot::page$geocoder-starter.adoc[]
