Как я могу украсить приведенный ниже запрос java, используя java фильтр потока и предикат?
У меня есть этот фрагмент кода, в котором он пытается выбросить некоторые исключения на основе некоторого условия, которое необходимо обработать на уровне пользовательского интерфейса. Как я могу сократить приведенный ниже код до более точного, используя фильтр потока и предикат java.
public Sort resolveArgument() {
Sort sort = sortHandlerMethodArgumentResolver.resolveArgument();
List<Sort.Order> orders = sort.stream().collect(Collectors.toList());
if (orders.isEmpty()) {
sort = Sort.by(Sort.Direction.DESC, default_sort_param);
} else {
if (orders.size() > sort_max_count) {
throw new InvalidSortException("Please provide only 3 valid sort parameters.");
}
}
orders.forEach(order -> {
if (!allowed_sort_params.contains(order.getProperty())) {
throw new InvalidSortException(order.getProperty() + " is not a valid sort parameter");
}
});
return sort;
}