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 })
@ConditionalOnMissingBean(SessionRepositoryFilter.class)
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
@EnableGemFireHttpSession
@EnableGemFireHttpSession(poolName = "DEFAULT")
@Import(EnableSubscriptionConfiguration.class)
@SuppressWarnings("unused")
public class SpringSessionAutoConfiguration {

View File

@@ -66,10 +66,7 @@ import org.springframework.test.context.junit4.SpringRunner;
*/
@RunWith(SpringRunner.class)
@SpringBootTest(
properties = {
"spring.session.data.gemfire.cache.client.pool.name=DEFAULT",
"spring.session.data.gemfire.cache.client.region.shortcut="
},
properties = "spring.session.data.gemfire.cache.client.region.shortcut=",
webEnvironment = SpringBootTest.WebEnvironment.MOCK
)
@SuppressWarnings("unused")
@@ -85,6 +82,32 @@ public class AutoConfiguredSessionCachingIntegrationTests extends IntegrationTes
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
@SuppressWarnings("unchecked")
public void sessionRegionExists() {
@@ -99,6 +122,8 @@ public class AutoConfiguredSessionCachingIntegrationTests extends IntegrationTes
assertThat(sessionRegion.getName()).isEqualTo(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME);
assertThat(sessionRegion.getFullPath())
.isEqualTo(RegionUtils.toRegionPath(GemFireHttpSessionConfiguration.DEFAULT_SESSION_REGION_NAME));
assertThat(sessionRegion.getAttributes()).isNotNull();
assertThat(sessionRegion.getAttributes().getPoolName()).isNotEqualTo("gemfirePool");
RegionAttributes<Object, Session> sessionRegionAttributes = sessionRegion.getAttributes();

View File

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

View File

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