72 } else { |
72 } else { |
73 stmt.setString(index, str); |
73 stmt.setString(index, str); |
74 } |
74 } |
75 } |
75 } |
76 |
76 |
77 protected final <T> void setForeignKeyOrNull(PreparedStatement stmt, int index, T instance, Function<T, Integer> keyGetter) throws SQLException { |
77 protected final void setForeignKeyOrNull(PreparedStatement stmt, int index, Object instance, Function<Object, Integer> keyGetter) throws SQLException { |
78 Integer key = Optional.ofNullable(instance).map(keyGetter).orElse(null); |
78 Integer key = Optional.ofNullable(instance).map(keyGetter).orElse(null); |
79 if (key == null) { |
79 if (key == null) { |
80 stmt.setNull(index, Types.INTEGER); |
80 stmt.setNull(index, Types.INTEGER); |
81 } else { |
81 } else { |
82 stmt.setInt(index, key); |
82 stmt.setInt(index, key); |