private NotificationSearchResponse searchMultipleNotifications(NotificationSearchRequest searchRequest) {
final Collection<DeviceNotification> notifications = hazelcastService.find(
searchRequest.getDeviceIds(),
searchRequest.getNames(),
getTotal(searchRequest.getSkip(), searchRequest.getTake()),
searchRequest.getTimestampStart(),
searchRequest.getTimestampEnd(),
false,
null,
DeviceNotification.class);
final Comparator<DeviceNotification> comparator = buildDeviceNotificationComparator(searchRequest.getSortField());
String sortOrder = searchRequest.getSortOrder();
final Boolean reverse = sortOrder == null ? null : "desc".equalsIgnoreCase(sortOrder);
final List<DeviceNotification> sortedDeviceNotifications = orderAndLimit(new ArrayList<>(notifications),
comparator, reverse, searchRequest.getSkip(), searchRequest.getTake());
return new NotificationSearchResponse(new ArrayList<>(sortedDeviceNotifications));
}