John Blum
a605bd9f40
Add a general ResourceDataAccessException, RuntimeException class indicating problems while accessing the data from a target Resource.
...
Add ResourceReadException extending ResourceDataAccessException to indicate problems while reading from a target Resource.
Add ResourceWriteException extending ResourceDataAccessException to indicate problems while writing to a target Resource.
Resolves gh-92.
2020-07-20 12:03:01 -07:00
John Blum
58a4992905
Move all Resource handling logic and class member constants to the ResourceCapableCacheDataImporterExporter subclass.
...
Edit Javadoc.
Change access modifier on getApplicationContext() from public to protected.
Resolves gh-92.
2020-07-16 14:48:01 -07:00
John Blum
681fd81ad2
Define new, abstract ResourceCapableCacheDataImporterExporter capable of handling dynamic Resources.
...
The primary concerns involve resolving Resources for import/export along with reading from and writing to any Resource using the Spring Resource abstraction.
Resolves gh-92.
2020-07-16 14:43:32 -07:00
John Blum
9a77049a76
Add new SpEL PropertyAccessor implementation to handle Spring Environment and EnvironmentCapable objects in safe way.
2020-07-10 14:59:57 -07:00
John Blum
a1ab9226eb
Add Adapter class for a Spring Environment to use as a Map.
2020-07-10 14:59:57 -07:00
John Blum
d7f1091754
Add null-safe isReadable(:Resource) and isWritable(:Resource) utility methods.
...
Resolve gh-92.
2020-07-10 14:59:57 -07:00
John Blum
d21ce7d20a
Utilize new enum for Resource prefixes.
...
Simplify ResourceLoaderResourceResolver.getResourceLoader() to use the new 'initialize' operator.
Resolves gh-92.
2020-07-10 14:59:57 -07:00
John Blum
433d152c98
Add enumeration of supported Resource prefixes (e.g. classpath:).
...
Additionally, the enum defines operations on the Resource prefixes for convenience.
Resolves gh-92.
2020-07-10 14:59:57 -07:00
John Blum
251f762c2d
Add initialize(..) operator to promote initialization safety.
...
The initialize operator replaces the common initialization safety pattern using an if-then-else or Java's ternary operator to ensure that a collaborator reference has bee properly initialized:
target = target != null ? target : new Target();
2020-07-08 14:19:06 -07:00
John Blum
2da58cc548
Add ResourceLoaderResourceResolver implementation using Spring's ResourceLoader to resolve Resources.
...
Resolves gh-92.
2020-07-08 14:18:48 -07:00
John Blum
7de8bde27a
Define ResourceResolver interface encapsulating the algorithm or strategy for resolving Resources in different contexts.
...
Resolves gh-92.
2020-07-08 12:33:10 -07:00
John Blum
a1ece3599c
Add ResourceNotFoundException as a RuntimeException to indicate that a Resource could not be found at the specified location.
...
Resolves gh-92.
2020-07-08 12:33:10 -07:00
John Blum
60f748a30d
Add UnhandledResourceException as a RuntimeException to indicate that a Resource could not be handled, or processed (e.g. read, written).
...
Resolves gh-92.
2020-07-08 12:33:10 -07:00
John Blum
703cc43282
Add ResourceUtils abstract utility class containing operations for working with Resource objects and byte arrays.
...
Resolves gh-92.
2020-07-08 12:33:10 -07:00
John Blum
02f06500fc
Add FileResourceWriter implementation to write data to a File-based Resource.
...
Resolves gh-92.
2020-07-07 11:24:50 -07:00
John Blum
edd0cab1af
Add AbstractResourceWriter base class containing operations common to all ResourceWriters.
...
Resolves gh-92.
2020-07-07 11:23:26 -07:00
John Blum
d2591f7f8c
Define ResourceWriter interface for writing data to a resource identified by a Resource handle.
...
Resolves gh-92.
2020-07-07 11:21:47 -07:00
John Blum
8ed0f24d8b
Add ByteArrayResourceReader implementation that reads the data from a Resource (e.g. ClassPathResource) into a byte array.
...
Resolves gh-92.
2020-07-07 11:20:15 -07:00
John Blum
2b05bc5919
Add AbstractResourceReader base class defining operations common to all ResourceReaders.
...
Resolves gh-92.
2020-07-07 11:18:33 -07:00
John Blum
2437b0247e
Define ResourceReader interface for reading data from a resource identified by a Resource handle.
...
Ressolves gh-92.
2020-07-07 11:16:36 -07:00
John Blum
01696b15af
Refactor and polish JSON and base cache data import/export support.
2020-06-25 17:02:56 -07:00
John Blum
4947705f1d
Upgrade to Spring Boot 2.3.1.RELEASE.
2020-06-16 16:17:48 -07:00
John Blum
1439b7caf5
Edit README to refer to 1.2.8.RELEASE and 1.2.9.BUILD-SNAPSHOT in the 1.2.x release line.
2020-06-16 15:02:35 -07:00
John Blum
d84978082b
Edit README to refer to 1.1.8.RELEASE and 1.1.9.BUILD-SNAPSHOT in the 1.1.x release line.
2020-06-16 15:01:54 -07:00
John Blum
ad83eef6f3
Edit changelog and include 1.2.8.RELEASE notes.
2020-06-16 15:00:52 -07:00
John Blum
59f749ab90
Edit changelog and include 1.1.8.RELEASE notes.
2020-06-16 14:59:40 -07:00
John Blum
0375955755
Edit README to refer to the 1.3.0.RELEASE and 1.3.1.BUILD-SNAPSHOT bits.
2020-06-11 01:58:25 -07:00
John Blum
8a5db8e467
Prepare next development iteration.
...
Upgrade to Spring Framework 5.2.7.RELEEASE.
Upgrade to Spring Boot 2.3.1.BUILD-SNAPSHOT.
Upgrade to Spring Data for Apache Geode & Pivotal GemFire 2.3.1.RELEASE.
Upgrade to Spring Data Release Train Neumann-SR1.
Set version to 1.3.1.BUILD-SNAPSHOT.
2020-06-11 01:29:55 -07:00
John Blum
e17f0aba69
Release 1.3.0.RELEASE.
2020-06-11 01:11:13 -07:00
John Blum
cca94c37f3
Edit changelog and add 1.3.0.RELEASE notes.
2020-06-11 01:03:37 -07:00
John Blum
46737c78b2
Upgrade to Gradle 6.5.
2020-06-11 00:37:03 -07:00
John Blum
f7611fd16d
Upgrade to Spring Test for Apache Geode & Pivotal GemFire 0.0.16.RELEASE.
2020-06-11 00:36:10 -07:00
John Blum
5994d6b6a3
Upgrade to FreeFair Lombok Gradle Plugin 5.1.0.
2020-06-10 23:48:29 -07:00
John Blum
97c2f4ab9d
Upgrade to Testcontainers 1.14.3.
2020-06-10 23:45:45 -07:00
John Blum
308178ade7
Upgrade to Byte Buddy 1.10.11.
2020-06-10 23:34:33 -07:00
John Blum
5318782bfb
Fix bug to handle cache data import into client LOCAL Regions when no PDX type registry exists.
...
Resolves gh-91.
2020-06-10 23:16:11 -07:00
John Blum
98ee687a78
Include JacksonJsonToObjectConverter, Spring Converter implementation to convert/map JSON to a POJO using Jackson's ObjectMapper.
2020-06-10 22:24:50 -07:00
John Blum
dd439fe300
Include ObjectPdxInstanceAdapter class to adapt a regular Object (POJO) as an instance of PdxInstance.
2020-06-10 20:03:02 -07:00
John Blum
f6e6a957dc
Include PdxFieldNotWritableException, RuntimeException class to indicate a PDX field on a PdxInstance is not modifiable.
2020-06-10 20:01:33 -07:00
John Blum
91a10a8ca1
Move PdxInstance identifier/identity resolution logic from JsonCacheDataImporterExporter to PdxInstanceWrapper.
2020-06-10 12:39:21 -07:00
John Blum
0a3c2bb7ab
Refactor from(:PdxInstance) factory method to handle PdxInstanceWrapper arguments.
...
The from(:PdxInstance) method should not wrap a PdxInstance more than once.
Format source code.
2020-06-10 12:21:35 -07:00
John Blum
450cc58d82
Format source code.
2020-06-10 12:21:35 -07:00
John Blum
139d52918c
Add factory method to unwrap a PdxInstanceWrapper returning the underlying, delegate PdxInstance.
2020-06-10 12:21:35 -07:00
John Blum
e8a8486f33
Edit Javadoc.
2020-06-10 12:21:35 -07:00
John Blum
a0b4f60c77
Define Spring Converter interface extension to convert from JSON into an Object array (array of POJOs).
2020-06-10 12:21:35 -07:00
John Blum
2b2e03a764
Define Spring Converter interface extension to convert from JSON into an Object (POJO).
2020-06-10 12:21:35 -07:00
John Blum
db0a00e452
Rename toPdxArray(:byte[]) to toPdx(:byte[]).
2020-06-10 12:21:35 -07:00
John Blum
e05c627e13
Refactor toJson(:Region) to serialize the values from the Region using the AbstractObjectArrayToJsonConverter class and CacheUtils.collectValues(:Region) method.
2020-06-10 12:21:35 -07:00
John Blum
53dda1265b
Remove unused and unnecessary code.
2020-06-09 20:47:04 -07:00
John Blum
f83880ea97
Reset ClusterAwareCondition.
2020-06-09 15:20:08 -07:00