@Override public boolean keepalive() { boolean result = false; for (Iterator<Entry<Member,NioSender>> i = nioSenders.entrySet().iterator(); i.hasNext();) { Map.Entry<Member, NioSender> entry = i.next(); NioSender sender = entry.getValue(); if ( sender.keepalive() ) { //nioSenders.remove(entry.getKey()); i.remove(); result = true; } else { try { sender.read(); }catch ( IOException x ) { sender.disconnect(); sender.reset(); //nioSenders.remove(entry.getKey()); i.remove(); result = true; }catch ( Exception x ) { log.warn("Error during keepalive test for sender:"+sender,x); } } } //clean up any cancelled keys if ( result ) try { selector.selectNow(); }catch (Exception e){/*Ignore*/} return result; } }
public boolean keepalive() { boolean result = false; for ( Iterator i = nioSenders.entrySet().iterator(); i.hasNext(); ) { Map.Entry entry = (Map.Entry)i.next(); NioSender sender = (NioSender)entry.getValue(); if ( sender.keepalive() ) { //nioSenders.remove(entry.getKey()); i.remove(); result = true; } else { try { sender.read(null); }catch ( IOException x ) { sender.disconnect(); sender.reset(); //nioSenders.remove(entry.getKey()); i.remove(); result = true; }catch ( Exception x ) { log.warn("Error during keepalive test for sender:"+sender,x); } } } //clean up any cancelled keys if ( result ) try { selector.selectNow(); }catch (Exception ignore){} return result; }
@Override public boolean keepalive() { boolean result = false; for ( Iterator<Entry<Member, NioSender>> i = nioSenders.entrySet().iterator(); i.hasNext();) { Map.Entry<Member, NioSender> entry = i.next(); NioSender sender = entry.getValue(); if ( sender.keepalive() ) { //nioSenders.remove(entry.getKey()); i.remove(); result = true; } else { try { sender.read(null); }catch ( IOException x ) { sender.disconnect(); sender.reset(); //nioSenders.remove(entry.getKey()); i.remove(); result = true; }catch ( Exception x ) { log.warn("Error during keepalive test for sender:"+sender,x); } } } //clean up any cancelled keys if ( result ) try { selector.selectNow(); }catch (Exception e){/*Ignore*/} return result; }
@Override public boolean keepalive() { boolean result = false; for (Iterator<Entry<Member,NioSender>> i = nioSenders.entrySet().iterator(); i.hasNext();) { Map.Entry<Member, NioSender> entry = i.next(); NioSender sender = entry.getValue(); if ( sender.keepalive() ) { //nioSenders.remove(entry.getKey()); i.remove(); result = true; } else { try { sender.read(); }catch ( IOException x ) { sender.disconnect(); sender.reset(); //nioSenders.remove(entry.getKey()); i.remove(); result = true; }catch ( Exception x ) { log.warn(sm.getString("parallelNioSender.error.keepalive", sender),x); } } } //clean up any cancelled keys if ( result ) try { selector.selectNow(); }catch (Exception e){/*Ignore*/} return result; } }