]> juplo.de Git - jpa-converters/commitdiff
Prevented possible NullPointerException's
authorKai Moritz <kai@juplo.de>
Tue, 15 Aug 2017 17:56:06 +0000 (19:56 +0200)
committerKai Moritz <kai@juplo.de>
Tue, 15 Aug 2017 17:56:06 +0000 (19:56 +0200)
24 files changed:
src/main/java/de/juplo/jpa/converters/DurationConverter.java
src/main/java/de/juplo/jpa/converters/InstantConverter.java
src/main/java/de/juplo/jpa/converters/LocalDateConverter.java
src/main/java/de/juplo/jpa/converters/LocalDateTimeConverter.java
src/main/java/de/juplo/jpa/converters/LocalTimeConverter.java
src/main/java/de/juplo/jpa/converters/LocaleConverter.java
src/main/java/de/juplo/jpa/converters/MonthDayConverter.java
src/main/java/de/juplo/jpa/converters/OffsetDateTimeConverter.java
src/main/java/de/juplo/jpa/converters/OffsetTimeConverter.java
src/main/java/de/juplo/jpa/converters/PeriodConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToDaysConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToHoursConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToMicrosConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToMillisConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToMinutesConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToNanosConverter.java
src/main/java/de/juplo/jpa/converters/TemporalAmountToSecondsConverter.java
src/main/java/de/juplo/jpa/converters/URIConverter.java
src/main/java/de/juplo/jpa/converters/URLConverter.java
src/main/java/de/juplo/jpa/converters/YearConverter.java
src/main/java/de/juplo/jpa/converters/YearMonthConverter.java
src/main/java/de/juplo/jpa/converters/ZoneIdConverter.java
src/main/java/de/juplo/jpa/converters/ZoneOffsetConverter.java
src/main/java/de/juplo/jpa/converters/ZonedDateTimeConverter.java

index 402dcf34e99a990a1a872de2f2b9dd6f9c2f1651..0304ad47382abb156e0f4a93bdf66328da0ac915 100644 (file)
@@ -15,12 +15,16 @@ public class DurationConverter implements AttributeConverter<Duration, String>
   @Override
   public String convertToDatabaseColumn(Duration duration)
   {
+    if (duration == null)
+      return null;
     return duration.toString();
   }
 
   @Override
   public Duration convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return Duration.parse(string);
   }
 }
index 28cf149bf71c8463245a0fe301031fee68680cb1..b9c54ecf55ef7238076145939a1e3a0c4b211c47 100644 (file)
@@ -16,12 +16,16 @@ public class InstantConverter implements AttributeConverter<Instant, Timestamp>
   @Override
   public Timestamp convertToDatabaseColumn(Instant instant)
   {
+    if (instant == null)
+      return null;
     return Timestamp.from(instant);
   }
 
   @Override
   public Instant convertToEntityAttribute(Timestamp ts)
   {
+    if (ts == null)
+      return null;
     return ts.toInstant();
   }
 }
index 26066027238ad261a0a3d9a0710c593015b8e9ed..7db0626887c827400421208008b4c91e9da42b12 100644 (file)
@@ -16,12 +16,16 @@ public class LocalDateConverter implements AttributeConverter<LocalDate, Date>
   @Override
   public Date convertToDatabaseColumn(LocalDate ld)
   {
+    if (ld == null)
+      return null;
     return Date.valueOf(ld);
   }
 
   @Override
   public LocalDate convertToEntityAttribute(Date date)
   {
+    if (date == null)
+      return null;
     return date.toLocalDate();
   }
 }
index 24bf45b2e18cd60aed4f6159d2aad1f85be183f8..b4773a4e0ce4062c59b6a4701bfa31d5fa60d3d2 100644 (file)
@@ -16,12 +16,16 @@ public class LocalDateTimeConverter implements AttributeConverter<LocalDateTime,
   @Override
   public Timestamp convertToDatabaseColumn(LocalDateTime ldt)
   {
+    if (ldt == null)
+      return null;
     return Timestamp.valueOf(ldt);
   }
 
   @Override
   public LocalDateTime convertToEntityAttribute(Timestamp ts)
   {
+    if (ts == null)
+      return null;
     return ts.toLocalDateTime();
   }
 }
index dc7ff9926fe8baaa97444e17287255f4ff1176a0..70506c5288eb1359bfc002a63875b13edcb8d381 100644 (file)
@@ -16,12 +16,16 @@ public class LocalTimeConverter implements AttributeConverter<LocalTime, Time>
   @Override
   public Time convertToDatabaseColumn(LocalTime lt)
   {
+    if (lt == null)
+      return null;
     return Time.valueOf(lt);
   }
 
   @Override
   public LocalTime convertToEntityAttribute(Time time)
   {
+    if (time == null)
+      return null;
     return time.toLocalTime();
   }
 }
index da84d151872cda0d279169d5ac2b6ddbcd82ca01..0174e9986c1b78eef74c5c17f9aaa3f85e43b37e 100644 (file)
@@ -16,12 +16,16 @@ public class LocaleConverter implements AttributeConverter<Locale, String>
   @Override
   public String convertToDatabaseColumn(Locale locale)
   {
+    if (locale == null)
+      return null;
     return locale.toLanguageTag();
   }
 
   @Override
   public Locale convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return Locale.forLanguageTag(string);
   }
 }
