code: static Observable<List<Parameter>> bufferedParameters(Query query) {
          int numParamsPerQuery = numParamsPerQuery(query);
          if (numParamsPerQuery > 0)
              // we don't check that parameters is empty after this because by
              // general design we want nothing to happen if a query is passed no
              // parameters when it expects them
              return parametersAfterDependencies(query).concatMap(FLATTEN_NAMED_MAPS)
                      .buffer(numParamsPerQuery);
          else
              return singleIntegerAfterDependencies(query).map(TO_EMPTY_PARAMETER_LIST);
      }
docs: If the number of parameters in a query is >0 then group the parameters in
  lists of that number in size but only after the dependencies have been
  completed. If the number of parameteres is zero then return an observable
  containing one item being an empty list.
  
  @param query
  @return