Commit Graph

615 Commits

Author SHA1 Message Date
John Blum
e0b11fc4d7 SGF-473 - Fix CI build test failures.
(cherry picked from commit adaf6903d7)
Signed-off-by: John Blum <jblum@pivotal.io>
2016-02-17 01:09:21 -08:00
John Blum
4f4c33a422 SGF-473 - Allow a Spring-configured ClientCache to be constructed without a Pool.
(cherry picked from commit b385dbc25e)
Signed-off-by: John Blum <jblum@pivotal.io>
2016-02-16 23:05:18 -08:00
John Blum
b4d9c6f76f SGF-459 - Add support for the get(key:Object, valueLoader:Callable) method in Spring Framework 4.3's Cache interface.
(cherry picked from commit 1b11b912f5)
Signed-off-by: John Blum <jblum@pivotal.io>
2016-02-02 00:45:06 -08:00
John Blum
4c73671cf8 SGF-458 - Enable resolution of GemFire's DistributedSystem and System properties to be overridden in PoolFactoryBean.
(cherry picked from commit 10fadc0d9a)
Signed-off-by: John Blum <jblum@pivotal.io>
2016-01-08 17:19:33 -08:00
John Blum
7654049b2f SGF-457 - Clean up Javadoc warnings.
(cherry picked from commit 91619b8811)
Signed-off-by: John Blum <jblum@pivotal.io>
2016-01-08 17:16:13 -08:00
Oliver Gierke
57115e92e6 SGF-455 - Simplified registration for shared GemfireMappingContext for repositories.
A <gemfire:repositories /> now registers a single bean definition for a GemfireMappingContext that gets wired to the GemfireRepositoryFactoryBean instances registered within the system unless an explicit mapping context is referenced.

The GemfireRepositoryFactoryBean now checks a GemfireMappingContext being registered and rejects to start without one. The same applies to GemfireRepositoryFactory.

Related tickets: SGF-448, SGF-449, SGF-450.
2015-12-16 17:45:13 +01:00
John Blum
197394aca8 SGF-450 - GemfireRepositoryFactoryBean needs to explicitly register the default GemfireMappingContext when not explicitly defined as a bean in the application's Spring context.
(cherry picked from commit eebe7bb622)
Signed-off-by: John Blum <jblum@pivotal.io>
2015-12-03 18:43:00 -08:00
John Blum
fd79e22ab4 SGF-449 - GemfireRepositoryFactoryBean.setGemfireMappingContext needs to call RepositoryFactoryBeanSupport.setMappingContext.
(cherry picked from commit 37d41a1ed2)
Signed-off-by: John Blum <jblum@pivotal.io>
2015-12-03 18:42:53 -08:00
John Blum
17d46b0204 SGF-448 - GemfireRepositoryConfigurationExtension needs to override the RepositoryConfigurationExtensionSupport postProcess(:BeanDefinitionBuilder, :AnnotationRepositoryConfigurationSource) method.
(cherry picked from commit cf64807b09)
Signed-off-by: John Blum <jblum@pivotal.io>
2015-12-03 18:42:44 -08:00
John Blum
842fdcab24 SGF-447 - Fix Spring Data GemFire due to recent changes to Apache Geode that removed various internal utility classes in favor of external Spring classes.
(cherry picked from commit 042af996e6)
Signed-off-by: John Blum <jblum@pivotal.io>
2015-11-30 12:15:36 -08:00
John Blum
df4efe1aab SGF-442 - Remove incorrect statements about GemFire Java Reflection-based (PDX) Serialization in the SDG Reference Guide.
(cherry picked from commit 195d452fe2)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-19 18:52:22 -07:00
John Blum
7f861b914e SGF-434 - Add a durable GemFire client cache test to assert proper behavior by SDG.
Removed the ClientCacheFactoryBean.readyForEvents() method and moved the logic to onApplicationEvent(..).
Updated the spring-gemfire 1.6 and 1.7 XSD with the new keep-alive attribue on the client-cache element.
Changed the generic signature of the CacheFactoryBean class back to com.gemstone.gemfire.cache.Cache due to the Spring container bean resolution Exception when using JavaConfig in SDG 1.7 with GemFire 8.1 and core Spring Framework 4.1.7.

