execute = function (value,token,callback) {
    var params = {
      'token':token,
      'f':'json',
      'text':value,
      'outFields': 'AddNum,StPreDir,StName,StType,City,Postal,Region,Country'
    };

    _this.httpAdapter.get(_this._endpoint, params, function(err, result) {
      if (typeof result === 'string') { result = JSON.parse(result); }
        if (err) {
          return callback(err);
        } else {
          //This is to work around ESRI's habit of returning 200 OK for failures such as lack of authentication
          if(result.error){
            callback(result.error);

            return null;
          }

          var results = [];
          for(var i = 0; i < result.locations.length; i++) {
            results.push(_this._formatResult(result.locations[i]));
          }

          results.raw = result;
          callback(false, results);
        }
    });
  }
Geocode
@param {String}   value    Value to geocode (Address)
@param {Function} callback Callback method