: Basically, I need to find item X in the result set and return say N items : before and N items after. : : < ----- N items -- Item X --- N items ----> ... : So I might be wrong, but it looks like the only way would be to create a : custom SolrIndexSearcher which will find the offset and create the related : docslice. That slicing part doesn't seem to be well factored that I can : see, so it seems to imply copy/pasting a significant chunk off the code. Am : I looking at the wrong place ?
trying to do this as a hook into the SolrIndexSearcher would definitley be complicated ... laregley because of how matches are collected. the most straight forward way i can think of to get the data you want is to consider what you are sorting on, and use that as a range filter, ie... 1) do your search, and filter on id:X 2) look at the values X has in the fields you are sorting on 3) search again, this time filter on those fields, asking for the first N docs with values greater then whatever id:X has 4) search again, this time reverse your sort, and reverse your filters (docs with values less hten whatever id:X has) and get the first N docs. ...even if your sort is "score" you can use the frange parser to filter (not usually recommended for score, but possible) -Hoss