@Override public List<?> next() throws TranslatorException, DataNotAvailableException { if (results == null) { results = ((UpdateExecution)exec).getUpdateCounts(); } if (singleUpdateCount) { if (index++ < results[0]) { return CollectionTupleSource.UPDATE_ROW; } return null; } if (index < results.length) { return Arrays.asList(results[index++]); } return null; } };
@Override public List<?> next() throws TranslatorException, DataNotAvailableException { if (results == null) { results = ((UpdateExecution)exec).getUpdateCounts(); } if (singleUpdateCount) { if (index++ < results[0]) { return CollectionTupleSource.UPDATE_ROW; } return null; } if (index < results.length) { return Arrays.asList(results[index++]); } return null; } };
@Override public List<?> next() throws TranslatorException, DataNotAvailableException { if (results == null) { results = ((UpdateExecution)exec).getUpdateCounts(); } if (singleUpdateCount) { if (index++ < results[0]) { return CollectionTupleSource.UPDATE_ROW; } return null; } if (index < results.length) { return Arrays.asList(results[index++]); } return null; } };
private List<List> readResultsFromExecution(Execution execution) throws TranslatorException { List<List> results = new ArrayList<List>(); while (true) { try { if (execution instanceof ResultSetExecution) { ResultSetExecution rs = (ResultSetExecution)execution; List result = null; while ((result = rs.next()) != null) { results.add(result); } break; } UpdateExecution rs = (UpdateExecution)execution; int[] result = rs.getUpdateCounts(); for (int i = 0; i < result.length; i++) { results.add(Arrays.asList(result[i])); } break; } catch (DataNotAvailableException e) { if (e.getRetryDelay() > 0) { try { Thread.sleep(e.getRetryDelay()); } catch (InterruptedException e1) { throw new TranslatorException(e1); } } } } return results; }