Additional refactoring and added serveral unit tests.
(cherry picked from commit a806f1540e6fc995410671f34382d14389ace90a)
Signed-off-by: John Blum <jblum@pivotal.io>
Removed the custom BeanPropertyAccessor implementation that was introduced to compensate for the removal of BeanWrapper in Spring Data Commons. That removal however was already preceded by an alternative way to obtain a PropertyAccessor via the PersistentEntity, which is what we're now doing.(cherry picked from commit 85c333dfc582719229fee006e538ff77f569a242)
Signed-off-by: John Blum <jblum@pivotal.io>
Added support for Spring Property Placeholders in the @Expiration annotation attributes to offer even more flexibility when configuring Region Entry values, application domain object Expiration policies and settings.
(cherry picked from commit 92f3c4e80839ed4034fe3229c68aebf90091c9a1)
Signed-off-by: John Blum <jblum@pivotal.io>
Added support for SpEL expressions in the @Expiration annotation attributes to offer even more flexibility when configuring Region Entry values, application domain object Expiration policies and settings.
(cherry picked from commit 6e73f52025509d9bf89a3baf25d21201b49728de)
Signed-off-by: John Blum <jblum@pivotal.io>
Added Javadoc comments to the AnnotationBasedExpiration class factory methods: forIdleTimeout() and forTimeToLive(). Also added a section in the Region configuration chapter of the Spring Data GemFire Reference Guide.
(cherry picked from commit 419eb8d8792124d7ad6f2e7e7da12f4013b3a429)
Signed-off-by: John Blum <jblum@pivotal.io>
Refactored the GemfireDataSourcePostProcessorTest class test cases based on the new implementation of the GemfireDataSourcePostProcessor BeanFactoryPostProcessor, which uses the GemFire internal GetRegionsFunction GemFire Function as a fallback when the ListRegionsOnServerFunction has not been registered or is not available. In addition, added 2 integration tests to test a Spring Data GemFire ClientCache connecting to a Spring-configured GemFire Server and non-Spring-configured GemFire Server asserting that client PROXY Region beans are appropriately created in the Spring ApplicationContext.
(cherry picked from commit 52e4be42402ee376df17d7ae036336548b1349c9)
Signed-off-by: John Blum <jblum@pivotal.io>
Adding unit tests for the GemfireDataSourcePostProcessor class.
(cherry picked from commit 0055a79a5d0119c0813f86a6504427d3d2d885a6)
Signed-off-by: John Blum <jblum@pivotal.io>
(cherry picked from commit 130cc4ca4c84a0151ba8f98194a3522ac7e34121)
Signed-off-by: John Blum <jblum@pivotal.io>
Added additional test cases for the CacheFactoryBean and ClientCacheFactoryBean based on SSL support. 1.7 SDG XSD cleanup.
Fixed the AsyncEventQueueWithListenerIntegrationTest class test case method failures involving GemFire 7.0.1 AEQ configuration attributes, like dispatcher-threads.
Fixed up and polished additional SDG test suite classes related to Pivotal GemFire functionality and features when ran with Apache Geode. Also introduced a GemfireFeature enumerated type to implement more fine-grained control of specific feature checking when attributes of XML namespace elements refer to Pivotal GemFire specific features.
First iteration of SDG's test suite ran with Apache Geode; Implemented Spring test framework, profile support to enable/disable tests based on the presence of either Apache Geode or Pivotal GemFire.
Fixed up and polished the GatewaySenderFactoryBean 'orderPolicy' configuration and validation changing the loosely, String-typed 'orderPolicy' property to use the GatewaySender.OrderPolicy enum.
Refactored Index definition around a 'single' QueryService instance obtained from the GemFire Cache instance and refactored existing tests and added new tests accordingly.
Removed the SDG XSD schema restriction requiring the use of at least 1 <gfe:locator> of <gfe:server> sub-element on the <gfe:pool> element. Also added a default Locator endpoint on localhost listening on the Locators default port of 10334 when no Locator or Server endpoints were specified, either by way of explicit use of the 'locators' or 'servers' attribute or a corresponding <gfe:locator> or <gfe:server> sub-element.
Removed the XSD enumeration restriction on the 'scope' attribute of the 'baseReplicatedRegionType' complexType, Region element definition in the SDG XSD allowing the use of property placeholders to specify a GemFire Cache Region's Scope for different distribution patterns. In addition, completely removed the 'scopeType' simpleType element definition in the SDG XSD.
Removed the XSD enumeration restriction on the 'type' attribute of the 'index' element definition inside the SDG XML namespace (XSD) allowing the use of property placeholders to specify the Index types on GemFire Cache Region Indexes.