(cherry picked from commit a458115)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-14 00:48:20 -07:00
John Blum
321a3db43c SGF-434 - Add a durable GemFire client cache test to assert proper behavior by SDG.
(cherry picked from commit b52a185)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-14 00:47:07 -07:00
John Blum
0fd7264fda SGF-429 - GemfirePersistentProperty considers a BigDecimal property an entity.
Additional changes and refactoring inspired by Spring Data MongoDB custom SimpleTypeHolder.
(cherry picked from commit 2344eb521d)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-05 22:26:51 -07:00
John Blum
bf572d6b9f SGF-429 - GemfirePersistentProperty considers a BigDecimal property an entity.
(cherry picked from commit 6113bfbea1)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-05 20:48:01 -07:00
John Blum
c2ba1a017c SGF-432 - IndexFactoryBean traps IndexExistsException instead of IndexNameConflictException.
(cherry picked from commit 9cc4b98e35)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-05 20:47:39 -07:00
John Blum
6ea98384c8 SGF-433 - Fix improper resolution of Spring property placeholders in 'locators' and 'servers' attributes on the '<gfe:pool>' element(s) in Spring XML config.
(cherry picked from commit 1cd2a7ff50)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-10-01 18:29:04 -07:00
John Blum
1e5730dcb6 SGF-430 - Cleanup test failures on Windows due to incorrect Spring test context configuration resource resolution.
Fixes SnapshotServiceFactoryBeanTest.toSimpleFilenameUsingVariousPathnames(..) and the SnapshotServiceImportExportIntegrationTest failures on MS Windows due to file system path issues.
(cherry picked from commit 87f00274d5bd571577528902fc4de2fdbfcd32c8)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-09-11 22:10:35 -07:00
John Blum
2087a9044d SGF-430 - Cleanup test failures on Windows due to incorrect Spring test context configuration resource resolution.
(cherry picked from commit 7462d7f607)