index 143ced1a6d421cac34d269568be9d487b38b9654..9063c33cdb9bd60c44eb14b5a9377a28147cfd3e 100644 (file)
@@ -15,12 +15,16 @@ public class MonthDayConverter implements AttributeConverter<MonthDay, String>
   @Override
   public String convertToDatabaseColumn(MonthDay monthday)
   {
+    if (monthday == null)
+      return null;
     return monthday.toString();
   }
 
   @Override
   public MonthDay convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return MonthDay.parse(string);
   }
 }
index 8815cf02c528e66b9eac1df7db3fddc9c6553e19..3228acafa04f8b650c84ae148bc3b034f7c45925 100644 (file)
@@ -17,12 +17,16 @@ public class OffsetDateTimeConverter implements AttributeConverter<OffsetDateTim
   @Override
   public Timestamp convertToDatabaseColumn(OffsetDateTime odt)
   {
+    if (odt == null)
+      return null;
     return Timestamp.from(odt.withOffsetSameInstant(ZoneOffset.UTC).toInstant());
   }
 
   @Override
   public OffsetDateTime convertToEntityAttribute(Timestamp ts)
   {
+    if (ts == null)
+      return null;
     return OffsetDateTime.of(ts.toLocalDateTime(), ZoneOffset.UTC);
   }
 }
index 92de0a9fc49eb2cb977702cad1e3db7a3631356a..6259860a0e9459d2d95ab935b62d566f9c9164b5 100644 (file)
@@ -17,6 +17,8 @@ public class OffsetTimeConverter implements AttributeConverter<OffsetTime, Time>
   @Override
   public Time convertToDatabaseColumn(OffsetTime ot)
   {
+    if (ot == null)
+      return null;
     ZoneOffset offset = ot.getOffset();
     return Time.valueOf(ot.withOffsetSameInstant(ZoneOffset.UTC).toLocalTime());
   }
@@ -24,6 +26,8 @@ public class OffsetTimeConverter implements AttributeConverter<OffsetTime, Time>
   @Override
   public OffsetTime convertToEntityAttribute(Time time)
   {
+    if (time == null)
+      return null;
     return OffsetTime.of(time.toLocalTime(), ZoneOffset.UTC);
   }
 }
index b241a56d35a9acc840f7ef62333e414253e67d16..a760b641c9032e560daaea2c75dff2049e7dfab8 100644 (file)
@@ -15,12 +15,16 @@ public class PeriodConverter implements AttributeConverter<Period, String>
   @Override
   public String convertToDatabaseColumn(Period period)
   {
+    if (period == null)
+      return null;
     return period.toString();
   }
 
   @Override
   public Period convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return Period.parse(string);
   }
 }
index f4ca8293ef034702a6123b12b5d3ba7eb1644efd..fe4635c7ab9437cc3cff485865b2e8c9142afbe4 100644 (file)
@@ -17,12 +17,16 @@ public class TemporalAmountToDaysConverter implements AttributeConverter<Tempora
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.DAYS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long days)
   {
+    if (days == null)
+      return null;
     return Duration.ofDays(days);
   }
 }
index dc4cf1fe477c4373c9161a25e574bb6410fff10c..22e78cd4e50eb2c3610ecdd16615530dfe283fb2 100644 (file)
@@ -17,12 +17,16 @@ public class TemporalAmountToHoursConverter implements AttributeConverter<Tempor
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.HOURS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long hours)
   {
+    if (hours == null)
+      return null;
     return Duration.ofHours(hours);
   }
 }
index 328b76d9488d672db278a91fd7fd4f7d4b415a7f..75a2d3f4daea20539778738af93930a7d34cefb0 100644 (file)
@@ -18,12 +18,16 @@ public class TemporalAmountToMicrosConverter implements AttributeConverter<Tempo
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.MICROS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long micros)
   {
+    if (micros == null)
+      return null;
     return Duration.of(micros, ChronoUnit.MICROS);
   }
 }
index dc3b7992c26451d1309127913157ffdcf38f2fc5..e3bb8ce855ebff9ce452be636c4814052e8a26d0 100644 (file)
@@ -18,12 +18,16 @@ public class TemporalAmountToMillisConverter implements AttributeConverter<Tempo
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.MILLIS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long millis)
   {
+    if (millis == null)
+      return null;
     return Duration.ofMillis(millis);
   }
 }
index 87907be5061daf7dfbef498df0e5715426ea3c2a..c09f8ee3e17d6ecec4ae13b18cf5393212e08fd3 100644 (file)
@@ -17,12 +17,16 @@ public class TemporalAmountToMinutesConverter implements AttributeConverter<Temp
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.MINUTES);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long minutes)
   {
+    if (minutes == null)
+      return null;
     return Duration.ofMinutes(minutes);
   }
 }
