@Override public Iterator<T> iterator() { if (isClosed) return null; if (!flushBuffer) return getInMemoryQueue().iterator(); SegmentQueueFileIterator iterator = new SegmentQueueFileIterator(thisIterator); iterators.add(iterator); return iterator; }
@Override public boolean offer(T e) { if (isClosed || flushBuffer) return false; boolean added = getInMemoryQueue().add(e); if (added) { try { flush(e); } catch (IOException ex) { throw new RuntimeException(ex); } } return added; }
private void flush(T entry) throws IOException { Queue<T> inMemQueue = getInMemoryQueue(); int resultSize = sizeOf(entry); maxResultSize = Math.max(maxResultSize, resultSize);
private void flush(T entry) throws IOException { Queue<T> inMemQueue = getInMemoryQueue(); int resultSize = sizeOf(entry); maxResultSize = Math.max(maxResultSize, resultSize);
private void flush(T entry) throws IOException { Queue<T> inMemQueue = getInMemoryQueue(); int resultSize = sizeOf(entry); maxResultSize = Math.max(maxResultSize, resultSize);
@Override public void clear() { getInMemoryQueue().clear(); this.totalResultSize = 0; this.maxResultSize = 0; this.mappingSize = 0; this.flushBuffer = false; this.flushedCount = 0; this.current = null; if (thisIterator != null) { thisIterator.close(); thisIterator = null; } for (SegmentQueueFileIterator iter : iterators) { iter.close(); } iterators.clear(); if (this.file != null) { file.delete(); file = null; } }
@Override public void clear() { getInMemoryQueue().clear(); this.totalResultSize = 0; this.maxResultSize = 0; this.mappingSize = 0; this.flushBuffer = false; this.flushedCount = 0; this.current = null; if (thisIterator != null) { thisIterator.close(); thisIterator = null; } for (SegmentQueueFileIterator iter : iterators) { iter.close(); } iterators.clear(); if (this.file != null) { file.delete(); file = null; } }
private T next() { T ret = null; if (!flushBuffer) { ret = getInMemoryQueue().poll(); } else { if (thisIterator == null) { thisIterator = new SegmentQueueFileIterator(); } ret = thisIterator.next(); } if (ret == null) { close(); } return ret; }
@Override public boolean offer(T e) { if (isClosed || flushBuffer) return false; boolean added = getInMemoryQueue().add(e); if (added) { try { flush(e); } catch (IOException ex) { throw new RuntimeException(ex); } } return added; }
private T next() { T ret = null; if (!flushBuffer) { ret = getInMemoryQueue().poll(); } else { if (thisIterator == null) { thisIterator = new SegmentQueueFileIterator(); } ret = thisIterator.next(); } if (ret == null) { close(); } return ret; }
@Override public boolean offer(T e) { if (isClosed || flushBuffer) return false; boolean added = getInMemoryQueue().add(e); if (added) { try { flush(e); } catch (IOException ex) { throw new RuntimeException(ex); } } return added; }
@Override public int size() { if (flushBuffer) return flushedCount; return getInMemoryQueue().size(); }
@Override public Iterator<T> iterator() { if (isClosed) return null; if (!flushBuffer) return getInMemoryQueue().iterator(); SegmentQueueFileIterator iterator = new SegmentQueueFileIterator(thisIterator); iterators.add(iterator); return iterator; }
@Override public Iterator<T> iterator() { if (isClosed) return null; if (!flushBuffer) return getInMemoryQueue().iterator(); SegmentQueueFileIterator iterator = new SegmentQueueFileIterator(thisIterator); iterators.add(iterator); return iterator; }
@Override public int size() { if (flushBuffer) return flushedCount; return getInMemoryQueue().size(); }
@Override public void clear() { getInMemoryQueue().clear(); this.totalResultSize = 0; this.maxResultSize = 0; this.mappingSize = 0; this.flushBuffer = false; this.flushedCount = 0; this.current = null; if (thisIterator != null) { thisIterator.close(); thisIterator = null; } for (SegmentQueueFileIterator iter : iterators) { iter.close(); } iterators.clear(); if (this.file != null) { file.delete(); file = null; } }
private T next() { T ret = null; if (!flushBuffer) { ret = getInMemoryQueue().poll(); } else { if (thisIterator == null) { thisIterator = new SegmentQueueFileIterator(); } ret = thisIterator.next(); } if (ret == null) { close(); } return ret; }
@Override public int size() { if (flushBuffer) return flushedCount; return getInMemoryQueue().size(); }