10690: De-duplicate dumpConfig.
[arvados.git] / services / api / app / controllers / application_controller.rb
index 3876e673fc80c96d19671248e4b14fbfa247351c..22851191b6d62a886aa1dcfc58edd261be59df1a 100644 (file)
@@ -506,12 +506,16 @@ class ApplicationController < ActionController::Base
       :limit => @limit,
       :items => @objects.as_api_response(nil, {select: @select})
     }
-    if params[:count].nil? || params[:count]
+    case params[:count]
+    when nil, '', 'exact'
       if @objects.respond_to? :except
         list[:items_available] = @objects.
           except(:limit).except(:offset).
           count(:id, distinct: true)
       end
+    when 'none'
+    else
+      raise ArgumentError.new("count parameter must be 'exact' or 'none'")
     end
     list
   end
@@ -574,7 +578,7 @@ class ApplicationController < ActionController::Base
       distinct: { type: 'boolean', required: false },
       limit: { type: 'integer', required: false, default: DEFAULT_LIMIT },
       offset: { type: 'integer', required: false, default: 0 },
-      count: { type: 'boolean', required: false, default: true},
+      count: { type: 'string', required: false, default: 'exact' },
     }
   end