/**
* BeNomad BeMap JavaScript API - GeoSearchInfo
*/
/**
* @classdesc
* Base class for geocoding search information.
* @public
* @constructor
* @abstract
* @param {object} options see below the available values.
* @param {String} options.state
* @param {String} options.city
* @param {String} options.country
* @param {String} options.countryCode
* @param {String} options.county
* @param {String} options.district
* @param {String} options.street
* @param {String} options.streetNumber
* @param {String} options.postalCode
* @param {String} options.searchType Defines all the possible types of research that can be applied to a textual pattern. Available values: CONTAINS, FUZZY, KEY_SEARCH, STRICT, STRICT_BEGINNING, WORD_BEGINNING
* @param {String} options.language Define the language that will be used to perform the address lookup.
* @param {Int} options.maxResult The maximum number of items used to perform the research and returned items by the server. Default is 1.
* @param {bemap.BoundingBox} options.boundingBox the bounding box that will limit the research to a specific area.
*/
bemap.GeoSearchInfo = function(options) {
var opts = options || {};
/**
* @type {String}
* @protected
*/
this.state = opts.state ? opts.state : null;
/**
* @type {String}
* @protected
*/
this.city = opts.city ? opts.city : null;
/**
* @type {String}
* @protected
*/
this.country = opts.country ? opts.country : null;
/**
* @type {String}
* @protected
*/
this.countryCode = opts.countryCode ? opts.countryCode : null;
/**
* @type {String}
* @protected
*/
this.county = opts.county ? opts.county : null;
/**
* @type {String}
* @protected
*/
this.district = opts.district ? opts.district : null;
/**
* @type {String}
* @protected
*/
this.street = opts.street ? opts.street : null;
/**
* @type {String}
* @protected
*/
this.streetNumber = opts.streetNumber ? opts.streetNumber : null;
/**
* @type {String}
* @protected
*/
this.postalCode = opts.postalCode ? opts.postalCode : null;
/**
* @type {String}
* @protected
*/
this.searchType = opts.searchType ? opts.searchType : null;
/**
* @type {String}
* @protected
*/
this.language = opts.language ? opts.language : null;
/**
* @type {int}
* @protected
*/
this.maxResult = opts.maxResult ? opts.maxResult : null;
/**
* @type {bemap.BoundingBox}
* @protected
*/
this.bbox = opts.boundingBox ? opts.boundingBox : null;
};
/**
* Get state informations.
* @return {String} state.
*/
bemap.GeoSearchInfo.prototype.getState = function() {
return this.state;
};
/**
* Get the city information.
* @return {String} city.
*/
bemap.GeoSearchInfo.prototype.getCity = function() {
return this.city;
};
/**
* Get the country information.
* @return {String} country
*/
bemap.GeoSearchInfo.prototype.getCountry = function() {
return this.country;
};
/**
* Get the country information.
* @return {String} country
*/
bemap.GeoSearchInfo.prototype.getCountryCode = function() {
return this.countryCode;
};
/**
* Get the county information.
* @return {String} county.
*/
bemap.GeoSearchInfo.prototype.getCounty = function() {
return this.county;
};
/**
* Get the district information.
* @return {String} district.
*/
bemap.GeoSearchInfo.prototype.getDistrict = function() {
return this.district;
};
/**
* Get the street information.
* @return {String} street.
*/
bemap.GeoSearchInfo.prototype.getStreet = function() {
return this.street;
};
/**
* Get the street number information.
* @return {String} streetNumber.
*/
bemap.GeoSearchInfo.prototype.getStreetNumber = function() {
return this.streetNumber;
};
/**
* Get the postal code information.
* @return {String} postalCode.
*/
bemap.GeoSearchInfo.prototype.getPostalCode = function() {
return this.postalCode;
};
/**
* Get the search type information.
* @return {String} searchType.
*/
bemap.GeoSearchInfo.prototype.getSearchType = function() {
return this.searchType;
};
/**
* Get the language information.
* @return {String} language.
*/
bemap.GeoSearchInfo.prototype.getLanguage = function() {
return this.language;
};
/**
* Get the number maximum of result.
* @return {String} maxResult.
*/
bemap.GeoSearchInfo.prototype.getMaxResult = function() {
return this.maxResult;
};
/**
* Get the street number maximum of result.
* @return {String} bbox.
*/
bemap.GeoSearchInfo.prototype.getBoundingBox = function() {
return this.bbox;
};
/**
* Set state informations.
* @param {String} state the new state to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setState = function(state) {
this.state = state;
return this;
};
/**
* Set the city information.
* @param {String} city the new city to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setCity = function(city) {
this.city = city;
return this;
};
/**
* Set the country information.
* @param {String} country the new country to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setCountry = function(country) {
this.country = country;
return this;
};
/**
* Set the country information.
* @param {String} countryCode the new country to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setCountryCode = function(countryCode) {
this.countryCode = countryCode;
return this;
};
/**
* Set the county information.
* @param {String} county the new county to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setCounty = function(county) {
this.county = county;
return this;
};
/**
* Set the district information.
* @param {String} district the new district to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setDistrict = function(district) {
this.district = district;
return this;
};
/**
* Set the street information.
* @param {String} street the new street to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setStreet = function(street) {
this.street = street;
return this;
};
/**
* Set the street number information.
* @param {String} streetNumber the new street number to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setStreetNumber = function(streetNumber) {
this.streetNumber = streetNumber;
return this;
};
/**
* Set the postal code information.
* @param {String} postalCode the new postal code to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setPostalCode = function(postalCode) {
this.postalCode = postalCode;
return this;
};
/**
* Set the search type information.
* @param {String} searchType the new search type to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setSearchType = function(searchType) {
this.searchType = searchType;
return this;
};
/**
* Set the language information.
* @param {String} language the new language to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setLanguage = function(language) {
this.language = language;
return this;
};
/**
* Set the number maximum of result.
* @param {Int} maxResult the new maximal result to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setMaxResult = function(maxResult) {
this.maxResult = maxResult;
return this;
};
/**
* Set the street number maximum of result.
* @param {String} bbox the boundingBox new to set.
* @return {bemap.GeoSearchInfo} this.
*/
bemap.GeoSearchInfo.prototype.setBoundingBox = function(bbox) {
this.bbox = bbox;
return this;
};