public synchronized boolean maybeUpdateGetRequestTimestamp(long currentTime) {
        long lastRequestTimestamp = Math.max(lastGetRequestTimestamp, lastPushRequestTimestamp);
        long timeElapsedSinceLastMsg = currentTime - lastRequestTimestamp;
        if (timeElapsedSinceLastMsg >= pushIntervalMs) {
            lastGetRequestTimestamp = currentTime;
            return true;
        }
        return false;
    }
@Test
    public void testMaybeUpdateGetRequestWithImmediateRetryFail() {
        assertTrue(clientInstance.maybeUpdateGetRequestTimestamp(System.currentTimeMillis()));
        // Second request should be rejected as time since last request is less than the push interval.
        assertFalse(clientInstance.maybeUpdateGetRequestTimestamp(System.currentTimeMillis()));
    }