mirror of https://github.com/pelias/api.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
721 B
31 lines
721 B
const url = require('url'); |
|
|
|
const ServiceConfiguration = require('pelias-microservice-wrapper').ServiceConfiguration; |
|
|
|
class Libpostal extends ServiceConfiguration { |
|
constructor(o, propertyExtractor) { |
|
super('libpostal', o); |
|
|
|
// save off the propertyExtractor function |
|
// this is used to extract a single property from req. eg: |
|
// * _.property('clean.text') |
|
// * _.property('clean.parsed_text.address') |
|
// will return those properties from req |
|
this.propertyExtractor = propertyExtractor; |
|
|
|
} |
|
|
|
getParameters(req) { |
|
return { |
|
address: this.propertyExtractor(req) |
|
}; |
|
|
|
} |
|
|
|
getUrl(req) { |
|
return url.resolve(this.baseUrl, 'parse'); |
|
} |
|
|
|
} |
|
|
|
module.exports = Libpostal;
|
|
|