private Object upgrade(Object property) { if (property instanceof Setter) { return new SetterProperty((Setter<?, ?>) property); } if (property instanceof Getter) { return new GetterProperty((Getter<?, ?>) property); } return property; }
private Object upgrade(Object property) { if (property instanceof Setter) { return new SetterProperty((Setter<?, ?>) property); } if (property instanceof Getter) { return new GetterProperty((Getter<?, ?>) property); } return property; }
@Test public void testCustomSetter() throws Exception { Object o = new Object(); newFieldMapperAndMapToPS(new ConstantGetter<Object, Object>(o), Object.class, new SetterProperty(new Setter<PreparedStatement, Object>() { @Override public void set(PreparedStatement target, Object value) throws Exception { ps.setString(35, "aa"); } })); verify(ps).setString(35, "aa"); }
@Test public void testSetterProperty() { Setter<Object, Object> setter = new Setter<Object, Object>() { @Override public void set(Object target, Object value) throws Exception { } @Override public String toString() { return "S"; } }; SetterProperty property = new SetterProperty(setter); assertSame(setter, property.getSetter()); assertEquals("Setter{S}", property.toString()); }
@Test public void jdbcMapperExtrapolateOverrideSetter() { JdbcMapperFactory .newInstance() .addColumnProperty("bar", new SetterProperty(new Setter<PreparedStatement, Bar2Prop>() { @Override public void set(PreparedStatement target, Bar2Prop value) throws Exception { target.setString(3, value.getVal()); target.setInt(4, value.getI()); } })) .buildFrom(Foo2.class) .addColumn("bar") .mapper(); } @Test
private MapperConfig<SampleFieldKey, Object[]> mapperConfig() { FieldMapperColumnDefinitionProviderImpl<SampleFieldKey> provider = new FieldMapperColumnDefinitionProviderImpl<SampleFieldKey>(); provider.addColumnDefinition("benchmark", FieldMapperColumnDefinition.<SampleFieldKey>identity().add(new SetterProperty(SETTER)).add(new GetterProperty(GETTER))); return MapperConfig.<SampleFieldKey, Object[]>fieldMapperConfig().columnDefinitions(provider); } }