code: function(options) {
          options = options || {};
          options.handlerOptions = options.handlerOptions || {};
  
          OpenLayers.Control.prototype.initialize.apply(this, [options]);
          
          if (!this.format) {
              this.format = new OpenLayers.Format.WMSGetFeatureInfo(
                  options.formatOptions
              );
          }
          
          if (this.drillDown === true) {
              this.hover = false;
          }
  
          if (this.hover) {
              this.handler = new OpenLayers.Handler.Hover(
                  this, {
                      move: this.cancelHover,
                      pause: this.getInfoForHover
                  },
                  OpenLayers.Util.extend(
                      this.handlerOptions.hover || {}, {delay: 250}
                  )
              );
          } else {
              var callbacks = {};
              callbacks[this.clickCallback] = this.getInfoForClick;
              this.handler = new OpenLayers.Handler.Click(
                  this, callbacks, this.handlerOptions.click || {}
              );
          }
      }
docs: Constructor: <OpenLayers.Control.WMTSGetFeatureInfo>
  
  Parameters:
  options - {Object}