Configures the Pool used by the Spring Session bits and starter to use the 'DEFAULT' Pool.

Resolves gh-68.
This commit is contained in:
John Blum
2019-12-03 14:39:41 -08:00
parent 452ee7d48f
commit 899d71f9fd
4 changed files with 31 additions and 10 deletions

View File

@@ -83,7 +83,7 @@ import org.springframework.util.StringUtils;
@ConditionalOnClass({ GemFireCache.class, GemFireHttpSessionConfiguration.class }) @ConditionalOnClass({ GemFireCache.class, GemFireHttpSessionConfiguration.class })
@ConditionalOnMissingBean(SessionRepositoryFilter.class) @ConditionalOnMissingBean(SessionRepositoryFilter.class)
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET) @ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
@EnableGemFireHttpSession @EnableGemFireHttpSession(poolName = "DEFAULT")
@Import(EnableSubscriptionConfiguration.class) @Import(EnableSubscriptionConfiguration.class)
@SuppressWarnings("unused") @SuppressWarnings("unused")
public class SpringSessionAutoConfiguration { public class SpringSessionAutoConfiguration {

View File

@@ -66,10 +66,7 @@ import org.springframework.test.context.junit4.SpringRunner;
*/ */
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest( @SpringBootTest(
properties = { properties = "spring.session.data.gemfire.cache.client.region.shortcut=",
"spring.session.data.gemfire.cache.client.pool.name=DEFAULT",
"spring.session.data.gemfire.cache.client.region.shortcut="
},
webEnvironment = SpringBootTest.WebEnvironment.MOCK webEnvironment = SpringBootTest.WebEnvironment.MOCK
) )
@SuppressWarnings("unused") @SuppressWarnings("unused")
@@ -85,6 +82,32 @@ public class AutoConfiguredSessionCachingIntegrationTests extends IntegrationTes
assertThat(this.applicationContext.getBean(GemFireHttpSessionConfiguration.class)).isNotNull(); assertThat(this.applicationContext.getBean(GemFireHttpSessionConfiguration.class)).isNotNull();
} }
@Test
public void sessionConfigurationIsCorrect() {
GemFireHttpSessionConfiguration sessionConfiguration =
this.applicationContext.getBean(GemFireHttpSessionConfiguration.class);
assertThat(sessionConfiguration).isNotNull();
assertThat(sessionConfiguration.getClientRegionShortcut())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_CLIENT_REGION_SHORTCUT);
assertThat(sessionConfiguration.isExposeConfigurationAsProperties())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_EXPOSE_CONFIGURATION_AS_PROPERTIES);
assertThat(sessionConfiguration.getIndexableSessionAttributes())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_INDEXABLE_SESSION_ATTRIBUTES);
assertThat(sessionConfiguration.getMaxInactiveIntervalInSeconds())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_MAX_INACTIVE_INTERVAL_IN_SECONDS);
assertThat(sessionConfiguration.getPoolName()).isEqualTo("DEFAULT");
assertThat(sessionConfiguration.getServerRegionShortcut())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SERVER_REGION_SHORTCUT);
assertThat(sessionConfiguration.getSessionExpirationPolicyBeanName().orElse(""))
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_EXPIRATION_POLICY_BEAN_NAME);
assertThat(sessionConfiguration.getSessionRegionName())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME);
assertThat(sessionConfiguration.getSessionSerializerBeanName())
.isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_SERIALIZER_BEAN_NAME);
}
@Test @Test
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public void sessionRegionExists() { public void sessionRegionExists() {
@@ -99,6 +122,8 @@ public class AutoConfiguredSessionCachingIntegrationTests extends IntegrationTes
assertThat(sessionRegion.getName()).isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME); assertThat(sessionRegion.getName()).isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME);
assertThat(sessionRegion.getFullPath()) assertThat(sessionRegion.getFullPath())
.isEqualTo(RegionUtils.toRegionPath(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME)); .isEqualTo(RegionUtils.toRegionPath(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME));
assertThat(sessionRegion.getAttributes()).isNotNull();
assertThat(sessionRegion.getAttributes().getPoolName()).isNotEqualTo("gemfirePool");
RegionAttributes<Object, Session> sessionRegionAttributes = sessionRegion.getAttributes(); RegionAttributes<Object, Session> sessionRegionAttributes = sessionRegion.getAttributes();

View File

@@ -93,10 +93,7 @@ import org.springframework.web.client.RestTemplate;
AutoConfiguredSessionRemoteCachingIntegrationTests.SessionGemFireClientConfiguration.class, AutoConfiguredSessionRemoteCachingIntegrationTests.SessionGemFireClientConfiguration.class,
AutoConfiguredSessionRemoteCachingIntegrationTests.TestWebApplication.class AutoConfiguredSessionRemoteCachingIntegrationTests.TestWebApplication.class
}, },
properties = { properties = "spring.session.data.gemfire.cache.client.region.shortcut=PROXY",
"spring.session.data.gemfire.cache.client.pool.name=DEFAULT",
"spring.session.data.gemfire.cache.client.region.shortcut=PROXY"
},
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT
) )
@SuppressWarnings("unused") @SuppressWarnings("unused")

View File

@@ -60,7 +60,6 @@ import org.springframework.test.context.junit4.SpringRunner;
*/ */
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest(properties = { @SpringBootTest(properties = {
"spring.session.data.gemfire.cache.client.pool.name=DEFAULT",
"spring.session.data.gemfire.cache.client.region.shortcut=LOCAL", "spring.session.data.gemfire.cache.client.region.shortcut=LOCAL",
"spring.session.timeout=1", "spring.session.timeout=1",
}, webEnvironment = SpringBootTest.WebEnvironment.MOCK) }, webEnvironment = SpringBootTest.WebEnvironment.MOCK)