public void scheduleReconnect() {
        Runnable startRunnable = new Runnable() {
            @Override
            public void run() {
                try {
                    MBeanServerConnection serverConnection = getNetworkConnection();
                    if (notificationListener != null) {
                        serverConnection.addNotificationListener(objectName, notificationListener, getEndpointConfiguration().getNotificationFilter(), getEndpointConfiguration().getNotificationHandback());
                    }
                } catch (Exception e) {
                    log.warn("Failed to reconnect to JMX MBean server. {}", e.getMessage());
                    scheduleReconnect();
                }
            }
        };
        log.info("Reconnecting to MBean server {} in {} milliseconds.", getEndpointConfiguration().getServerUrl(), getEndpointConfiguration().getDelayOnReconnect());
        scheduledExecutor.schedule(startRunnable, getEndpointConfiguration().getDelayOnReconnect(), TimeUnit.MILLISECONDS);
    }
public void scheduleReconnect ( ) { Runnable startRunnable = new Runnable ( ) { @ Override public void run ( ) { try { MBeanServerConnection serverConnection = getNetworkConnection ( ) ; if ( notificationListener != null ) { serverConnection . addNotificationListener ( objectName , notificationListener , getEndpointConfiguration ( ) . getNotificationFilter ( ) , getEndpointConfiguration ( ) . getNotificationHandback ( ) ) ; } } catch ( Exception e ) { log . warn ( "Failed to reconnect to JMX MBean server. {}" , e . getMessage ( ) ) ; scheduleReconnect ( ) ; } } } ; log . info ( "Reconnecting to MBean server {} in {} milliseconds." , getEndpointConfiguration ( ) . getServerUrl ( ) , getEndpointConfiguration ( ) . getDelayOnReconnect ( ) ) ; scheduledExecutor . schedule ( startRunnable , getEndpointConfiguration ( ) . getDelayOnReconnect ( ) , TimeUnit . MILLISECONDS ) ; }
Schedules an attempt to re-initialize a lost connection after the reconnect delay