- Revision
- 516
- Author
- mauro
- Date
- 2007-12-19 03:42:34 -0600 (Wed, 19 Dec 2007)
Log Message
Renamed StringTransmuterImpl to DefaultStringTransmuter.
Modified Paths
- trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoComponentRegistry.java
- trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoComponentRegistryTest.java
Added Paths
- trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/DefaultStringTransmuter.java
- trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/DefaultStringTransmuterTest.java
Removed Paths
Diff
Copied: trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/DefaultStringTransmuter.java (from rev 514, trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/StringTransmuterImpl.java) (0 => 516)
--- trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/DefaultStringTransmuter.java (rev 0) +++ trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/DefaultStringTransmuter.java 2007-12-19 09:42:34 UTC (rev 516) @@ -0,0 +1,20 @@ +package org.codehaus.waffle.bind; + +public class DefaultStringTransmuter implements StringTransmuter { + private final ValueConverterFinder valueConverterFinder; + + public DefaultStringTransmuter(ValueConverterFinder valueConverterFinder) { + this.valueConverterFinder = valueConverterFinder; + } + + public <T> T transmute(String value, Class<T> toType) { + if (isEmpty(value) && toType.isPrimitive()) { + value = null; // this allows Ognl to use that primitives default value + } + return valueConverterFinder.findConverter(toType).convertValue(null, value, toType); + } + + private boolean isEmpty(String value) { + return value == null || value.length() == 0; + } +}
Deleted: trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/StringTransmuterImpl.java (515 => 516)
--- trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/StringTransmuterImpl.java 2007-12-19 08:42:51 UTC (rev 515) +++ trunk/waffle-core/src/main/java/org/codehaus/waffle/bind/StringTransmuterImpl.java 2007-12-19 09:42:34 UTC (rev 516) @@ -1,20 +0,0 @@ -package org.codehaus.waffle.bind; - -public class StringTransmuterImpl implements StringTransmuter { - private final ValueConverterFinder valueConverterFinder; - - public StringTransmuterImpl(ValueConverterFinder valueConverterFinder) { - this.valueConverterFinder = valueConverterFinder; - } - - public <T> T transmute(String value, Class<T> toType) { - if (isEmpty(value) && toType.isPrimitive()) { - value = null; // this allows Ognl to use that primitives default value - } - return valueConverterFinder.findConverter(toType).convertValue(null, value, toType); - } - - private boolean isEmpty(String value) { - return value == null || value.length() == 0; - } -}
Modified: trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoComponentRegistry.java (515 => 516)
--- trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoComponentRegistry.java 2007-12-19 08:42:51 UTC (rev 515) +++ trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoComponentRegistry.java 2007-12-19 09:42:34 UTC (rev 516) @@ -30,7 +30,7 @@ import org.codehaus.waffle.bind.RequestAttributeBinder; import org.codehaus.waffle.bind.ValueConverterFinder; import org.codehaus.waffle.bind.StringTransmuter; -import org.codehaus.waffle.bind.StringTransmuterImpl; +import org.codehaus.waffle.bind.DefaultStringTransmuter; import org.codehaus.waffle.bind.ognl.OgnlBindErrorMessageResolver; import org.codehaus.waffle.bind.ognl.OgnlDataBinder; import org.codehaus.waffle.bind.ognl.OgnlValueConverterFinder; @@ -90,7 +90,7 @@ register(BindErrorMessageResolver.class, OgnlBindErrorMessageResolver.class, servletContext); register(DataBinder.class, OgnlDataBinder.class, servletContext); register(RequestAttributeBinder.class, IntrospectingRequestAttributeBinder.class, servletContext); - register(StringTransmuter.class, StringTransmuterImpl.class, servletContext); + register(StringTransmuter.class, DefaultStringTransmuter.class, servletContext); register(ValueConverterFinder.class, OgnlValueConverterFinder.class, servletContext); register(ContextContainerFactory.class, PicoContextContainerFactory.class, servletContext); register(ControllerDefinitionFactory.class, ContextControllerDefinitionFactory.class, servletContext);
Copied: trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/DefaultStringTransmuterTest.java (from rev 514, trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/StringTransmuterImplTest.java) (0 => 516)
--- trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/DefaultStringTransmuterTest.java (rev 0) +++ trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/DefaultStringTransmuterTest.java 2007-12-19 09:42:34 UTC (rev 516) @@ -0,0 +1,64 @@ +package org.codehaus.waffle.bind; + +import org.jmock.Expectations; +import org.jmock.Mockery; +import org.jmock.integration.junit4.JMock; +import static org.junit.Assert.assertEquals; +import org.junit.Test; +import org.junit.runner.RunWith; + [EMAIL PROTECTED](JMock.class) +public class DefaultStringTransmuterTest { + private final Mockery mockery = new Mockery(); + + @Test + public void canFindCorrectValueConverter() { + final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); + final ValueConverter valueConverter = mockery.mock(ValueConverter.class); + mockery.checking(new Expectations() { + { + one(valueConverterFinder).findConverter(Float.class); + will(returnValue(valueConverter)); + one(valueConverter).convertValue(null, "foobar", Float.class); + will(returnValue(99.9f)); + } + }); + + StringTransmuter stringTransmuter = new DefaultStringTransmuter(valueConverterFinder); + assertEquals(Float.valueOf(99.9f), stringTransmuter.transmute("foobar", Float.class)); + } + + @Test + public void canHandleEmptyStringValue() { + final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); + final ValueConverter valueConverter = mockery.mock(ValueConverter.class); + mockery.checking(new Expectations() { + { + one(valueConverterFinder).findConverter(Integer.class); + will(returnValue(valueConverter)); + one(valueConverter).convertValue(null, "", Integer.class); + will(returnValue(54)); + } + }); + + StringTransmuter stringTransmuter = new DefaultStringTransmuter(valueConverterFinder); + assertEquals(Integer.valueOf(54), stringTransmuter.transmute("", Integer.class)); + } + + @Test + public void canHandleEmptyStringValueForPrimitiveType() { + final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); + final ValueConverter valueConverter = mockery.mock(ValueConverter.class); + mockery.checking(new Expectations() { + { + one(valueConverterFinder).findConverter(float.class); + will(returnValue(valueConverter)); + one(valueConverter).convertValue(null, null, float.class); + will(returnValue(2.0f)); + } + }); + + StringTransmuter stringTransmuter = new DefaultStringTransmuter(valueConverterFinder); + assertEquals(Float.valueOf(2.0f), stringTransmuter.transmute("", float.class)); + } +}
Deleted: trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/StringTransmuterImplTest.java (515 => 516)
--- trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/StringTransmuterImplTest.java 2007-12-19 08:42:51 UTC (rev 515) +++ trunk/waffle-core/src/test/java/org/codehaus/waffle/bind/StringTransmuterImplTest.java 2007-12-19 09:42:34 UTC (rev 516) @@ -1,64 +0,0 @@ -package org.codehaus.waffle.bind; - -import org.jmock.Expectations; -import org.jmock.Mockery; -import org.jmock.integration.junit4.JMock; -import static org.junit.Assert.assertEquals; -import org.junit.Test; -import org.junit.runner.RunWith; - [EMAIL PROTECTED](JMock.class) -public class StringTransmuterImplTest { - private final Mockery mockery = new Mockery(); - - @Test - public void canFindCorrectValueConverter() { - final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); - final ValueConverter valueConverter = mockery.mock(ValueConverter.class); - mockery.checking(new Expectations() { - { - one(valueConverterFinder).findConverter(Float.class); - will(returnValue(valueConverter)); - one(valueConverter).convertValue(null, "foobar", Float.class); - will(returnValue(99.9f)); - } - }); - - StringTransmuter stringTransmuter = new StringTransmuterImpl(valueConverterFinder); - assertEquals(Float.valueOf(99.9f), stringTransmuter.transmute("foobar", Float.class)); - } - - @Test - public void canHandleEmptyStringValue() { - final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); - final ValueConverter valueConverter = mockery.mock(ValueConverter.class); - mockery.checking(new Expectations() { - { - one(valueConverterFinder).findConverter(Integer.class); - will(returnValue(valueConverter)); - one(valueConverter).convertValue(null, "", Integer.class); - will(returnValue(54)); - } - }); - - StringTransmuter stringTransmuter = new StringTransmuterImpl(valueConverterFinder); - assertEquals(Integer.valueOf(54), stringTransmuter.transmute("", Integer.class)); - } - - @Test - public void canHandleEmptyStringValueForPrimitiveType() { - final ValueConverterFinder valueConverterFinder = mockery.mock(ValueConverterFinder.class); - final ValueConverter valueConverter = mockery.mock(ValueConverter.class); - mockery.checking(new Expectations() { - { - one(valueConverterFinder).findConverter(float.class); - will(returnValue(valueConverter)); - one(valueConverter).convertValue(null, null, float.class); - will(returnValue(2.0f)); - } - }); - - StringTransmuter stringTransmuter = new StringTransmuterImpl(valueConverterFinder); - assertEquals(Float.valueOf(2.0f), stringTransmuter.transmute("", float.class)); - } -}
Modified: trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoComponentRegistryTest.java (515 => 516)
--- trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoComponentRegistryTest.java 2007-12-19 08:42:51 UTC (rev 515) +++ trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoComponentRegistryTest.java 2007-12-19 09:42:34 UTC (rev 516) @@ -14,7 +14,7 @@ import org.codehaus.waffle.bind.RequestAttributeBinder; import org.codehaus.waffle.bind.StringTransmuter; import org.codehaus.waffle.bind.ValueConverterFinder; -import org.codehaus.waffle.bind.StringTransmuterImpl; +import org.codehaus.waffle.bind.DefaultStringTransmuter; import org.codehaus.waffle.bind.ognl.OgnlBindErrorMessageResolver; import org.codehaus.waffle.bind.ognl.OgnlDataBinder; import org.codehaus.waffle.bind.ognl.OgnlValueConverterFinder; @@ -155,7 +155,7 @@ assertTrue(componentRegistry.getMessageResources() instanceof DefaultMessageResources); assertTrue(componentRegistry.getRegistrarMonitor() instanceof AbstractWritingMonitor); assertTrue(componentRegistry.getServletMonitor() instanceof AbstractWritingMonitor); - assertTrue(componentRegistry.getStringTransmuter() instanceof StringTransmuterImpl); + assertTrue(componentRegistry.getStringTransmuter() instanceof DefaultStringTransmuter); assertTrue(componentRegistry.getValueConverterFinder() instanceof OgnlValueConverterFinder); assertTrue(componentRegistry.getValidator() instanceof DefaultValidator); assertTrue(componentRegistry.getValidationMonitor() instanceof AbstractWritingMonitor);
To unsubscribe from this list please visit:
