X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/28c6bbeeed6b228d51666914bcd845d05500107e..730eb182b2160040a902feb09276b75a3f9c137c:/apps/workbench/app/models/arvados_resource_list.rb diff --git a/apps/workbench/app/models/arvados_resource_list.rb b/apps/workbench/app/models/arvados_resource_list.rb index d989715080..27069706fb 100644 --- a/apps/workbench/app/models/arvados_resource_list.rb +++ b/apps/workbench/app/models/arvados_resource_list.rb @@ -16,6 +16,11 @@ class ArvadosResourceList self end + def distinct(bool=true) + @distinct = bool + self + end + def limit(max_results) if not max_results.nil? and not max_results.is_a? Integer raise ArgumentError("argument to limit() must be an Integer or nil") @@ -178,7 +183,11 @@ class ArvadosResourceList api_params[:select] = @select if @select api_params[:order] = @orderby_spec if @orderby_spec api_params[:filters] = @filters if @filters - + api_params[:distinct] = @distinct if @distinct + if @fetch_multiple_pages + # Default limit to (effectively) api server's MAX_LIMIT + api_params[:limit] = 2**(0.size*8 - 1) - 1 + end item_count = 0 offset = @offset || 0