index d38a1dbad291eb17ab39fef50c84135bde52c246..99ad25a8d36ec334d5c7bc0b0965b0a04a70fa9d 100644 (file)
@@ -18,12 +18,16 @@ public class TemporalAmountToNanosConverter implements AttributeConverter<Tempor
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.NANOS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long nanos)
   {
+    if (nanos == null)
+      return null;
     return Duration.ofNanos(nanos);
   }
 }
index bd9fc13bd2c13ed2ae4d6cfca693c78bddc0e23c..4f4e6fc9d4ac31f2ac99ac2c4deda21b252aa1b3 100644 (file)
@@ -17,12 +17,16 @@ public class TemporalAmountToSecondsConverter implements AttributeConverter<Temp
   @Override
   public Long convertToDatabaseColumn(TemporalAmount amount)
   {
+    if (amount == null)
+      return null;
     return amount.get(ChronoUnit.SECONDS);
   }
 
   @Override
   public TemporalAmount convertToEntityAttribute(Long seconds)
   {
+    if (seconds == null)
+      return null;
     return Duration.ofSeconds(seconds);
   }
 }
index 2ce54a6002c715eff95750141f3b1444156bb9ff..5a1ac929c415e75830a0c98ad9e11279d040ea1e 100644 (file)
@@ -15,12 +15,16 @@ public class URIConverter implements AttributeConverter<URI, String>
   @Override
   public String convertToDatabaseColumn(URI uri)
   {
+    if (uri == null)
+      return null;
     return uri.toASCIIString();
   }
 
   @Override
   public URI convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return URI.create(string);
   }  
 }
index 9fe0c0ed5e86ad0968a1d84a084a6722590afa68..b2fe2b1839f7bb21d5a2f40317e18095533186a5 100644 (file)
@@ -27,6 +27,8 @@ public class URLConverter implements AttributeConverter<URL, String>
   @Override
   public String convertToDatabaseColumn(URL url)
   {
+    if (url == null)
+      return null;
     try
     {
       return url.toURI().toASCIIString();
@@ -41,6 +43,8 @@ public class URLConverter implements AttributeConverter<URL, String>
   @Override
   public URL convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     try
     {
       return URI.create(string).toURL();
index 59875a69dd2b06d754b743bbd884ad8eb37cf841..6e222670fd4f3fe540310dcd34ceb1e01ad9a051 100644 (file)
@@ -15,12 +15,16 @@ public class YearConverter implements AttributeConverter<Year, Integer>
   @Override
   public Integer convertToDatabaseColumn(Year year)
   {
+    if (year == null)
+      return null;
     return year.getValue();
   }
 
   @Override
   public Year convertToEntityAttribute(Integer integer)
   {
+    if (integer == null)
+      return null;
     return Year.of(integer);
   }
 }
index 47718d992ef645466f07b7db148522d4391e564b..f84b6765928d1b326e23299a7085fdcde5d0c764 100644 (file)
@@ -15,12 +15,16 @@ public class YearMonthConverter implements AttributeConverter<YearMonth, String>
   @Override
   public String convertToDatabaseColumn(YearMonth yearmonth)
   {
+    if (yearmonth == null)
+      return null;
     return yearmonth.toString();
   }
 
   @Override
   public YearMonth convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return YearMonth.parse(string);
   }
 }
index 57f3ba111672a222c6b941904455567dff982dcf..6266ad0ca8e978672e76b5b1c7832df3b21db9ff 100644 (file)
@@ -15,12 +15,16 @@ public class ZoneIdConverter implements AttributeConverter<ZoneId,String>
   @Override
   public String convertToDatabaseColumn(ZoneId zone)
   {
+    if (zone == null)
+      return null;
     return zone.getId();
   }
 
   @Override
   public ZoneId convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return ZoneId.of(string);
   }
 }
index f948b54fa2b49a53195738498194f7eae843c9d6..eca057fa6f36b44aaaf0e3444705fd10e5cb81b1 100644 (file)
@@ -15,12 +15,16 @@ public class ZoneOffsetConverter implements AttributeConverter<ZoneOffset, Strin
   @Override
   public String convertToDatabaseColumn(ZoneOffset offset)
   {
+    if (offset == null)
+      return null;
     return offset.getId();
   }
 
   @Override
   public ZoneOffset convertToEntityAttribute(String string)
   {
+    if (string == null)
+      return null;
     return ZoneOffset.of(string);
   }
 }
index 63637ee0fd834b4aa0eea68dd762d5b08ceb149a..3816d1bbb508347abc5d57bd44413df032acfbfa 100644 (file)
@@ -17,12 +17,16 @@ public class ZonedDateTimeConverter implements AttributeConverter<ZonedDateTime,
   @Override
   public Timestamp convertToDatabaseColumn(ZonedDateTime zdt)
   {
+    if (zdt == null)
+      return null;
     return Timestamp.from(zdt.withZoneSameInstant(ZoneId.systemDefault()).toInstant());
   }
 
   @Override
   public ZonedDateTime convertToEntityAttribute(Timestamp ts)
   {
+    if (ts == null)
+      return null;
     return ZonedDateTime.ofInstant(ts.toInstant(), ZoneId.systemDefault());
   }
 }