@Override public void close() { if (!closed) { closed = true; finished = true; batch = Collections.emptyList(); reader.close(); // typically the scroll is closed after it is consumed so this will trigger a 404 // however we're closing it either way if (StringUtils.hasText(scrollId)) { repository.getRestClient().deleteScroll(scrollId); } } }
private RestRepository mockRepository() throws Exception { Map<String, Object> data = new HashMap<String, Object>(); data.put("field", "value"); String id = "1"; Object[] hit = new Object[]{id, data}; RestRepository mocked = Mockito.mock(RestRepository.class); ScrollReader.Scroll start = new ScrollReader.Scroll("abcd", 10, Collections.<Object[]>emptyList(), 5, 5); Mockito.doReturn(start).when(mocked).scroll(Matchers.anyString(), Matchers.any(BytesArray.class), Matchers.any(ScrollReader.class)); ScrollReader.Scroll middle = new ScrollReader.Scroll("efgh", 10, Collections.<Object[]>emptyList(), 3, 3); Mockito.doReturn(middle).when(mocked).scroll(Matchers.eq("abcd"), Matchers.any(ScrollReader.class)); ScrollReader.Scroll end = new ScrollReader.Scroll("ijkl", 10, Collections.singletonList(hit), 2, 1); Mockito.doReturn(end).when(mocked).scroll(Matchers.eq("efgh"), Matchers.any(ScrollReader.class)); ScrollReader.Scroll finalScroll = new ScrollReader.Scroll("mnop", 10, true); Mockito.doReturn(finalScroll).when(mocked).scroll(Matchers.eq("ijkl"), Matchers.any(ScrollReader.class)); RestClient mockClient = Mockito.mock(RestClient.class); Mockito.when(mockClient.deleteScroll(Matchers.eq("mnop"))).thenReturn(true); Mockito.when(mockClient.deleteScroll(Matchers.anyString())).thenReturn(false); Mockito.doReturn(mockClient).when(mocked).getRestClient(); return mocked; } }
@Override public void close() { if (!closed) { closed = true; finished = true; batch = Collections.emptyList(); // typically the scroll is closed after it is consumed so this will trigger a 404 // however we're closing it either way repository.getRestClient().deleteScroll(scrollId); } }
@Override public void close() { if (!closed) { closed = true; finished = true; batch = Collections.emptyList(); reader.close(); // typically the scroll is closed after it is consumed so this will trigger a 404 // however we're closing it either way if (StringUtils.hasText(scrollId)) { repository.getRestClient().deleteScroll(scrollId); } } }
@Override public void close() { if (!closed) { closed = true; finished = true; batch = Collections.emptyList(); reader.close(); // typically the scroll is closed after it is consumed so this will trigger a 404 // however we're closing it either way if (StringUtils.hasText(scrollId)) { repository.getRestClient().deleteScroll(scrollId); } } }
@Override public void close() { if (!closed) { closed = true; finished = true; batch = Collections.emptyList(); reader.close(); // typically the scroll is closed after it is consumed so this will trigger a 404 // however we're closing it either way if (StringUtils.hasText(scrollId)) { repository.getRestClient().deleteScroll(scrollId); } } }