public override PluginCursorTemplate Search(QueryFilter queryFilter)
        {
            //TODO Perform a non-spatial search on this currently opened
            //plugin table/object
            //Where clause will always be empty if
            //PluginDatasourceTemplate.IsQueryLanguageSupported = false.

            string result  = client.CallAsync("queryRows|" + this.name).GetAwaiter().GetResult();
            var    oids    = JsonConvert.DeserializeObject <List <string> >(result);
            var    columns = this.GetQuerySubFields(queryFilter);
            var    cur     = new ProPluginCursorTemplate(client, oids, columns, this);

            return(cur);
        }
        public override PluginCursorTemplate Search(SpatialQueryFilter spatialQueryFilter)
        {
            //TODO Perform a spatial search on this currently opened
            //plugin table/object
            //Where clause will always be empty if
            //PluginDatasourceTemplate.IsQueryLanguageSupported = false.
            Envelope ext        = spatialQueryFilter.FilterGeometry.Extent;
            var      parameters = String.Format("{0},{1},{2},{3},{4}", this.name, ext.XMin, ext.YMin, ext.XMax, ext.YMax);
            string   result     = client.CallAsync("squeryRows|" + parameters).GetAwaiter().GetResult();
            var      oids       = JsonConvert.DeserializeObject <List <string> >(result);
            var      columns    = this.GetQuerySubFields(spatialQueryFilter);
            var      cur        = new ProPluginCursorTemplate(client, oids, columns, this);

            return(cur);
        }