The new 'configureEnvironment(:Environment) method attempts to add a custom PropertySource to the Environment if the Environment is configurable, otherwise proceeds in setting a Java System Property as before.
The idea is, the Environment is more recycable than Java System Properties, particularly if the Spring ApplicationContext is refreshed.
Renames DEFAULT_CLUSTER_CONDITION_MATCH to DEFAULT_CLUSTER_AWARE_CONDITION_MATCH.
Renames DEFAULT_CLUSTER_CONDITION_STRICT_MATCH to DEFAULT_CLUSTER_AWARE_CONDITION_STRICT_MATCH.
Test and assert client Region DataPolicy configuration (PROXY).
Test and assert Environment configuration does not set the 'spring.data.gemfire.cache.client.region.shortcut' property.
Add preconditions for a Kubernetes runtime environment and logging set to INFO.
Test and assert client Region DataPolicy configuration (PROXY).
Test and assert Environment configuration does not set the 'spring.data.gemfire.cache.client.region.shortcut' property.
Add precoditions for a CloudFoundry runtime environment and logging not set to INFO.
Remove logging from configureTopology(..) and add call to logRuntimeEnvironmet(..) from doMatch(..).
Add ClusterAwareCondition.set(:Boolean) class method to allow Condition subclasses to set the clusterAvailable state; refactor reset() to call set(null).
Edit Javadoc.
Using 'strictMatch' enables fail-fast behavior so that users can configure their Spring Boot, Apache Geode ClientCache applications to fail on startup if no cluster is available across any environment.
Additionally, enhanced the log output to give users better information about the runtime environment and whether an Apache Geode-based cluster was found and available.
Resolves gh-99.
Specifically, the listener state will track:
* The number of processEvents(:List<AsyncEvent>) method invocations.
* Whether the processEvents(..) method has ever been invoked.
* And, whether the processEvents(..) method has been invoked since the last check.
Introduces a protected doProcessEvents(:List<AsyncEvent>) method and changes processEvents(:List<AsyncEvent>) method to final.
This fixes a bug that manifests through GemFire/Geode's Management infrastructure, specifically with the MBean's ObjectName used to managed the AEQs across the cluster.
Seems Jackson introduced an API breaking change that now requires a PolymorphicTypeValidator when configuring and activating the default typing as a propery on the ObjectMapper.
Add constructor requiring a reference to the associated RepositoryAsyncEventListener delegating AsyncEvent handling/processing to the Function.
Add alias methods from the RepositoryAsyncEventListener getAsyncEventErrorHandler() and getRepository() methods to the AsyncEventOperationRepositoryFunction classes.
Refatory type signatures and Generics usage.
Edit Javadoc.
Resolves gh-58.
Add builder methods to configure Function post-processors applied to the AEQ, factory and listener.
Add API to configure an AsyncEventErrorHandler.
Edit Javadoc.
Resolves gh-58.
The EnvironmentLoggingApplicationListener is automattically registered with the Spring Boot configured list of ApplicationListeners via the (SpringFactories) SPI.
Spring Aware Objects currently handled by ObjectAwareUtils includes, but is not limited to: ApplicationContextAware, ApplicationEventPublisherAware, BeanClassLoaderAware, BeanFactoryAware, BeanNameAware, EnvironmentAware and ResourceLoaderAware.
Change AbstractCacheResourceResolver class to be ApplicationContextAware and EnvironmentAware.
Add getLogger() method to the AbstractCacheResourceResolver class.
Add Resource description in Logger message logged by onMissingResource(..) on export.
Annotate AbstractExportResourceResolver.onMisingResource(..) method signature with Spring Framework @NonNull and @Nullable annotations.
Separate logic from afterPropertiesSet() initializing the ApplicationContext, Environment and ResourceLoader objects on aware import/export ResourceResolvers into init methods.
Edit Javadoc.
Resolves gh-92.
Move the isImportProfilesActive(:Environment) method before the importInto(:Region) method.
Annotate toSet(..) class method signature with Spring Framework @NonNull and @Nullable annotations.
Edit Javadoc.
Resolves gh-92.
Add additional, lenient asWritableResource(:Resource) method return an Optional<WritableResource> if the given Resource is not an instance of WritableResource.
Resolves gh-92.
Change doImportInto(:Region) logic to make use of the ImportResourceResolver and ResourceReader on import.
Change doExportFrom(:Region) logic to make use of the ExportResourceResolver and ResourceWriter on export.
Resolves gh-92.