/** Performs the search on the venue list. */ public void onVenueSearch() { if ((venueSearch == null) || (venueSearch.trim().isEmpty())) { filteredVenues = null; } else { final String query = venueSearch.toUpperCase(); filteredVenues = support .getVenues() .parallelStream() .filter( venue -> { switch (selectedVenueSearchOption) { case NAME: return venue.getName().toUpperCase().contains(query); case ADDRESS: return venue.getAddress().toUpperCase().contains(query); default: throw new IllegalArgumentException( "SearchOption: " + selectedArtistSearchOption.name() + " not supported"); } }) .collect(Collectors.toList()); } }