From d9f5e4c8054fa3d99f30640c9ac44eb8e850fe50 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Leif=20=C3=85strand?= null
if details are not
* available
diff --git a/src/com/vaadin/ui/Root.java b/src/com/vaadin/ui/Root.java
index 1a67edebde..4998baf90f 100644
--- a/src/com/vaadin/ui/Root.java
+++ b/src/com/vaadin/ui/Root.java
@@ -18,7 +18,7 @@ import java.util.List;
import java.util.Map;
import com.vaadin.Application;
-import com.vaadin.annotations.RootInitRequiresBrowserDetails;
+import com.vaadin.annotations.EagerInit;
import com.vaadin.event.Action;
import com.vaadin.event.Action.Handler;
import com.vaadin.event.ActionManager;
@@ -60,9 +60,10 @@ import com.vaadin.ui.Window.CloseListener;
* {@link #setContent(ComponentContainer)}.
*
- * If a {@link RootInitRequiresBrowserDetails} annotation is present on a class
- * extending Root
, the framework will ensure {@link BrowserDetails}
- * are present in the {@link WrappedRequest} passed to the init method.
+ * If a {@link EagerInit} annotation is present on a class extending
+ * Root
, the framework will use a faster initialization method
+ * which will not ensure that {@link BrowserDetails} are present in the
+ * {@link WrappedRequest} passed to the init method.
*
* The {@link WrappedRequest} can be used to get information about the * request that caused this root to be created. By default, the - * {@link BrowserDetails} are note guaranteed to be available in the - * request. Availability of the browser details can be requested by adding - * the {@link RootInitRequiresBrowserDetails} annotation to the class. + * {@link BrowserDetails} will be available in the request. If the browser + * details are not required, loading the application in the browser can take + * some shortcuts giving a faster initial rendering. This can be indicated + * by adding the {@link EagerInit} annotation to the Root class. *
* * @param request diff --git a/tests/testbench/com/vaadin/tests/application/RefreshStatePreserve.java b/tests/testbench/com/vaadin/tests/application/RefreshStatePreserve.java index 83d34e55af..36a793bd6d 100644 --- a/tests/testbench/com/vaadin/tests/application/RefreshStatePreserve.java +++ b/tests/testbench/com/vaadin/tests/application/RefreshStatePreserve.java @@ -1,13 +1,11 @@ package com.vaadin.tests.application; -import com.vaadin.annotations.RootInitRequiresBrowserDetails; import com.vaadin.terminal.WrappedRequest; import com.vaadin.tests.components.AbstractTestApplication; import com.vaadin.ui.Label; import com.vaadin.ui.Root; public class RefreshStatePreserve extends AbstractTestApplication { - @RootInitRequiresBrowserDetails public static class RefreshStateRoot extends Root { @Override public void init(WrappedRequest request) { diff --git a/tests/testbench/com/vaadin/tests/components/root/LazyInitRoots.java b/tests/testbench/com/vaadin/tests/components/root/LazyInitRoots.java index f40de92777..93bbc3995e 100644 --- a/tests/testbench/com/vaadin/tests/components/root/LazyInitRoots.java +++ b/tests/testbench/com/vaadin/tests/components/root/LazyInitRoots.java @@ -1,7 +1,7 @@ package com.vaadin.tests.components.root; import com.vaadin.RootRequiresMoreInformationException; -import com.vaadin.annotations.RootInitRequiresBrowserDetails; +import com.vaadin.annotations.EagerInit; import com.vaadin.terminal.ExternalResource; import com.vaadin.terminal.WrappedRequest; import com.vaadin.terminal.WrappedRequest.BrowserDetails; @@ -12,14 +12,13 @@ import com.vaadin.ui.Root; public class LazyInitRoots extends AbstractTestApplication { - @RootInitRequiresBrowserDetails - private static class LazyInitRoot extends Root { + @EagerInit + private static class EagerInitRoot extends Root { @Override public void init(WrappedRequest request) { BrowserDetails browserDetails = request.getBrowserDetails(); getContent().addComponent( - new Label("Lazy init root: " - + browserDetails.getUriFragment())); + new Label("Lazy init root: " + browserDetails)); } } @@ -41,9 +40,9 @@ public class LazyInitRoots extends AbstractTestApplication { }; return root; } - } else if (request.getParameter("lazyInit") != null) { + } else if (request.getParameter("eagerInit") != null) { // Root inited on second request - return new LazyInitRoot(); + return new EagerInitRoot(); } else { // The standard root Root root = new Root() { @@ -55,9 +54,9 @@ public class LazyInitRoots extends AbstractTestApplication { lazyCreateLink.setTargetName("_blank"); addComponent(lazyCreateLink); - Link lazyInitLink = new Link("Open lazyInit root", + Link lazyInitLink = new Link("Open eagerInit root", new ExternalResource(getURL() - + "?lazyInit#lazyInit")); + + "?eagerInit#eagerInit")); lazyInitLink.setTargetName("_blank"); addComponent(lazyInitLink); } diff --git a/tests/testbench/com/vaadin/tests/components/root/UriFragmentTest.java b/tests/testbench/com/vaadin/tests/components/root/UriFragmentTest.java index 8d87804448..6078161996 100644 --- a/tests/testbench/com/vaadin/tests/components/root/UriFragmentTest.java +++ b/tests/testbench/com/vaadin/tests/components/root/UriFragmentTest.java @@ -1,13 +1,11 @@ package com.vaadin.tests.components.root; -import com.vaadin.annotations.RootInitRequiresBrowserDetails; import com.vaadin.terminal.WrappedRequest; import com.vaadin.tests.components.AbstractTestRoot; import com.vaadin.ui.Button; import com.vaadin.ui.Button.ClickEvent; import com.vaadin.ui.Label; -@RootInitRequiresBrowserDetails public class UriFragmentTest extends AbstractTestRoot { private final Label fragmentLabel = new Label(); -- 2.39.5