code: public List<Entry<?>> findEntries(String searchText) {
          if (MODEL.isLoggable(FINE)) {
              MODEL.fine(getName() + ": getting entries for search term: " //$NON-NLS-1$
                      + searchText);
          }
  
          Instant horizonStart = Instant.now().minus(getLookBackDuration());
          Instant horizonEnd = Instant.now().plus(getLookAheadDuration());
  
          ZoneId zoneId = ZoneId.systemDefault();
  
          ZonedDateTime st = ZonedDateTime.ofInstant(horizonStart, zoneId);
          ZonedDateTime et = ZonedDateTime.ofInstant(horizonEnd, zoneId);
  
          List<Entry<?>> result = new ArrayList<>();
  
          Map<LocalDate, List<Entry<?>>> map = findEntries(st.toLocalDate(), et.toLocalDate(), zoneId);
          for (List<Entry<?>> list : map.values()) {
              for (Entry<?> entry : list) {
                  if (entry.matches(searchText)) {
                      result.add(entry);
                  }
              }
          }
  
          if (MODEL.isLoggable(FINE)) {
              MODEL.fine(getName() + ": found " + result.size() + " entries"); //$NON-NLS-1$ //$NON-NLS-2$
          }
  
          return result;
      }
docs: Queries the calendar for entries that match the given search text. The method
  can be overridden to implement custom find / search strategies.
  
  @param searchText the search text
  @return a list of entries that match the search
  @see Entry#matches(String)