Commit Graph

155 Commits

Author SHA1 Message Date
John Blum
68e7b54c90 Refactor importInto(:Region) to parse and convert JSON containing multiple objects into an array of PdxInstances each stored in the Region.
Edit Javadoc.

Resolves gh-67.
2020-05-06 00:43:03 -07:00
John Blum
e67c383de8 Add JsonToPdxArrayConverter interface and Spring Converter extension specifying a contract to convert JSON into PDX, as an array of PdxInstance objects.
Resolves gh-69.
2020-05-06 00:37:31 -07:00
John Blum
bbef166670 Edit Javadoc.
Resolves gh-67.
2020-05-06 00:13:17 -07:00
John Blum
8cf6a8b410 Add configurable Product.category as an enumerated type. 2020-05-05 13:40:03 -07:00
John Blum
3f05015b2f Refactor example POS application model classes to be conducive to Jackson's ObjectMapper configuration imposed by GemFire/Geode PDX framework and JSONFormatter class. 2020-05-05 13:15:24 -07:00
John Blum
c3b697e759 Complete base implementation of the JSON CacheDataImporterExporter.
Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
ec20642cc1 Add ObjectToJsonConverter interface specifying a contract for converting an Object to JSON.
Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
8cb59be29c Add JsonToPdxConverter interface specifying a contract to convert JSON to PDX.
The JSON may be expressed as a byte[] or a String.

Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
98c976fe6c Add example application model classes for a PurchaseOrder in a Point-of-Sale (POS) system. 2020-05-05 11:14:04 -07:00
John Blum
a0ead741ab Add implementation of CacheDataImporter/Exporter to import/export JSON sourced data.
Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
074fd7f1ed Add java.util.function.Predicate on Region to filter Regions on data import/export.
Add protected getLogger() method returning a SLF4J Logger to log messages and events during data import/export operations.

Format source code.

Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
1b44a80830 Add abstract base class implementation of the CacheDataImporterExporter interface to correctly manage data exports and imports based on application and Environment (context) configuration.
Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
76ef0e7062 Introduce CacheDataImporterExporter interface extending the CacheDataImporter and CacheDataExporter interfaces.
Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
1a19c228be Introduce new CacheDataImporter and CacheDataExporter interfaces to import and export data into and out from a GemFire/Geode cache on startup.
These new interfaces and APIs are intended to be used in SBDG's auto-configuration when the Spring Boot app using Apache Geode starts up in order to load or save data.

Resolves gh-67.
2020-05-05 11:14:04 -07:00
John Blum
46722ea9c4 Add ApplicationContextMembershipListener implementation and extension of MembershipListenerAdapter to adapt the Spring ApplicationContext to handle peer member departed and joined membership events. 2020-04-27 15:16:42 -07:00
John Blum
b1e9a30e10 Override ApplicationContext prepareRefresh() and onRefresh() methods.
Add option to copy configuration from the pre-refresh BeanFactory to the post-refresh BeanFactory instance.

Apply appropriate Spring @NonNull and @Nullable annotations.

