class CaffeineRestTemplateCookieStore implements RestTemplateCookieStore {

    @Override
    public boolean remove( @Nonnull String authorizationHeaderValue, @Nonnull String cookieValue )
    {
        final String currentCookieValue = cookieStore.getIfPresent( authorizationHeaderValue );
        // may have been changed again, but cache does not provide operations to make thread safe operations
        if ( (currentCookieValue != null) && currentCookieValue.equals( cookieValue ) )
        {
            cookieStore.invalidate( authorizationHeaderValue );
            return true;
        }
        return false;
    }

    public  CaffeineRestTemplateCookieStore();
    public  CaffeineRestTemplateCookieStore( long maxCookieLifetimeMillis );

}