Signed-off-by: John Blum <jblum@pivotal.io>
2015-09-10 13:33:38 -07:00
John Blum
6d218022f2 SGF-427 - Update Spring Data GemFire Reference Guide 'New in the 1.7 Release' section. 2015-09-01 20:28:40 -07:00
John Blum
a2ec36157b SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Fixed up Javadoc.
2015-08-31 22:22:33 -07:00
John Blum
f292ec6fad SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Renamed the '<gfe-data:export-snapshot>' and '<gfe-data:import-snapshot>' sub-elements to <gfe-data:snapshot-export>' and '<gfe-data:snapshot-import>' respectively; updated the SnapshotServiceParser to appropriately handle the sub-element name change.
Added a mini chapter in the Spring Data GemFire Reference Guide on how-to use the GemFire SnapshotService support provided by Spring Data GemFire.
2015-08-31 21:46:29 -07:00
John Blum
d9245f3430 SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Renamed the <gfe-data:snapshot-service> element 'suppress-init-import' attribute to 'suppress-import-on-init'.
Fixed up the JSONRegionAdviceTest class test case failures due to changes in the ..repository.sample.Person application domain object class.
2015-08-28 11:09:13 -07:00
John Blum
5bf3e8e813 SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Repackaged all GemFire Snapshot Service support classes in Spring Data GemFire under org.springframework.data.gemfire.snapshot.
Moved snapshot application events to ..snapshot.event.
Moved the ComposableSnapshotFilter class to ..snapshot.filter.
2015-08-28 00:56:12 -07:00
John Blum
608ad777e3 SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Refactored the SnapshotServiceFactoryBean with the addition of a new property (suppressInitImport) to suppress importing on initialization.
Refactored the SnapshotServiceFactoryBean SnapshotServiceAdapter interface's doImport(..) and doExport(..) method signatures to varargs.
Added the ComposableSnapshotFilter class implemeting the SnapshotFilter interface and Composition Design Pattern for composing multiple SnapshotFilters into one using logical operators.
Cleaned up and added addition unit tests.
Completed all integration testing including testing with export and import snapshot application event driven GemFire Cache Region snapshots.
2015-08-28 00:33:13 -07:00
John Blum
35107aa12d SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Refactored the SnapshotApplicationEvent into 2 separate ApplicationEvent classes to handle import and exports.
Refactored the SnapshotServiceFactoryBean class to handle import/export SnapshotApplicationEvents in onApplicationEvent(:SnapshotApplicationEvent).
Added integration tests for the archive file handling capabilities of the SnapshotServiceFactoryBean.SnapshotServiceAdapterSupport class.
Added additional unit tests.
2015-08-25 00:59:01 -07:00
John Blum
b47884c88c SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Refactored the ServiceSnapshotFactoryBean class to handle ZIP and JAR files as input sources on GemFire Cache data imports.
Added additional unit tests for SnapshotServiceFactoryBean to improve coverage along with a basic integration test covering import and export.
Fixed bugs in the SnapshotServiceParser and the XSD.
Moved the iterable(:Enumeration) and iterable(:Iterator) methods from the test CollectionUtils class to the 'official' CollectionUtils class.
2015-08-24 22:45:44 -07:00
John Blum
96f6a70595 SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Introduced a SnapshotApplicationEvent extending Spring ApplicationEvent to allow SDG-based GemFire applications to trigger GemFire Cache Region data snapshots (export ops).
Refactored SnapshotServiceFactoryBean to be a ApplicationListener on SnapshotApplicationEvents.
Introduced ExportSnapshotException and ImportSnapshotException to more succinctly desribe the snapshot import/export error.
Refactored CacheSnapshotServiceAdapter.doImport(..) method to invoke load(:SnapshotFormat, :SnapshotOptions, :File...), i.e. file-based in order to apply the SnapshotFilter on load, which is not applicable to the CacheSnapshotService.load(:File, :SnapshotFormat) method that assumes the 'File' is a directory.  Therefore doImport(..) expands the directory if the File given is indeed a valid file system directory.
Added additional unit tests.
2015-08-22 13:38:35 -07:00
John Blum
022c68cdd1 SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes.
Initial implementation and unit tests.
2015-08-19 22:29:31 -07:00
John Blum
dff74e694c SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations.
Reference Guide updates for OQL Query Langauge extension support via Annotations.
2015-08-14 12:34:42 -07:00
John Blum
abc5722af5 SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations.
Test refactoring and cleaup.
2015-08-13 14:16:47 -07:00
John Blum
bdbf101fd7 SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations.
Adding integration tests to test the use of the custom OQL Query Annotation extensions in Repository Query methods against GemFire's actual OQL Query engine.
2015-08-13 13:16:20 -07:00
John Blum
23d05aeaee SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations.
Implementation and unit test coverage complete.
2015-08-12 00:18:30 -07:00
John Blum
c022f2c005 SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations. 2015-08-12 00:18:30 -07:00
John Blum
ff290a442e SGF-419 - Documentation error on page 22 in the Spring Data GemFire Reference PDF. 2015-08-12 00:13:45 -07:00
John Blum
29a169a10c SGF-425 - Allow early initialization and re-initialization of LazyWiringDeclarableSupport instances.
Deprecated org.springframework.data.gemfire.WiringDeclarableSupport in favor of LazyWiringDeclarableSupport and modified LazyWiringDeclarableSupport to 'release' the BeanFactory reference.
2015-08-10 23:13:57 -07:00
John Blum
be6a3aac3e SGF-425 - Allow early initialization and re-initialization of LazyWiringDeclarableSupport instances.
Fixed test failures associated with changes to LazyWiringDeclarableSupport passing the ApplicationContext onApplicationEvents (ContextRefreshedEvent) directly rather than the ApplicationContext's ConfigurableListableBeanFactory required by BeanConfigurerSupport.
2015-08-10 23:13:57 -07:00
John Blum
93280bf204 SGF-425 - Allow early initialization and re-initialization of LazyWiringDeclarableSupport instances. 2015-08-10 23:13:57 -07:00
John Blum
a806f1540e SGF-423 - Handle improper ClassCastException thrown from SDG's Function Execution interface and annotation-based support when a GemFire Function throws an Exception.
Additional refactoring and added serveral unit tests.
2015-08-07 01:36:59 -07:00
John Blum
bb8ce682c6 SGF-423 - Handle improper ClassCastException thrown from SDG's Function Execution interface and annotation-based support when a GemFire Function throws an Exception.
Initial refactoring and code cleanup.
2015-08-06 17:34:58 -07:00
Oliver Gierke
85c333dfc5 SGF-421 - Switched to existing PropertyAccessor abstraction.
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.
2015-08-04 09:56:47 +02:00
John Blum
d5d2fd09b7 SGF-421 - Fix Spring Data GemFire's MappingPdxSerializer due to the package-private access modifier change on org.springframework.data.mapping.model.BeanWrapper. 2015-08-03 16:10:31 -07:00
John Blum
278af87703 SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a custom, SDG-provided CustomExpiry instance.
Final touches on the SDG Expiration annotation based support.  Added additional test cases to test the improper specification of Expiration annotation attribute settings and modified the SDG Reference Guide to discuss Spring Property Placeholder and SpEL support.
2015-07-31 13:41:11 -07:00
John Blum
92f3c4e808 SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a custom, SDG-provided CustomExpiry instance.
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.
2015-07-31 00:57:49 -07:00
John Blum
6e73f52025 SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a custom, SDG-provided CustomExpiry instance.
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.
2015-07-29 16:02:43 -07:00
John Blum
419eb8d879 SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a custom, SDG-provided CustomExpiry instance.
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.
2015-07-29 12:53:19 -07:00
John Blum
a9b7f9d8e8 SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a custom, SDG-provided CustomExpiry instance. 2015-07-29 12:53:18 -07:00
John Blum
65ab1c7dcd SGF-409 - Modify the GemfireDataSourcePostProcessor (basis for <gfe:datasource>) to not assume a GemFire Server was configured and bootstrapped with Spring and subsequently that the SDG ListRegionsOnServerFunction was registered.
Fixed up the GemFireDataSourceUsingNonSpringConfiguredGemFireServerIntegrationTest to customize the classpath in order to exlude the Spring Data GemFire dependency from the non-Spring-configured GemFire Server's classpath thereby removing any presence of the ListRegionsOnServerFunction GemFire Function; made use of the com.gemstone.gemfire.distributed.ServerLauncher class for launching the non-Spring-configured GemFire Server and finally, wrote the gemfire-datasource-integration-test-cache.xml as an cache.xml file to the non-Spring-configured GemFire Server's working directory to properly configure the GemFire Server.
2015-07-20 14:49:09 -07:00
John Blum
52e4be4240 SGF-409 - Modify the GemfireDataSourcePostProcessor (basis for <gfe:datasource>) to not assume a GemFire Server was configured and bootstrapped with Spring and subsequently that the SDG ListRegionsOnServerFunction was registered.
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.
2015-07-20 12:24:34 -07:00
John Blum
0055a79a5d SGF-409 - Modify the GemfireDataSourcePostProcessor (basis for <gfe:datasource>) to not assume a GemFire Server was configured and bootstrapped with Spring and subsequently that the SDG ListRegionsOnServerFunction was registered.
Adding unit tests for the GemfireDataSourcePostProcessor class.
2015-07-16 18:09:28 -07:00