applies action to a randomly picked routerstub that 's connected concode_field_sep Protocol owner concode_elem_sep Set<Target> reconnect_list concode_elem_sep String cluster_name concode_elem_sep String logical_name concode_elem_sep IpAddress router_addr concode_elem_sep RouterStub.StubReceiver receiver concode_elem_sep Log log concode_elem_sep Address local_addr concode_elem_sep long serialVersionUID concode_elem_sep List<RouterStub> stubs concode_elem_sep ConcurrentMap<RouterStub,Future<?>> futures concode_elem_sep Future<?> reconnector_task concode_elem_sep TimeScheduler timer concode_elem_sep boolean use_nio concode_elem_sep long interval concode_elem_sep IpAddress bind_addr concode_elem_sep PhysicalAddress phys_addr concode_field_sep boolean add concode_elem_sep boolean add concode_elem_sep int compare concode_elem_sep RouterStub createAndRegisterStub concode_elem_sep String printStubs concode_elem_sep RouterStubManager emptyGossipClientStubManager concode_elem_sep void forEach concode_elem_sep RouterStubManager useNio concode_elem_sep void run concode_elem_sep void moveStubToReconnects concode_elem_sep boolean remove concode_elem_sep boolean remove concode_elem_sep void destroyStubs concode_elem_sep void startReconnector concode_elem_sep String print concode_elem_sep boolean reconnect concode_elem_sep RouterStub unregisterStub concode_elem_sep void stopReconnector concode_elem_sep RouterStub find concode_elem_sep int hashCode concode_elem_sep void connectStubs concode_elem_sep String printReconnectList concode_elem_sep boolean equals concode_elem_sep void closed concode_elem_sep String toString concode_elem_sep void disconnectStubs
void function ( Consumer < RouterStub > arg0 ) { while ( ! stubs . isEmpty ( ) ) { RouterStub loc0 = Util . pickRandomElement ( stubs ) ; if ( loc0 != null && loc0 . isConnected ( ) ) { arg0 . accept ( loc0 ) ; return ; } } }