@Override Request getNext() { if (!initialized) { initialized = true; return newBeginReliableWriteRequest(); } if (super.isEmpty()) { closed = true; if (cancelled) return newAbortReliableWriteRequest(); return newExecuteReliableWriteRequest(); } return super.getNext(); }