Commit Graph

408 Commits

Author SHA1 Message Date
John Blum
3d08dc1eaa SGF-343 - Optimize the SDG implementation of CrudRepository.save(Iterable<S> enttiies) to use GemFire's Region.putAll(Map<K, V> values) operation. 2014-10-16 13:59:36 -07:00
John Blum
664d53447f SGF-338 - Both <gfe:custom-entry-ttl> and <gfe:custom-entry-tti> SDG XML namespace elements allow for more than one 'CustomExpiry' bean to be set in the Region Expiration Attributes although GemFire only allows one! 2014-10-07 15:37:15 -07:00
John Blum
796226d0de SGF-331 - Pull common WAN attributes from GatewaySenders and AsyncEventQueues in the SDG XSD into the 'commonWANQueueAttributes' attributes group. 2014-10-06 22:09:49 -07:00
John Blum
fccb737849 SGF-332 - Add support for the GatewaySender 'eventSubstitutionFilter' property in the SDG XSD and GatewaySenderFactoryBean API. 2014-09-25 21:39:23 -07:00
John Blum
34ae38ef23 SGF-328 - Add missing 'hostname-for-senders' attribute on the <gfe:gateway-receiver> element in the SDG XML namespace (XSD). 2014-09-24 17:32:41 -07:00
John Blum
6efb775c1e SGF-333 - The SpringContextBootstrappingInitializer needs to handle the case when it's init(:Properties) method maybe called more than once on initialization. 2014-09-20 18:41:29 -07:00
John Blum
acdd0c85bf SGF-327 - Avoid setting null values with GemFire's Cache Region put(key, value) operation when GemFire is used as the caching provider in Spring's Cache Abstraction (@Cacheable). 2014-09-18 16:18:42 -07:00
John Blum
93eb3b1fef SGF-323 - Add support for GemFire 8's DiskStore 'diskUsageCriticalPercentage' and 'diskUsageWarningPercentage' properties in the SDG XML namespace (XSD) and DiskStoreFactoryBean API. 2014-09-04 18:32:28 -07:00
Oliver Gierke
68fea882f6 SGF-317 - Improved GemfireCache for Spring 4.1 compatibility.
Added putIfAbsent(…) to GemfireCache to make sure we can compile against Spring 4.1. Improved the implementation of get(Object, Class<T>) to adhere to the contract defined by the interface.
2014-09-04 10:20:33 +02:00
John Blum
cc9c724fbc Adding a simple test case to assert the contract and functional behavior of the <gfe:auto-region-lookup/> element when used in Spring context config coupled with GemFire's native cache.xml configuration file. 2014-09-01 13:56:18 -07:00
John Blum
920e53794e Initial implementation of JIRA improvement SGF-191 enabling Spring Data GemFire to lookup and auto register all GemFire Cache Regions not explicitly defined in the Spring context as Spring beans. 2014-09-01 13:55:02 -07:00
John Blum
4bff3d9f7a Completed Client Cache Region Template testing for JIRA feature requests SGF-207 and SGF-254 adding support for template-defined Regions. In addition, fixed JIRA bug SGF-310 pertaining to the missing 'concurrency-level' attribute on the <gfe:client-region> element in the SDG XSD as well as SGF-311 involving the ClientRegionFactoryBean not properly setting the 'concurrencyChecksEnabled' property on GemFire's ClientRegionFactory class. 2014-08-29 12:25:52 -07:00
John Blum
5919d87658 Completed Peer Cache Region Template testing for JIRA feature requests SGF-207 and SGF-254 adding support for template-defined Regions. 2014-08-29 12:21:10 -07:00
John Blum
dab04833c9 Code refactoring and cleanup related to SGF-207 and SGF-254, Region Templates. 2014-08-29 12:19:53 -07:00
John Blum
2f66eca99b Additional work and changes for JIRA feature requests SGF-207 and SGF-254 to enable developers with the ability to create Region templates to model attributes and configuration meta-data common to multiple, strongly-typed GemFire Region types (e.g. REPLICATE, PARTITION, etc). 2014-08-29 12:16:58 -07:00
John Blum
5d27c19ef5 Initial implementation and tests for JIRA feature requests SGF-207 and SGF-254 supporting inheritable Region templates when defining GemFire Regions using Spring Data GemFire XML configuration meta-data. This feature allows common Region configuration and attribute values to be defined once and then shared across multiple Region bean definitions in the Spring context for added convenience. 2014-08-29 12:15:28 -07:00
John Blum
84be164f60 Implements JIRA feature request SGF-309 adding support for compression of GemFire Cache Region data using the new Compressor attribute and property in the RegionAttributes API. 2014-08-28 15:32:11 -07:00
John Blum
b9a966e11a Fixes JIRA bug SGF-312 allowing developers to declare/define and register multiple PartitionListeners on a Partitioned Region using nested inner bean and bean reference elements inside the <gfe:partition-listener> sub-element of the <gfe:partitioned-region> element in the SDG XML namespace (XSD). 2014-08-27 23:32:38 -07:00
John Blum
299dd49a79 Cleanup to the SDG dependency repository references, preferring Spring IO Repos over external repos (such as dist.gemstone.com). Added conditional logic around the GemFire 8 Distribution Configuration Properties in the CacheFactoryBean in an effort to enable SDG 1.5 to work with GemFire 7.x versions and earlier. Refactored the GemfireUtils class's logic for detecting GemFire Versions at runtime. 2014-08-19 17:56:49 -07:00
John Blum
96cb3775fb Implements JIRA improvement SGF-223 enabling Spring Data GemFire to create GemFire Disk Store directory locations automatically (based on nested <gfe:disk-dir> elements inside the <gfe:disk-store> element specified in Spring config) without the user having to create the disk directories for the location manually, unlike GemFire's native configuration options (such as cache.xml). 2014-08-15 21:47:54 -07:00
John Blum
6e8353a6e2 Implements JIRA task SGF-269 removing the validation logic and restriction on creating concurrent, parallel GatewaySenders in GemFire, which is supported in GemFire 8 and above. 2014-08-15 16:27:15 -07:00
John Blum
0f0e6a7b52 Implements JIRA task SGF-270 removing the validation logic and restriction on creating concurrent, parallel AsyncEventQueues in GemFire, which is supported in GemFire 8 and above. 2014-08-15 16:18:54 -07:00
John Blum
6cb2301c32 Additional changes for JIRA feature request SGF-226 supporting GemFire's new Cluster-based Configuration Service. Renamed the CacheUsingSharedConfigurationIntegrationTest class to CacheClusterConfigurationIntegrationTest and added an additional test case to assert the default, non-use of cluster configuration behavior. Renamed GemFire System properties references for enabling/disabling Cluster Config based revision r48252 in GemFire 8. 2014-08-11 17:00:08 -07:00
John Blum
f427125669 Implements JIRA feature request SGF-226 enabling Spring Data GemFire to retrieve the shared, persistent cluster configuration from a GemFire 8 Locator Shared Configuration service when the SDG configured peer cache member joins the cluster. 2014-08-11 17:00:07 -07:00
John Blum
76aa819be7 Implements JIRA feature request SGF-227 adding support for GemFire 8.0's auto-reconnect functionality on forced disconnects. 2014-08-11 17:00:07 -07:00
John Blum
358aa55304 Upgrades Spring Data GemFire 1.5 to GemFire 7.5. 2014-08-11 17:00:07 -07:00
John Blum
324b25e5cf Fixes JIRA issue SGF-304 changing the GroupMembersFunctionExecution class to call the correct GemFire com.gemstone.gemfire.cache.execute.FunctionService method, onMembers(groups:String[]) (plural). Performed additional refactoring in related classes. 2014-08-11 16:21:58 -07:00
John Blum
48e874c852 Re-implemented the toObjectArray method using System.arraycopy. 2014-07-08 00:16:27 -07:00
John Blum
e7059a370c Fixes JIRA issue SGF-297 enabling Spring Data GemFire POJO, Function annotated methods to be invoked from Gfsh when arguments are injected during Function argument resolution. 2014-07-07 23:50:45 -07:00
John Blum
db066287b0 Completes JIRA improvement SGF-294 allowing GemFire Gateway Receivers to be configured for manual start using the Spring Data GemFire XML namespace. This commit completes the improvement in the 1.4 XSD first in order to backport the feature to the SDG 1.4.2 release. 2014-07-07 18:29:32 -07:00
John Blum
1df9454524 Fixes JIRA issue SGF-295 allowing all Eviction Policy Actions (LOCAL_DESTROY, OVERFLOW_TO_DISK) to be specified on Local Regions configured using the Spring Data GemFire XML namespace. This commit resolves the issue in the 1.4 XSD first in order to backport the fix to the SDG 1.4.2 release. 2014-07-07 13:07:51 -07:00
John Blum
8cc46ac0fc Upgraded Spring Data GemFire 1.5 to Spring Framework 4.0.5. 2014-07-02 20:18:52 -07:00
John Blum
1920ce4ba1 Fixes JIRA issue SGF-290 handling custom OQL statements specified with an @Query annotated Repository method that returns neither a Collection nor a Entity-based result, such as the case with SELECT count(*) FROM /Region ... based queries returning an Integer count. 2014-06-16 20:12:50 -07:00
John Blum
17ec3138c8 Completed SGF-272 refactoring SDG API Javadoc comments as well as cleaning up all Javadoc warnings reported by the SDG Gradle-based build when building on Java 7 and Java 8. 2014-05-07 19:47:58 -07:00
John Blum
14754be03e Implements SGF-274 removing the use of temporary callback objects passed to the 'templated' execute method for each operation implementation in order to reduce the memory footprint, especially in the context of Repositories. 2014-05-02 14:51:08 -07:00
John Blum
426c110187 Implements JIRA improvement SGF-281 involving the addition of logic in SDG to avoid setting the Disk Store Name on the RegionAttributes used to a create a Region in the RegionFactoryBean when the Region is neither 'persistent' nor has an Eviction policy of Overflow To Disk. GemFire erroneously throws an IllegalStateException when the Region references a Disk Store but is not configured with persistence or overflow, which should not matter. Also fixed JIRA issues SGF-282 where the Eviction 'action' is ignored for PARTITION Regions when the 'threshold' is not set. 2014-04-28 15:56:20 -07:00
John Blum
0c25e14be9 Fixes JIRA issue SGF-273 - OrderBy (static) and Sort parameter (dynamic) Repository Queries do not work. 2014-04-28 15:37:30 -07:00
John Blum
8fd0b0bf6d Fixes JIRA issue SGF-277 - OQL Join in Repository Interface. 2014-04-28 14:21:45 -07:00
John Blum
edca5232a4 Fixes JIRA issues SGF-271 - <cq-listener-container> element is missing the 'auto-startup' attribute, SGF-275 - <cq-listener-container> element's phase attribute is ignored, SGF-278 - ContinuousQueryListenerContainer class's 'taskExecutor' property is not set properly by the GemfireListenerContainerParser, SGF-279 - <cq-listener-container> element is missing the 'error-handler' attribute, and finally, SGF-280 - the ContinuousQueryListenerContainer class is not Thread-safe. 2014-04-28 13:34:44 -07:00
John Blum
83fde996b5 Merge branch 'sgf268' of github.com:jxblum/spring-data-gemfire into jxblum-pr64 2014-04-21 11:50:19 -07:00
John Blum
163e36497c Fixes JIRA issues SGF-271 - <cq-listener-container> element missing the 'auto-startup' attribute, SGF-275 - <cq-listener-container> element's phase attribute is ignored, SGF-278 - ContinuousQueryListenerContainer class's 'taskExecutor' property is not set properly by the GemfireListenerContainerParser, SGF-279 - <cq-listener-container> element is missing the 'error-handler' attribute, and finally, SGF-280 - the ContinuousQueryListenerContainer class is not Thread-safe. 2014-04-18 23:01:02 -07:00
John Blum
dc289b478e Refactored and cleaned up Javadoc. 2014-04-16 23:30:06 -07:00
John Blum
e6066d60c0 Declared and implemented the findAll(:Sort) method from the SDC's PagingAndSortingRepository abstraction in SDG given GemFire supports ORDER BY in Queries. 2014-04-16 21:11:54 -07:00
John Blum
7c354f59d6 Refactored and cleaned up deprecated and unchecked/unsafe Java and GemFire API usage. 2014-04-16 13:22:59 -07:00
John Blum
dbf593d409 Added test cases to test and assert the correct behavior of the StringBasedGemfireRepositoryQuery.toCollection(..) method for handling various GemFire Select Query result types. 2014-04-16 09:36:06 -07:00
John Blum
6ad31ba619 Resolves JIRA improvement SGF-265, appropriately handling the 'new' Query result type (ResultsCollectionPdxDeserializerWrapper) introduced and returned by GemFire's Querying infrastructure in 7.0.2, breaking backwards compatibility with 7.0.1 for certain types of Queries. 2014-04-16 08:56:45 -07:00
John Blum
d400c78fb6 Completes JIRA ticket SGF-260 adding support for @Id annotated domain entity interface and class methods in addition to domain entity class fields. This change replaces the DefaultGemfireEntityInformation class's PersistentEntityBasedEntityInformation implementation of the EntityInformation interface to use the new Spring Data Commons org.springframework.data.repository.core.support.PersistentEntityInformation class. Now, DefaultGemfireEntityInformation extends PersistentEntityInformation directly and uses the GemfirePersistentEntity mapping meta-data to retrieve information about the domain entity's id. 2014-03-27 12:44:25 -07:00
John Blum
7f5eb6edb6 Additional changes for SGF-260 supporting @Id annotations on domain entity class or interface methods in addition to domain entity class fields. This change replaces the use of the org.springframework.data.repository.core.support.ReflectionEntityInformation in the DefaultGemfireEntityInformation class with an internal implementation of SDC EntityInformation interface based on the GemfirePersistentEntity instance passed to the DefaultGemfireEntityInformation class during construction. 2014-03-26 17:04:03 -07:00
John Blum
321728d7d5 Added appropriate synchronization around application event notification using the Spring ApplicationContext and ApplicationEventMulticaster. In addition, added support for late ContextRefreshedEvent notifications in the case where ApplicationListeners are registered after the ConfigurableApplicationContext has already been constructed, configured, initialized and refreshed. This latest feature is meant to support updates planned in the 7.5 GemFire release to the Gfsh 'deploy' command dynamically deploying and initializing Declarables in the JAR file. It is possible that Declarables are created and initialized in an unspecified order given there is not equivalent to Spring's Ordered interface in GemFire. 2014-03-25 11:04:31 -07:00
John Blum
f6ccc09c23 Added support to the SpringContextBootstrappingInitializer class for component scanning given a set of base packages to scan. Refactored LazyWiringDeclarableSupport to implement the DisposableBean interface in order for any extending bean component to unregister itself from the SpringContextBootstrappingInitializer to stop receiving ApplicationContext event notifications when destroyed. Fully tested the application component scanning and configuration using Annotations and JavaConfig-based configuration, uplifting some of the application components (UserDao, UserService, etc) from the integration test and adding a UserApplicationConfiguration @Configuration component in order to test this functionlity properly. 2014-03-25 11:04:31 -07:00