def execute(key, options = {})
      custom_params = []
      custom_params << use_named_parameter('dc', options[:dc]) if options[:dc]
      custom_params << use_named_parameter('near', options[:near]) if options[:near]
      custom_params << use_named_parameter('limit', options[:limit]) if options[:limit]
      ret = send_get_request(@conn, ["/v1/query/#{key}/execute"], options, custom_params)
      OpenStruct.new JSON.parse(ret.body)
    end
def execute(key, options = {})
      custom_params = []
      custom_params << use_named_parameter('dc', options[:dc]) if options[:dc]
      custom_params << use_named_parameter('near', options[:near]) if options[:near]
      custom_params << use_named_parameter('limit', options[:limit]) if options[:limit]
      ret = send_get_request(@conn, ["/v1/query/#{key}/execute"], options, custom_params)
      OpenStruct.new JSON.parse(ret.body)
    end
Execute a prepared query or prepared query template
 @param key [String] the prepared query ID or name
 @param options [Hash] prepared query execution options
 @option dc [String] :dc Consul datacenter to query
 @option near [String] node name to sort the resulting list in ascending order based on the
   estimated round trip time from that node
 @option limit [Integer] to limit the size of the return list to the given number of results
 @return [OpenStruct] the list of results from the prepared query or prepared query template
 rubocop:disable PerceivedComplexity