diff options
author | Leif Åstrand <leif@vaadin.com> | 2013-07-23 13:18:19 +0300 |
---|---|---|
committer | Leif Åstrand <leif@vaadin.com> | 2013-07-23 13:18:19 +0300 |
commit | 3bbb824c7f1dd9ed23fd65283332db31a24a1935 (patch) | |
tree | 163ce11cbeefb1c0f9ae3302e36c025c3d45fe22 | |
parent | 2a94befa3537937d099544a2d307bb177175eb15 (diff) | |
parent | 62c63a6a6dcf97c5a8f7b02e0115fdab096226db (diff) | |
download | vaadin-framework-3bbb824c7f1dd9ed23fd65283332db31a24a1935.tar.gz vaadin-framework-3bbb824c7f1dd9ed23fd65283332db31a24a1935.zip |
Merge changes from origin/7.1
36aebc8 Update to Atmosphere 1.0.14.vaadin4 (#12242)
62c63a6 Only add DateRangeValidator to DateField if start or end of range is set (#12193)
Change-Id: Ie2ba84e2d598313158007e521508c756abef6c2e
-rw-r--r-- | WebContent/VAADIN/jquery.atmosphere.js | 3 | ||||
-rw-r--r-- | push/build.xml | 4 | ||||
-rw-r--r-- | push/ivy.xml | 4 | ||||
-rw-r--r-- | server/src/com/vaadin/server/Constants.java | 4 | ||||
-rw-r--r-- | server/src/com/vaadin/ui/DateField.java | 13 | ||||
-rw-r--r-- | server/tests/src/com/vaadin/tests/server/component/datefield/DateFieldConverterTest.java | 77 |
6 files changed, 93 insertions, 12 deletions
diff --git a/WebContent/VAADIN/jquery.atmosphere.js b/WebContent/VAADIN/jquery.atmosphere.js index bb597f01b5..28a7d033bd 100644 --- a/WebContent/VAADIN/jquery.atmosphere.js +++ b/WebContent/VAADIN/jquery.atmosphere.js @@ -49,7 +49,8 @@ jQuery.atmosphere = function() { }; return { - version : "1.0.13", + // Keep the version number in sync with push/build.xml and other locations listed in that file + version : "1.0.14.vaadin4", requests : [], callbacks : [], diff --git a/push/build.xml b/push/build.xml index 2dc05f62fd..ead3a0226e 100644 --- a/push/build.xml +++ b/push/build.xml @@ -12,8 +12,8 @@ <property name="result.dir" location="result" /> <property name="vaadinPush.js" location="${result.dir}/js/VAADIN/vaadinPush.js" /> - <!-- Keep the version number in sync with ivy.xml and server/src/com/vaadin/server/Constants.java--> - <property name="atmosphere.version" value="1.0.14.vaadin3" /> + <!-- Keep the version number in sync with ivy.xml, server/src/com/vaadin/server/Constants.java and jquery.atmosphere.js --> + <property name="atmosphere.version" value="1.0.14.vaadin4" /> <property name="jquery.version" value="1.7.2" /> <path id="classpath.compile.custom" /> diff --git a/push/ivy.xml b/push/ivy.xml index 615e404db3..5a2a24fb1f 100644 --- a/push/ivy.xml +++ b/push/ivy.xml @@ -26,9 +26,9 @@ rev="2.4" conf="build-provided,ide,test -> default" /> <!-- Atmosphere --> - <!-- Keep the version number in sync with build.xml --> + <!-- Keep the version number in sync with build.xml and other locations listed in that file --> <dependency org="com.vaadin.external.atmosphere" name="atmosphere-runtime" - rev="1.0.14.vaadin3" conf="build,ide,test -> default"> + rev="1.0.14.vaadin4" conf="build,ide,test -> default"> </dependency> </dependencies> diff --git a/server/src/com/vaadin/server/Constants.java b/server/src/com/vaadin/server/Constants.java index ed65b53183..ab91ee021c 100644 --- a/server/src/com/vaadin/server/Constants.java +++ b/server/src/com/vaadin/server/Constants.java @@ -65,7 +65,9 @@ public interface Constants { + " Widgetset version: %s\n" + "================================================================="; - static final String REQUIRED_ATMOSPHERE_VERSION = "1.0.14.vaadin3"; + // Keep the version number in sync with push/build.xml and other locations + // listed in that file + static final String REQUIRED_ATMOSPHERE_VERSION = "1.0.14.vaadin4"; static final String INVALID_ATMOSPHERE_VERSION_WARNING = "\n" + "=================================================================\n" diff --git a/server/src/com/vaadin/ui/DateField.java b/server/src/com/vaadin/ui/DateField.java index 5017fac993..17dda73b95 100644 --- a/server/src/com/vaadin/ui/DateField.java +++ b/server/src/com/vaadin/ui/DateField.java @@ -402,13 +402,14 @@ public class DateField extends AbstractField<Date> implements private void updateRangeValidator() { if (currentRangeValidator != null) { removeValidator(currentRangeValidator); + currentRangeValidator = null; + } + if (getRangeStart() != null || getRangeEnd() != null) { + currentRangeValidator = new DateRangeValidator( + dateOutOfRangeMessage, getRangeStart(resolution), + getRangeEnd(resolution), null); + addValidator(currentRangeValidator); } - - currentRangeValidator = new DateRangeValidator(dateOutOfRangeMessage, - getRangeStart(resolution), getRangeEnd(resolution), null); - - addValidator(currentRangeValidator); - } /** diff --git a/server/tests/src/com/vaadin/tests/server/component/datefield/DateFieldConverterTest.java b/server/tests/src/com/vaadin/tests/server/component/datefield/DateFieldConverterTest.java new file mode 100644 index 0000000000..25ee0a38a9 --- /dev/null +++ b/server/tests/src/com/vaadin/tests/server/component/datefield/DateFieldConverterTest.java @@ -0,0 +1,77 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.vaadin.tests.server.component.datefield; + +import java.util.Date; +import java.util.Locale; + +import junit.framework.TestCase; + +import com.vaadin.data.Property; +import com.vaadin.data.util.ObjectProperty; +import com.vaadin.data.util.converter.Converter; +import com.vaadin.shared.ui.datefield.Resolution; +import com.vaadin.ui.DateField; + +public class DateFieldConverterTest extends TestCase { + + private Property<Long> date; + private DateField datefield; + + @Override + public void setUp() { + date = new ObjectProperty<Long>(0L); + datefield = new DateField(); + datefield.setBuffered(false); + datefield.setConverter(new Converter<Date, Long>() { + + @Override + public Long convertToModel(Date value, + Class<? extends Long> targetType, Locale locale) + throws ConversionException { + return value.getTime(); + } + + @Override + public Date convertToPresentation(Long value, + Class<? extends Date> targetType, Locale locale) + throws ConversionException { + return new Date(value); + } + + @Override + public Class<Long> getModelType() { + return Long.class; + } + + @Override + public Class<Date> getPresentationType() { + return Date.class; + } + }); + datefield.setPropertyDataSource(date); + } + + /* + * See #12193. + */ + public void testResolution() { + datefield.setValue(new Date(110, 0, 1)); + datefield.setResolution(Resolution.MINUTE); + datefield.validate(); + } +} |