package com.vaadin.tests.application;
import com.vaadin.annotations.PreserveOnRefresh;
import com.vaadin.server.Page.UriFragmentChangedEvent;
import com.vaadin.server.Page.UriFragmentChangedListener;
import com.vaadin.server.VaadinRequest;
import com.vaadin.tests.components.AbstractTestUI;
import com.vaadin.tests.util.Log;
import com.vaadin.ui.Label;
@PreserveOnRefresh
public class RefreshStatePreserve extends AbstractTestUI {
private Log log = new Log(5);
@Override
protected void setup(VaadinRequest request) {
// Internal parameter sent by vaadinBootstrap.js,
addComponent(new Label("window.name: " + request.getParameter("v-wn")));
addComponent(new Label("UI id: " + getUIId()));
addComponent(log);
log.log("Initial fragment: " + getPage().getUriFragment());
getPage().addUriFragmentChangedListener(
new UriFragmentChangedListener() {
@Override
public void uriFragmentChanged(UriFragmentChangedEvent event) {
log.log("Fragment changed to " + event.getUriFragment());
}
});
}
@Override
protected String getTestDescription() {
return "Refreshing the browser window should preserve the state";
}
@Override
protected Integer getTicketNumber() {
return Integer.valueOf(8068);
}
}