docs: public static <T> Specification<T> combineWithAnd(final List<Specification<T>> specList) {
          if (specList.isEmpty()) {
              return null;
          }
          Specification<T> specs = Specification.where(specList.get(0));
          for (final Specification<T> specification : specList.subList(1, specList.size())) {
              specs = specs.and(specification);
          }
          return specs;
      }