Improving performance of ConnectorTracker (#12218)
Swapping the if check in cleanConnectorMap to prevent unnecessary calls to
isComponentVisible when the connector is in uninitializedConnectors set.
Change-Id: If6305a908364f8a7bb51fd7302449c6f54c274a3
Avoiding duplicate lookup of connector hierarchy when a component shall be
marked dirty. Optimized if statement to fail fast.
Change-Id: I3ac82d64b235ebfd1888a6076c595f351018d887
Attempt to get GAE lock for UIDL requests (#12211)
Also removing the overhead of creating a Date object just for getting a
timestamp in the otherwise touched areas of code.
Change-Id: Ic712c0ae26d22995ad332593dbb8a14dbec7fcd6
When InputStream cannot be opened while writing static resource response, display 404 instead of 500 (#10920)
A security audit revealed that it is possible to trigger an error 500 with
stack trace by just trying a directory traversal. An example of this can be
found in the sampler: http://demo.vaadin.com/sampler/VAADIN/widgetsets/
While there are other scenarios that can produce exceptions, in this place
Vaadin can handle it more graceful by just catching the exception and
returning 404.
Change-Id: Iec68d81d3bca365ec133737a9cd3e3b825d192b2
When another threads interrupts the Upload, the UploadInterruptedException is
thrown. The respective StreamVariable will receive
streamingFailed(StreamingErrorEvent event) which contains the causing exception
via event.getException(). When the UploadInterruptedException is not public, it
is impossible to react on it in the StreamVariable (e.g. treating an
IOException differently from an UploadInterruptedException).
Change-Id: I9098e70e6750c420fcc0978340544e545e237b26
32x32 favicons added, replacing the old favicons (#12143)
Added new version for favicon.ico, which has 32x32 pixel version in
addition to 16x16 pixels. Adds support for high resolution/retina
displays.
Change-Id: I49bd84b9d23f1e26ceee28dab1e26d9cd4f6b6d2
If the path for a test case file contained special characters (such as
space), they would get URL encoded which wouldn't work for File
constructors.
Fixed by using URI.getPath(), which does the decoding.
Change-Id: I2a7c13b785adbb2e486d3807b115540c0ba70fa6
Add 'transport' GET parameter to AbstractTestUI (#12094)
* Value can be 'xhr', 'websocket', or 'streaming'
* xhr disables push even if already enabled
* others set push to automatic if not already set to manual
Change-Id: Iaf929bbb78865fa7d832718841e781e76cdf7277