Example usage for org.springframework.session.data.gemfire AbstractGemFireOperationsSessionRepository.GemFireSession getMaxInactiveIntervalInSeconds

List of usage examples for org.springframework.session.data.gemfire AbstractGemFireOperationsSessionRepository.GemFireSession getMaxInactiveIntervalInSeconds

Introduction

In this page you can find the example usage for org.springframework.session.data.gemfire AbstractGemFireOperationsSessionRepository.GemFireSession getMaxInactiveIntervalInSeconds.

Prototype

public int getMaxInactiveIntervalInSeconds() 

Source Link

Document

Returns the maximum interval in seconds in which a Session can remain inactive before the Session is considered expired.

Usage

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void constructGemFireSessionWithDefaultInitialization() {
    final long beforeOrAtCreationTime = System.currentTimeMillis();

    AbstractGemFireOperationsSessionRepository.GemFireSession session = new AbstractGemFireOperationsSessionRepository.GemFireSession();

    assertThat(session.getId()).isNotNull();
    assertThat(session.getCreationTime()).isGreaterThanOrEqualTo(beforeOrAtCreationTime);
    assertThat(session.getLastAccessedTime()).isGreaterThanOrEqualTo(beforeOrAtCreationTime);
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(0);
    assertThat(session.getAttributeNames()).isNotNull();
    assertThat(session.getAttributeNames().isEmpty()).isTrue();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void constructGemFireSessionWithId() {
    final long beforeOrAtCreationTime = System.currentTimeMillis();

    AbstractGemFireOperationsSessionRepository.GemFireSession session = new AbstractGemFireOperationsSessionRepository.GemFireSession(
            "1");

    assertThat(session.getId()).isEqualTo("1");
    assertThat(session.getCreationTime()).isGreaterThanOrEqualTo(beforeOrAtCreationTime);
    assertThat(session.getLastAccessedTime()).isGreaterThanOrEqualTo(beforeOrAtCreationTime);
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(0);
    assertThat(session.getAttributeNames()).isNotNull();
    assertThat(session.getAttributeNames().isEmpty()).isTrue();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void constructGemFireSessionWithSession() {
    final long expectedCreationTime = 1L;
    final long expectedLastAccessTime = 2L;

    ExpiringSession mockSession = mockSession("2", expectedCreationTime, expectedLastAccessTime,
            MAX_INACTIVE_INTERVAL_IN_SECONDS);

    Set<String> expectedAttributedNames = asSet("attrOne", "attrTwo");

    given(mockSession.getAttributeNames()).willReturn(expectedAttributedNames);
    given(mockSession.getAttribute(eq("attrOne"))).willReturn("testOne");
    given(mockSession.getAttribute(eq("attrTwo"))).willReturn("testTwo");

    AbstractGemFireOperationsSessionRepository.GemFireSession gemfireSession = new AbstractGemFireOperationsSessionRepository.GemFireSession(
            mockSession);/*from w  w w  . ja v  a 2  s . c o  m*/

    assertThat(gemfireSession.getId()).isEqualTo("2");
    assertThat(gemfireSession.getCreationTime()).isEqualTo(expectedCreationTime);
    assertThat(gemfireSession.getLastAccessedTime()).isEqualTo(expectedLastAccessTime);
    assertThat(gemfireSession.getMaxInactiveIntervalInSeconds()).isEqualTo(MAX_INACTIVE_INTERVAL_IN_SECONDS);
    assertThat(gemfireSession.getAttributeNames()).isEqualTo(expectedAttributedNames);
    assertThat(String.valueOf(gemfireSession.getAttribute("attrOne"))).isEqualTo("testOne");
    assertThat(String.valueOf(gemfireSession.getAttribute("attrTwo"))).isEqualTo("testTwo");

    verify(mockSession, times(1)).getId();
    verify(mockSession, times(1)).getCreationTime();
    verify(mockSession, times(1)).getLastAccessedTime();
    verify(mockSession, times(1)).getMaxInactiveIntervalInSeconds();
    verify(mockSession, times(1)).getAttributeNames();
    verify(mockSession, times(1)).getAttribute(eq("attrOne"));
    verify(mockSession, times(1)).getAttribute(eq("attrTwo"));
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void createNewGemFireSession() {
    final long beforeOrAtCreationTime = System.currentTimeMillis();

    AbstractGemFireOperationsSessionRepository.GemFireSession session = AbstractGemFireOperationsSessionRepository.GemFireSession
            .create(120);/*from w w  w. ja  va2  s.c  o  m*/

    assertThat(session).isNotNull();
    assertThat(session.getId()).isNotNull();
    assertThat(session.getCreationTime()).isGreaterThanOrEqualTo(beforeOrAtCreationTime);
    assertThat(session.getLastAccessedTime()).isEqualTo(session.getCreationTime());
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(120);
    assertThat(session.getAttributeNames()).isNotNull();
    assertThat(session.getAttributeNames().isEmpty()).isTrue();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void fromExistingSession() {
    final long expectedCreationTime = 1L;
    final long expectedLastAccessedTime = 2L;

    ExpiringSession mockSession = mockSession("4", expectedCreationTime, expectedLastAccessedTime,
            MAX_INACTIVE_INTERVAL_IN_SECONDS);

    given(mockSession.getAttributeNames()).willReturn(Collections.<String>emptySet());

    AbstractGemFireOperationsSessionRepository.GemFireSession gemfireSession = AbstractGemFireOperationsSessionRepository.GemFireSession
            .from(mockSession);// w  ww. j  a  v  a  2 s  .  c  o m

    assertThat(gemfireSession).isNotNull();
    assertThat(gemfireSession.getId()).isEqualTo("4");
    assertThat(gemfireSession.getCreationTime()).isEqualTo(expectedCreationTime);
    assertThat(gemfireSession.getLastAccessedTime()).isNotEqualTo(expectedLastAccessedTime);
    assertThat(gemfireSession.getLastAccessedTime()).isGreaterThanOrEqualTo(expectedCreationTime);
    assertThat(gemfireSession.getLastAccessedTime()).isLessThanOrEqualTo(System.currentTimeMillis());
    assertThat(gemfireSession.getMaxInactiveIntervalInSeconds()).isEqualTo(MAX_INACTIVE_INTERVAL_IN_SECONDS);
    assertThat(gemfireSession.getAttributeNames()).isNotNull();
    assertThat(gemfireSession.getAttributeNames().isEmpty()).isTrue();

    verify(mockSession, times(1)).getId();
    verify(mockSession, times(1)).getCreationTime();
    verify(mockSession, times(1)).getLastAccessedTime();
    verify(mockSession, times(1)).getMaxInactiveIntervalInSeconds();
    verify(mockSession, times(1)).getAttributeNames();
    verify(mockSession, never()).getAttribute(anyString());
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void setGetAndRemoveAttribute() {
    AbstractGemFireOperationsSessionRepository.GemFireSession session = AbstractGemFireOperationsSessionRepository.GemFireSession
            .create(60);//  www . j a  v  a2  s . c o  m

    assertThat(session).isNotNull();
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(60);
    assertThat(session.getAttributeNames().isEmpty()).isTrue();

    session.setAttribute("attrOne", "testOne");

    assertThat(session.getAttributeNames()).isEqualTo(asSet("attrOne"));
    assertThat(String.valueOf(session.getAttribute("attrOne"))).isEqualTo("testOne");
    assertThat(session.getAttribute("attrTwo")).isNull();

    session.setAttribute("attrTwo", "testTwo");

    assertThat(session.getAttributeNames()).isEqualTo(asSet("attrOne", "attrTwo"));
    assertThat(String.valueOf(session.getAttribute("attrOne"))).isEqualTo("testOne");
    assertThat(String.valueOf(session.getAttribute("attrTwo"))).isEqualTo("testTwo");

    session.setAttribute("attrTwo", null);

    assertThat(session.getAttributeNames()).isEqualTo(asSet("attrOne"));
    assertThat(String.valueOf(session.getAttribute("attrOne"))).isEqualTo("testOne");
    assertThat(session.getAttribute("attrTwo")).isNull();

    session.removeAttribute("attrOne");

    assertThat(session.getAttribute("attrOne")).isNull();
    assertThat(session.getAttribute("attrTwo")).isNull();
    assertThat(session.getAttributeNames().isEmpty()).isTrue();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void isExpiredIsFalseWhenMaxInactiveIntervalIsNegative() {
    final int expectedMaxInactiveIntervalInSeconds = -1;

    AbstractGemFireOperationsSessionRepository.GemFireSession session = AbstractGemFireOperationsSessionRepository.GemFireSession
            .create(expectedMaxInactiveIntervalInSeconds);

    assertThat(session).isNotNull();/*  w  w  w  .j a  v a 2 s . c o  m*/
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(expectedMaxInactiveIntervalInSeconds);
    assertThat(session.isExpired()).isFalse();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void isExpiredIsFalseWhenSessionIsActive() {
    final int expectedMaxInactiveIntervalInSeconds = (int) TimeUnit.HOURS.toSeconds(2);

    AbstractGemFireOperationsSessionRepository.GemFireSession session = AbstractGemFireOperationsSessionRepository.GemFireSession
            .create(expectedMaxInactiveIntervalInSeconds);

    assertThat(session).isNotNull();//from w w  w.  j  av a 2 s  .  c o  m
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(expectedMaxInactiveIntervalInSeconds);

    final long now = System.currentTimeMillis();

    session.setLastAccessedTime(now);

    assertThat(session.getLastAccessedTime()).isEqualTo(now);
    assertThat(session.isExpired()).isFalse();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void isExpiredIsTrueWhenSessionIsInactive() {
    final int expectedMaxInactiveIntervalInSeconds = 60;

    AbstractGemFireOperationsSessionRepository.GemFireSession session = AbstractGemFireOperationsSessionRepository.GemFireSession
            .create(expectedMaxInactiveIntervalInSeconds);

    assertThat(session).isNotNull();//from  www  .jav  a 2 s.co m
    assertThat(session.getMaxInactiveIntervalInSeconds()).isEqualTo(expectedMaxInactiveIntervalInSeconds);

    final long twoHoursAgo = (System.currentTimeMillis() - TimeUnit.HOURS.toMillis(2));

    session.setLastAccessedTime(twoHoursAgo);

    assertThat(session.getLastAccessedTime()).isEqualTo(twoHoursAgo);
    assertThat(session.isExpired()).isTrue();
}

From source file:org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepositoryTest.java

@Test
public void sessionToData() throws Exception {
    @SuppressWarnings("serial")
    AbstractGemFireOperationsSessionRepository.GemFireSession session = new AbstractGemFireOperationsSessionRepository.GemFireSession(
            "1") {
        @Override//from  w ww .ja  va2s  .c o m
        void writeObject(Object obj, DataOutput out) throws IOException {
            assertThat(obj)
                    .isInstanceOf(AbstractGemFireOperationsSessionRepository.GemFireSessionAttributes.class);
            assertThat(out).isNotNull();
        }
    };

    session.setLastAccessedTime(123L);
    session.setMaxInactiveIntervalInSeconds(MAX_INACTIVE_INTERVAL_IN_SECONDS);
    session.setPrincipalName("jblum");

    DataOutput mockDataOutput = mock(DataOutput.class);

    session.toData(mockDataOutput);

    verify(mockDataOutput, times(1)).writeUTF(eq("1"));
    verify(mockDataOutput, times(1)).writeLong(eq(session.getCreationTime()));
    verify(mockDataOutput, times(1)).writeLong(eq(session.getLastAccessedTime()));
    verify(mockDataOutput, times(1)).writeInt(eq(session.getMaxInactiveIntervalInSeconds()));
    verify(mockDataOutput, times(1)).writeInt(eq("jblum".length()));
    verify(mockDataOutput, times(1)).writeUTF(eq(session.getPrincipalName()));
}