extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/converter/RequiredValueConverter.java

Code
Comments
Other
Rev Date Author Line
2957 19 Nov 14 nicklas 1 package net.sf.basedb.reggie.converter;
2957 19 Nov 14 nicklas 2
2957 19 Nov 14 nicklas 3 /**
2957 19 Nov 14 nicklas 4   Value converter implementation that only allow non-null values.
2957 19 Nov 14 nicklas 5   If a value is null, a pre-configured exception is thrown.
2957 19 Nov 14 nicklas 6   
2957 19 Nov 14 nicklas 7   @author nicklas
2957 19 Nov 14 nicklas 8   @since 2.17.2
2957 19 Nov 14 nicklas 9 */
2957 19 Nov 14 nicklas 10 public class RequiredValueConverter<T>
2957 19 Nov 14 nicklas 11   implements ValueConverter<T, T>
2957 19 Nov 14 nicklas 12 {
2957 19 Nov 14 nicklas 13
2957 19 Nov 14 nicklas 14   private final String msg;
2957 19 Nov 14 nicklas 15   
2957 19 Nov 14 nicklas 16   public RequiredValueConverter(String msg)
2957 19 Nov 14 nicklas 17   {
2957 19 Nov 14 nicklas 18     this.msg = msg;
2957 19 Nov 14 nicklas 19   }
2957 19 Nov 14 nicklas 20   
2957 19 Nov 14 nicklas 21   /*
2957 19 Nov 14 nicklas 22     From the ValueConverter interface
2957 19 Nov 14 nicklas 23     ---------------------------------
2957 19 Nov 14 nicklas 24   */
2957 19 Nov 14 nicklas 25   @Override
2957 19 Nov 14 nicklas 26   public T convert(T value) 
2957 19 Nov 14 nicklas 27   {
2957 19 Nov 14 nicklas 28     if (value == null) throw new NullPointerException(msg);
2957 19 Nov 14 nicklas 29     return value;
2957 19 Nov 14 nicklas 30   }
2957 19 Nov 14 nicklas 31   // ----------------------------------
2957 19 Nov 14 nicklas 32   
2957 19 Nov 14 nicklas 33 }