Commit Graph

571 Commits

Author SHA1 Message Date
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
4121581dea Additional code refactoring and cleanup to the strongly-typed, Region Namespace tests. 2014-08-28 18:25:17 -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
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
7137c60485 Adding additional integration tests to test the configuration of concurrent, parallel AsyncEventQueues and GatewaySenders in GemFire 8 using Spring Data GemFire. 2014-08-15 17:06:02 -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
5931f1292f Fixed failing Spring GemFire integration tests (whem mocking is disabled) during the Nightly build: CacheNamespaceTest.testCacheWithAutoReconnectEnabled as well as all test cases in the DiskStoreAndEvictionRegionParsingTest test suite class. The test failures were caused by the introduction of the GemFire 8 dependency and new constraint enforcements. Also made additional modifications and cleanup to the CacheClusterConfigurationIntegrationTests and related classes/components and files in an attempt to get the test passing reliably in the Bamboo CI env. Seems a race condition is occuring between the time the Locator starts along with when the shared, cluster-based configuration service is actually running and when the GemFire Server date node (test class) requests the shared, persistent, cluster configuration from the Locator. 2014-08-14 14:30:35 -07:00
John Blum
dccdefe351 Additional changes to the CacheClusterConfigurationIntegrationTest to ascertain the test case (testClusterConfiguration) failure in the Bamboo CI environment. Modified ProcessExecutor to add to the Java launcher command-line of the forked Java process any System Properties that start with 'spring.gemfire.' Added a write(:File, contents:String) method to the FileUtils utility class. 2014-08-13 16:12:53 -07:00
John Blum
67c2df6107 Disabling the CacheClusterConfigurationTest.testClusterConfiguration test case method. 2014-08-13 01:26:19 -07:00
John Blum
a93941fac2 Changing test output/logging to using System.out instead of System.err. 2014-08-13 01:16:00 -07:00
John Blum
d47003c1cb Final changes to try and diagnose the CacheClusterConfigurationIntegrationTest failure (testClusterConfiguration test case) in the CI (Bamboo) build server environment in preperation for the 1.5.0.RC1 release of SDG. 2014-08-13 00:28:42 -07:00
John Blum
69df8e490c Changed the LocatorProcess to enable GemFire log writer output to appear in the build output. 2014-08-12 18:38:07 -07:00
John Blum
2f167430cb Removed references to Sun JDK Attach API classes (com.sun.tools.attach.VirtualMachine and com.sun.tools.attach.VirtualMachineDescriptor) used to assess whether a JVM-based process was still currently running. 2014-08-12 15:23:43 -07:00
John Blum
65b0793a03 Additional changes for SGF-226 supporting cluster-based configuration in GemFire 8 based on latest changes to the shared, persistent cluster configuration service in preparation for the 8.0 release. The recent changes in SDG for the shared, persistent cluster-based configuration feature are based on GemFire RC build number r48398. 2014-08-12 12:34:15 -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
0e3b8885d4 Fixed test issue in GatewayReceiverNamespaceTest class which caused a com.gemstone.gemfire.management.ManagementException: javax.management.InstanceAlreadyExistsException: GemFire:service=GatewayReceiver,type=Member,member=10.237.177.13(80647)-24771 when mocking was disabled and true integration testing was performed in the SDG build/test run. 2014-07-30 23:31:38 -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
1ed3ad4295 Fixed test issues in SubRegionNamespaceTest class involving Region fullPath property assertions. 2014-07-07 13:43:43 -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
ff11bd384d Fixed message in assertion and overrode the assertInitialized method of LazyWiringDeclarableSupport in the inner, static UserDataStoreCacheLoader test class to properly assert that the Spring defined DataSource dependency was properly configured. 2014-06-24 19:07:55 -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
98441b9a14 Modified the testLookupQueryService method to use pure mock objects to test the lookup behavior and conditional statements. Added an assertion to the testLookupLocalQueryService test case to verify that the RegionService.getQueryService() method is 'never' called. 2014-05-05 11:46:52 -07:00
John Blum
c15a430419 Fixed failing testLookupQueryService test when mocks are not enabled. In addition, assured the tests passes with or without mocks enabled. 2014-05-05 09:44:17 -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
4ae0be7860 Fixed compilation issues on JDK 7 and JDK 8. Refactored the DataSourceAdapter abstract, supporting class to implement the Java 7 DataSource.getParentLogger():Logger method. 2014-04-14 16:19:04 -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
c027e73131 Completes testing for SGF-260, which enables the Spring Data Commons @Id mapping annotation to be used on methods of domain interfaces or classes in addition to domain entity class fields. These test additions require DATACMNS-476 (https://jira.spring.io/browse/DATACMNS-476), with details in GitHub PR #76 (https://github.com/spring-projects/spring-data-commons/pull/76) to be included in the recent SDC 1.8.0.BUILD-SNAPSHOT, slated for the Spring Data Dijkstra release as M1. 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
John Blum
ba84061b48 Completed all testing and interface/functional changes for SGF-248 - Bootstrapping a Spring ApplicationContext with GemFire. 2014-03-25 11:04:10 -07:00
John Blum
5476837119 Renaming the SpringContextBootsrappingInitializerTest to SpringContextBootstrappingInitializerIntegrationTest to reflect the fact that the test class is actually an 'integration' test. Also renamed the cache-with-initializer.xml GemFire native configuration file to cache-with-spring-context-bootstrap-initializer.xml to indicate that we are using GemFire to bootstrap a Spring container. 2014-03-25 11:03:44 -07:00