@@ -88,9 +88,13 @@ public Result index(String q,
8888 int displayWidth ) {
8989 SearchSort sort = buildSearchSort (sortField , sortOrder );
9090
91+ return renderSearch (q , rangeType , relative , from , to , keyword , interval , page , savedSearchId , fields , displayWidth , sort , null , null );
92+ }
93+
94+ protected Result renderSearch (String q , String rangeType , int relative , String from , String to , String keyword , String interval , int page , String savedSearchId , String fields , int displayWidth , SearchSort sort , Stream stream , String filter ) {
9195 UniversalSearch search ;
9296 try {
93- search = getSearch (q , null , rangeType , relative , from , to , keyword , page , sort );
97+ search = getSearch (q , filter , rangeType , relative , from , to , keyword , page , sort );
9498 } catch (InvalidRangeParametersException e2 ) {
9599 return status (400 , views .html .errors .error .render ("Invalid range parameters provided." , e2 , request ()));
96100 } catch (IllegalArgumentException e1 ) {
@@ -102,6 +106,7 @@ public Result index(String q,
102106 SavedSearch savedSearch ;
103107 Set <String > selectedFields = getSelectedFields (fields );
104108 String formattedHistogramResults ;
109+
105110 try {
106111 if (savedSearchId != null && !savedSearchId .isEmpty ()) {
107112 savedSearch = savedSearchService .get (savedSearchId );
@@ -111,7 +116,7 @@ public Result index(String q,
111116
112117 searchResult = search .search ();
113118 if (searchResult .getError () != null ) {
114- return ok (views .html .search .queryerror .render (currentUser (), q , searchResult , savedSearch , fields , null ));
119+ return ok (views .html .search .queryerror .render (currentUser (), q , searchResult , savedSearch , fields , stream ));
115120 }
116121 searchResult .setAllFields (getAllFields ());
117122
@@ -129,12 +134,13 @@ public Result index(String q,
129134 }
130135
131136 if (searchResult .getTotalResultCount () > 0 ) {
132- return ok (views .html .search .results .render (currentUser (), search , searchResult , histogramResult , formattedHistogramResults , q , page , savedSearch , selectedFields , serverNodes .asMap (), null ));
137+ return ok (views .html .search .results .render (currentUser (), search , searchResult , histogramResult , formattedHistogramResults , q , page , savedSearch , selectedFields , serverNodes .asMap (), stream ));
133138 } else {
134- return ok (views .html .search .noresults .render (currentUser (), q , searchResult , savedSearch , selectedFields , null ));
139+ return ok (views .html .search .noresults .render (currentUser (), q , searchResult , savedSearch , selectedFields , stream ));
135140 }
136141 }
137142
143+
138144 protected String determineHistogramResolution (final SearchResult searchResult ) {
139145 final String interval ;
140146 final int queryRangeInMinutes = Minutes .minutesBetween (searchResult .getFromDateTime (), searchResult .getToDateTime ()).getMinutes ();
0 commit comments