Skip to content

Commit

Permalink
Added Throwable to Map and Map to Throwable conversion
Browse files Browse the repository at this point in the history
Finished 100% testing on conversions.
  • Loading branch information
jdereg committed Mar 30, 2024
1 parent 8fdbaaf commit 899087c
Show file tree
Hide file tree
Showing 12 changed files with 278 additions and 168 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ The classes in the`.jar`file are version 52 (`JDK 1.8`).
To include in your project:
##### GradleF
```
implementation 'com.cedarsoftware:java-util:2.4.6'
implementation 'com.cedarsoftware:java-util:2.4.7'
```

##### Maven
```
<dependency>
<groupId>com.cedarsoftware</groupId>
<artifactId>java-util</artifactId>
<version>2.4.6</version>
<version>2.4.7</version>
</dependency>
```
---
Expand Down
28 changes: 14 additions & 14 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,25 +30,25 @@
<!-- <maven.compiler.release>11</maven.compiler.release>-->

<!-- testing only -->
<version.junit-jupiter-api>5.10.1</version.junit-jupiter-api>
<version.junit-jupiter-params>5.10.1</version.junit-jupiter-params>
<version.assertj>3.25.1</version.assertj>
<version.json.io>4.19.1</version.json.io>
<version.junit-jupiter-api>5.10.2</version.junit-jupiter-api>
<version.junit-jupiter-params>5.10.2</version.junit-jupiter-params>
<version.assertj>3.25.3</version.assertj>
<version.json.io>4.19.11</version.json.io>
<version.mockito.inline>4.11.0</version.mockito.inline>
<version.agrona>1.20.0</version.agrona>
<version.agrona>1.21.0</version.agrona>

<!-- release plugin -->
<version.plugin.nexus>1.6.13</version.plugin.nexus>

<!-- Build maven-***-plugins -->
<version.plugin.jar>3.3.0</version.plugin.jar>
<version.plugin.gpg>3.1.0</version.plugin.gpg>
<version.plugin.compiler>3.12.1</version.plugin.compiler>
<version.plugin.gpg>3.2.2</version.plugin.gpg>
<version.plugin.compiler>3.13.0</version.plugin.compiler>
<version.plugin.javadoc>3.6.3</version.plugin.javadoc>
<version.plugin.surefire>3.2.3</version.plugin.surefire>
<version.plugin.surefire>3.2.5</version.plugin.surefire>
<version.plugin.source>3.3.0</version.plugin.source>
<version.plugin.felix.scr>1.26.4</version.plugin.felix.scr>
<version.plugin.felix.bundle>5.1.9</version.plugin.felix.bundle>
<version.plugin.scr>1.26.4</version.plugin.scr>
<version.plugin.bundle>5.1.9</version.plugin.bundle>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
Expand Down Expand Up @@ -139,13 +139,13 @@
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-scr-plugin</artifactId>
<version>${version.plugin.felix.scr}</version>
<version>${version.plugin.scr}</version>
</plugin>

<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${version.plugin.felix.bundle}</version>
<version>${version.plugin.bundle}</version>
<extensions>true</extensions>
<configuration>
<instructions>
Expand Down Expand Up @@ -261,10 +261,10 @@
<dependency>
<groupId>com.cedarsoftware</groupId>
<artifactId>json-io</artifactId>
<version>${version.json.io}</version>
<version>4.19.11</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.agrona</groupId>
<artifactId>agrona</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/cedarsoftware/util/DateUtilities.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ public final class DateUtilities {
private static final Pattern allDigits = Pattern.compile("^\\d+$");
private static final String days = "monday|mon|tuesday|tues|tue|wednesday|wed|thursday|thur|thu|friday|fri|saturday|sat|sunday|sun"; // longer before shorter matters
private static final String mos = "January|Jan|February|Feb|March|Mar|April|Apr|May|June|Jun|July|Jul|August|Aug|September|Sept|Sep|October|Oct|November|Nov|December|Dec";
private static final String yr = "\\d{4}";
private static final String yr = "[+-]?\\d{4,5}\\b";
private static final String d1or2 = "\\d{1,2}";
private static final String d2 = "\\d{2}";
private static final String ord = "st|nd|rd|th";
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/com/cedarsoftware/util/convert/Converter.java
Original file line number Diff line number Diff line change
Expand Up @@ -831,6 +831,10 @@ private static void buildFactoryConversions() {
CONVERSION_DB.put(pair(String.class, Year.class), StringConversions::toYear);
CONVERSION_DB.put(pair(Map.class, Year.class), MapConversions::toYear);

// Throwable conversions supported
CONVERSION_DB.put(pair(Void.class, Throwable.class), VoidConversions::toNull);
CONVERSION_DB.put(pair(Map.class, Throwable.class), MapConversions::toThrowable);

// Map conversions supported
CONVERSION_DB.put(pair(Void.class, Map.class), VoidConversions::toNull);
CONVERSION_DB.put(pair(Byte.class, Map.class), MapConversions::initMap);
Expand Down Expand Up @@ -872,6 +876,7 @@ private static void buildFactoryConversions() {
CONVERSION_DB.put(pair(Locale.class, Map.class), LocaleConversions::toMap);
CONVERSION_DB.put(pair(URI.class, Map.class), UriConversions::toMap);
CONVERSION_DB.put(pair(URL.class, Map.class), UrlConversions::toMap);
CONVERSION_DB.put(pair(Throwable.class, Map.class), ThrowableConversions::toMap);
}

public Converter(ConverterOptions options) {
Expand Down
Loading

0 comments on commit 899087c

Please sign in to comment.