Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method GenerateGeocodeURL () as String 
 | 
{ 
 | 
  #keys: '1[105690.0.468906519]' 
 | 
  Description: 'Generates the Geocoding request to send to Nominatim/MapQuest by constructing the request URL and modifying the appropriate fields' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Administrator Sep-13-2011 (created) 
 | 
    library := this.LibOSM_OSMGISLibrary(); 
 | 
    //utils := library.LibOSM_Utils(); 
 | 
    arguments := library.Arguments(); 
 | 
    countryhandle := arguments.GetHandle( "country" ); 
 | 
    statehandle := arguments.GetHandle( "state" ); 
 | 
    cityhandle := arguments.GetHandle( "city" ); 
 | 
    streethandle := arguments.GetHandle( "street" ); 
 | 
    housenumberhandle := arguments.GetHandle( "housenumber" ); 
 | 
    postcodehandle := arguments.GetHandle( "postcode" ); 
 | 
    argumentsroot := arguments.Root(); 
 | 
     
 | 
    street     := argumentsroot.Child( housenumberhandle ).ValueToString() + 
 | 
                  " " + argumentsroot.Child( streethandle ).ValueToString(); 
 | 
    city       := argumentsroot.Child( cityhandle ).ValueToString(); 
 | 
    state      := argumentsroot.Child( statehandle ).ValueToString(); 
 | 
    postalcode := argumentsroot.Child( postcodehandle ).ValueToString(); 
 | 
    country    := argumentsroot.Child( countryhandle ).ValueToString(); 
 | 
     
 | 
    urlsuffix := ''; 
 | 
     
 | 
    if( this.Endpoint() = 'OSM-NOMINATIM' ) 
 | 
    { 
 | 
      //TODO - To use structured URL or use one-line query URL? 
 | 
      urlsuffix := LibOSM_GeocodingServer::GenerateGeocodeURL_Nominatim( street, city, state, postalcode, country ); 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      urlsuffix := LibOSM_GeocodingServer::GenerateGeocodeURL_MapQuest( street, city, state, postalcode, country ); 
 | 
    } 
 | 
    //Encodes any characters that are reserved characters in URL 
 | 
    urlsuffix := StringUtil::EncodeURL( urlsuffix ); 
 | 
     
 | 
    url := urlsuffix; 
 | 
     
 | 
    debuginfo( "GeocodingServer.GenerateGeocodeURL:", url ); 
 | 
     
 | 
    return url; 
 | 
  *] 
 | 
} 
 |