Edit Javadoc.
2020-04-27 14:18:45 -07:00
John Blum
2deb202c21 Add new AbstractContextLoader implementation and extension to the Spring TestContext Framework to configure and bootstrap the RefreshableAnnotationConfigApplicationContext used in Spring based tests. 2020-04-27 14:18:45 -07:00
John Blum
e8ddc1f744 Introduce new Spring ApplicationContext implementation and extension that is Refreshable and can be configured with Annotations. 2020-04-27 14:18:45 -07:00
John Blum
cd85bc9112 Add SLF4J, Logback configuration file to configure the log levels for Apache Geode and Spring Framework in Integration Tests. 2020-04-24 15:50:36 -07:00
John Blum
d5a9883258 Add optional 'apache-geode-extensions' dependency. 2020-04-24 15:49:56 -07:00
John Blum
d0fb0b3485 Add optional 'org.springframework:spring-test' dependency. 2020-04-24 15:48:47 -07:00
John Blum
c19609ec33 Edit changelog and add 1.3.0.M4 release notes. 2020-04-19 21:19:25 -07:00
John Blum
603e23f199 Edit changelog and add 1.2.6.RELEASE notes. 2020-03-27 14:25:17 -07:00
John Blum
069ad68016 Add Unit Test demonstrating how to use Mock objects with Spring's Cache Abstraction in a @Cacheable @Service component/bean. 2020-03-20 14:01:28 -07:00
John Blum
2282e94762 Edit changelog and add 1.3.0.M3 release notes. 2020-03-20 02:52:26 -07:00
John Blum
d90dbf6f7a Use wildcard generic type signature in declaration of the 'VCAP_REQUIRED_PROPERTIES_PREDICATE' Predicate of a parameterized PropertySource type.
Remove unnecessary @SuppressWarnings('all') annotation from iterator() method.
2020-03-18 20:23:04 -07:00
John Blum
9054f641c5 Add 1.2.5.RELEASE notes to the changelog. 2020-03-04 02:42:12 +01:00
John Blum
8de9e0c625 Add 1.1.6.RELEASE notes to the changelog. 2020-03-04 02:41:31 +01:00
John Blum
5e4f520fb9 Fix typo in changelog. 2020-03-03 22:21:09 +01:00
John Blum
2f4c8055b4 Fix SDG version in SBDG 1.3.0.M2 release notes.
SDG version in SBDG 1.3.0.M2 should be 2.3.0.M3 and not 2.3.0.M2.
2020-02-24 14:25:33 -08:00
John Blum
c2fd7f2e52 Edit changelog and add 1.3.0.M2 release notes. 2020-02-22 23:55:10 -08:00
John Blum
665355aa92 Upgrade to FreeFair Lombok Gradle Plugin 5.0.0-rc2. 2020-02-22 23:50:31 -08:00
John Blum
8447eaad10 Update Copyright to 2020. 2020-02-19 23:04:23 -08:00
John Blum
1969f89492 Add GeodeLoggingApplicationListener registered with Spring Boot to handle backwards compatibility and existing logging configuration expressed with SDG.
User may configure logging using @ClientCacheApplication(logLevel = INFO), or by annotating their Spring application class with @EnableLogging(logLevel = INFO) or using 1 of SDG's logging configuration properties ['spring.data.gemfire.cache.log-level', 'spring.data.gemfire.logging.level'], therefore, SBDG makes a best attempt to honor those logging configuration settings.

Resolves gh-73.
2020-02-14 15:19:14 -08:00
John Blum
f21900d0c8 Cleanup compiler warnings.
Apply wildcard generic type signature to PropertySource object reference in order to avoid the rawtype usage warning.

Annotate ClusterAwareCondition.match(..) and ClusterAwareCondition.getConfiguredConnectionEndpoints(..) with @SuppressWarnings.
2020-02-04 15:53:00 -08:00
John Blum
d96d608c99 Update changelog with 2.3.0.M1 release notes. 2020-01-24 21:50:26 -08:00
John Blum
827cddb372 Update changelog with 1.2.4.RELEASE notes. 2020-01-24 21:29:16 -08:00
John Blum
c1faa1b2ec Update changelog with 1.2.3.RELEASE notes. 2020-01-24 21:27:52 -08:00
John Blum
36f6392767 Update changelog with 1.1.5.RELEASE notes. 2020-01-24 21:26:40 -08:00
John Blum
b45431fd53 Optimize imports. 2020-01-24 21:17:09 -08:00
John Blum
ddafaafe56 Fix tests failures in the Apache Geode, Inline Caching support Integration Tests involving Apache Cassandra due to the DataStax 4.x Driver upgrade in Spring Data Neumann/2.3. 2020-01-22 12:39:12 -08:00
John Blum
7031b15fcf Adapt to API changes in Spring Data for Apache Cassandra Neumann/2.3. 2020-01-16 18:56:19 -08:00
John Blum
924b1d7f89 Upgrade to Lombok Gradle Plugin 4.1.6. 2020-01-16 18:56:19 -08:00
John Blum
ed0c249e55 Update changelog with 1.2.2.RELEASE notes. 2019-12-11 18:44:12 -08:00
John Blum
b9302086cc Update changelog with 1.1.4.RELEASE notes. 2019-12-11 18:43:00 -08:00
John Blum
0300d0e753 Format source code and optimize imports. 2019-12-09 16:22:50 -08:00
John Blum
47b3c01bf4 Improve EnableClusterAware configuration logic to identify Region beans of type CacheTypeAwareRegionFactoryBean.
Resolves gh-66.
2019-11-15 18:53:19 -08:00
John Blum
c9baff1bf5 Update changelog with 1.2.1.RELEASE notes. 2019-11-06 18:07:24 -08:00
John Blum
c9f3c1aa17 Update changelog with 1.1.3.RELEASE notes. 2019-11-06 07:36:56 -08:00
John Blum
c95237dd1f Update changelog with 1.2.0.RELEASE notes. 2019-10-17 20:05:34 -07:00