void FlowWriter::manage(Invoker& invoker) { if(!consumed() && !_band.failed()) { try { if(_trigger.raise()) raiseMessage(); } catch(Exception& ex) { fail("FlowWriter can't deliver its data, "+ex.displayText()); throw; } } if(critical && _closed) throw Exception("Main flow writer closed, session is closing"); flush(); }
void RTMFPWriter::manage(Exception& ex, Invoker& invoker) { if(!consumed() && !_band.failed()) { if(_trigger.raise(ex)) raiseMessage(); if (ex) { fail("RTMFPWriter can't deliver its data, ",ex.error()); return; } } if(critical && state()==CLOSED) { ex.set(Exception::NETWORK, "Main flow writer closed, session is closing"); return; } flush(false); }