code: function AGOLGeocoder(httpAdapter, options) {
  
    if (!httpAdapter || httpAdapter == 'undefined') {
      throw new Error('ArcGis Online Geocoder requires a httpAdapter to be defined');
    }
  
    if (!options || options == 'undefined') {
      options = {};
    }
  
    if (!options.client_id || options.client_id == 'undefined') {
      options.client_id = null;
    }
  
    if (!options.client_secret || options.client_secret == 'undefined') {
      options.client_secret = null;
    }
  
    if (!options.client_secret || !options.client_id) {
  
      throw new Error('You must specify the client_id and the client_secret');
    }
  
    this.options = options;
  
    this.httpAdapter = httpAdapter;
    this.cache = {};
  }
docs: Constructor
  @param {Object} httpAdapter Http Adapter
  @param {Object} options     Options (language, client_id, client_secret)