aeron-driver/src/main/java/io/aeron/driver/PublicationImage.java
public void onTimeEvent(final long timeNs, final long timesMs, final DriverConductor conductor)
    {
        switch (state)
        {
            case ACTIVE:
                checkUntetheredSubscriptions(timeNs, conductor);
                break;

            case INACTIVE:
                if (isDrained())
                {
                    state = State.LINGER;
                    timeOfLastStateChangeNs = timeNs;
                    conductor.transitionToLinger(this);
                }
                isTrackingRebuild = false;
                break;

            case LINGER:
                if ((timeOfLastStateChangeNs + imageLivenessTimeoutNs) - timeNs < 0)
                {
                    state = State.DONE;
                    conductor.cleanupImage(this);
                }
                break;
        }
    }
public void onTimeEvent(final long timeNs, final long timesMs, final DriverConductor conductor)
    {
        switch (state)
        {
            case ACTIVE:
                checkUntetheredSubscriptions(timeNs, conductor);
                break;

            case INACTIVE:
                if (isDrained())
                {
                    state = State.LINGER;
                    timeOfLastStateChangeNs = timeNs;
                    conductor.transitionToLinger(this);
                }
                isTrackingRebuild = false;
                break;

            case LINGER:
                if ((timeOfLastStateChangeNs + imageLivenessTimeoutNs) - timeNs < 0)
                {
                    state = State.DONE;
                    conductor.cleanupImage(this);
                }
                break;
        }
    }
public void onTimeEvent ( final long timeNs , final long timesMs , final DriverConductor conductor ) { switch ( state ) { case ACTIVE : checkUntetheredSubscriptions ( timeNs , conductor ) ; break ; case INACTIVE : if ( isDrained ( ) ) { state = State . LINGER ; timeOfLastStateChangeNs = timeNs ; conductor . transitionToLinger ( this ) ; } isTrackingRebuild = false ; break ; case LINGER : if ( ( timeOfLastStateChangeNs + imageLivenessTimeoutNs ) - timeNs < 0 ) { state = State . DONE ; conductor . cleanupImage ( this ) ; } break ; } }
{@inheritDoc}
{