generated from camel.apache.org/kamelet
94 lines
114 KiB
YAML
94 lines
114 KiB
YAML
|
|
apiVersion: camel.apache.org/v1
|
||
|
|
kind: Kamelet
|
||
|
|
metadata:
|
||
|
|
name: nominatim-geocode-action
|
||
|
|
annotations:
|
||
|
|
camel.apache.org/kamelet.support.level: "Stable"
|
||
|
|
camel.apache.org/catalog.version: "4.10.2"
|
||
|
|
camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMjU2IgogICBoZWlnaHQ9IjI1NiIKICAgaWQ9InN2ZzMwMzgiCiAgIHZlcnNpb249IjEuMSIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMS4xLjIgKDBhMDBjZjUzMzksIDIwMjItMDItMDQpIgogICBzb2RpcG9kaTpkb2NuYW1lPSJPcGVuU3RyZWV0TWFwIGxvZ28gMjAxMS5zdmciCiAgIGlua3NjYXBlOmV4cG9ydC1maWxlbmFtZT0iL2hvbWUvZnJlZC9ibGEucG5nIgogICBpbmtzY2FwZTpleHBvcnQteGRwaT0iMTgwIgogICBpbmtzY2FwZTpleHBvcnQteWRwaT0iMTgwIgogICBzb2RpcG9kaTp2ZXJzaW9uPSIwLjMyIgogICBpbmtzY2FwZTpvdXRwdXRfZXh0ZW5zaW9uPSJvcmcuaW5rc2NhcGUub3V0cHV0LnN2Zy5pbmtzY2FwZSIKICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiCiAgIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIKICAgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPgogIDx0aXRsZQogICAgIGlkPSJ0aXRsZTM1OTQiPk9wZW5TdHJlZXRNYXAgbG9nbyAyMDExPC90aXRsZT4KICA8ZGVmcwogICAgIGlkPSJkZWZzMzA0MCI+CiAgICA8bGluZWFyR3JhZGllbnQKICAgICAgIGlkPSJsaW5lYXJHcmFkaWVudDY4NDYiPgogICAgICA8c3RvcAogICAgICAgICBpZD0ic3RvcDY4NDgiCiAgICAgICAgIG9mZnNldD0iMCIKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2ZmZmZmZjtzdG9wLW9wYWNpdHk6MTsiIC8+CiAgICAgIDxzdG9wCiAgICAgICAgIHN0eWxlPSJzdG9wLWNvbG9yOiNmZmZmZmY7c3RvcC1vcGFjaXR5OjAuOTMwNTAxOTQ7IgogICAgICAgICBvZmZzZXQ9IjAuNSIKICAgICAgICAgaWQ9InN0b3A2ODUyIiAvPgogICAgICA8c3RvcAogICAgICAgICBpZD0ic3RvcDY4NTAiCiAgICAgICAgIG9mZnNldD0iMSIKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2ZmZmZmZjtzdG9wLW9wYWNpdHk6MDsiIC8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPGxpbmVhckdyYWRpZW50CiAgICAgICBpZD0ibGluZWFyR3JhZGllbnQ1ODYyIj4KICAgICAgPHN0b3AKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2Y5ZTI5NTtzdG9wLW9wYWNpdHk6MTsiCiAgICAgICAgIG9mZnNldD0iMCIKICAgICAgICAgaWQ9InN0b3A1ODY0IiAvPgogICAgICA8c3RvcAogICAgICAgICBpZD0ic3RvcDU4NzYiCiAgICAgICAgIG9mZnNldD0iMC4xMjUiCiAgICAgICAgIHN0eWxlPSJzdG9wLWNvbG9yOiNmN2RkODQ7c3RvcC1vcGFjaXR5OjE7IiAvPgogICAgICA8c3RvcAogICAgICAgICBpZD0ic3RvcDU4NzQiCiAgICAgICAgIG9mZnNldD0iMC4yMDU4MDU4MiIKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2ZmZmZmZjtzdG9wLW9wYWNpdHk6MTsiIC8+CiAgICAgIDxzdG9wCiAgICAgICAgIGlkPSJzdG9wNTg3MCIKICAgICAgICAgb2Zmc2V0PSIwLjMwMTEyNjIxIgogICAgICAgICBzdHlsZT0ic3RvcC1jb2xvcjojZjRjZTUxO3N0b3Atb3BhY2l0eToxOyIgLz4KICAgICAgPHN0b3AKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2Y5ZTdhYTtzdG9wLW9wYWNpdHk6MTsiCiAgICAgICAgIG9mZnNldD0iMC4zNDEyMDM5IgogICAgICAgICBpZD0ic3RvcDU4NzIiIC8+CiAgICAgIDxzdG9wCiAgICAgICAgIHN0eWxlPSJzdG9wLWNvbG9yOiNlZmJiMGU7c3RvcC1vcGFjaXR5OjE7IgogICAgICAgICBvZmZzZXQ9IjEiCiAgICAgICAgIGlkPSJzdG9wNTg2NiIgLz4KICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICA8bGluZWFyR3JhZGllbnQKICAgICAgIGlkPSJsaW5lYXJHcmFkaWVudDU3NjIiPgogICAgICA8c3RvcAogICAgICAgICBzdHlsZT0ic3RvcC1jb2xvcjojMmQzMzM1O3N0b3Atb3BhY2l0eToxOyIKICAgICAgICAgb2Zmc2V0PSIwIgogICAgICAgICBpZD0ic3RvcDU3NjQiIC8+CiAgICAgIDxzdG9wCiAgICAgICAgIGlkPSJzdG9wNTc3MCIKICAgICAgICAgb2Zmc2V0PSIwLjUiCiAgICAgICAgIHN0eWxlPSJzdG9wLWNvbG9yOiM0YzQ2NGE7c3RvcC1vcGFjaXR5OjE7IiAvPgogICAgICA8c3RvcAogICAgICAgICBzdHlsZT0ic3RvcC1jb2xvcjojMzg0MDQyO3N0b3Atb3BhY2l0eToxOyIKICAgICAgICAgb2Zmc2V0PSIxIgogICAgICAgICBpZD0ic3RvcDU3NjYiIC8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPGxpbmVhckdyYWRpZW50CiAgICAgICBpZD0ibGluZWFyR3JhZGllbnQ1NzQ1Ij4KICAgICAgPHN0b3AKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2QwZTlmMjtzdG9wLW9wYWNpdHk6MDsiCiAgICAgICAgIG9mZnNldD0iMCIKICAgICAgICAgaWQ9InN0b3A1NzQ3IiAvPgogICAgICA8c3RvcAogICAgICAgICBpZD0ic3RvcDU3NTMiCiAgICAgICAgIG9mZnNldD0iMC44MzkzMjc1MSIKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2QwZTlmMjtzdG9wLW9wYWNpdHk6MDsiIC8+CiAgICAgIDxzdG9wCiAgICAgICAgIHN0eWxlPSJzdG9wLWNvbG9yOiNkMGU5ZjI7c3RvcC1vcGFjaXR5OjAuMjgxODUzMjk7IgogICAgICAgICBvZmZzZXQ9IjAuOTQzMDg1MDciCiAgICAgICAgIGlkPSJzdG9wNTc1NSIgLz4KICAgICAgPHN0b3AKICAgICAgICAgc3R5bGU9InN0b3AtY29sb3I6I2QwZ
|
||
|
|
camel.apache.org/provider: "Apache Software Foundation"
|
||
|
|
camel.apache.org/kamelet.group: "Geospatial"
|
||
|
|
camel.apache.org/kamelet.namespace: "Geo"
|
||
|
|
labels:
|
||
|
|
camel.apache.org/kamelet.type: "action"
|
||
|
|
spec:
|
||
|
|
definition:
|
||
|
|
title: "Nominatim GeoCode Action"
|
||
|
|
description: |-
|
||
|
|
Find locations on Earth by name and address.
|
||
|
|
This Kamelet expects in the body the `address` to find.
|
||
|
|
The return message will also contain the following headers with the geolocation info:
|
||
|
|
|
||
|
|
- `CamelGeoCoderAddress`
|
||
|
|
- `CamelGeoCoderCity`
|
||
|
|
- `CamelGeoCoderCountryLong`
|
||
|
|
- `CamelGeoCoderCountryShort`
|
||
|
|
- `CamelGeoCoderLat`
|
||
|
|
- `CamelGeoCoderLng`
|
||
|
|
- `CamelGeoCoderLatlng`
|
||
|
|
- `CamelGeoCoderPostalCode`
|
||
|
|
- `CamelGeoCoderRegionCode`
|
||
|
|
- `CamelGeoCoderRegionName`
|
||
|
|
- `CamelGeoCoderStatus`
|
||
|
|
|
||
|
|
The body will be returned in JSON format.
|
||
|
|
required:
|
||
|
|
- serverUrl
|
||
|
|
type: object
|
||
|
|
properties:
|
||
|
|
serverUrl:
|
||
|
|
title: "Server URL"
|
||
|
|
description: "Url of the Nominatim server"
|
||
|
|
example: "https://nominatim.openstreetmap.org"
|
||
|
|
type: string
|
||
|
|
types:
|
||
|
|
in:
|
||
|
|
mediaType: text/plain
|
||
|
|
out:
|
||
|
|
mediaType: application/json
|
||
|
|
schema:
|
||
|
|
type: object
|
||
|
|
required: ["place_id"]
|
||
|
|
properties:
|
||
|
|
place_id:
|
||
|
|
type: numeric
|
||
|
|
licence:
|
||
|
|
type: string
|
||
|
|
osm_type:
|
||
|
|
type: string
|
||
|
|
osm_id:
|
||
|
|
type: numeric
|
||
|
|
boundingbox:
|
||
|
|
type: array
|
||
|
|
lat:
|
||
|
|
type: numeric
|
||
|
|
lon:
|
||
|
|
type: numeric
|
||
|
|
display_name:
|
||
|
|
type: string
|
||
|
|
place_rank:
|
||
|
|
type: numeric
|
||
|
|
category:
|
||
|
|
type: string
|
||
|
|
address:
|
||
|
|
type: object
|
||
|
|
dependencies:
|
||
|
|
- "camel:core"
|
||
|
|
- "camel:jackson"
|
||
|
|
- "camel:geocoder"
|
||
|
|
- "camel:kamelet"
|
||
|
|
template:
|
||
|
|
from:
|
||
|
|
uri: "kamelet:source"
|
||
|
|
steps:
|
||
|
|
- setHeader:
|
||
|
|
name: CamelGeoCoderAddress
|
||
|
|
simple: "${body}"
|
||
|
|
- to:
|
||
|
|
uri: "geocoder:address:toOverride"
|
||
|
|
parameters:
|
||
|
|
type: "NOMINATIM"
|
||
|
|
serverUrl: "RAW({{serverUrl}})"
|
||
|
|
- marshal:
|
||
|
|
json: {}
|