aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src/main/java/com/vaadin/tests/minitutorials/v7a1/CreatingPreserveState.java
blob: e307317ec48c6cf726246195aa63d0ebe6d5dec0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.vaadin.tests.minitutorials.v7a1;

import com.vaadin.annotations.PreserveOnRefresh;
import com.vaadin.server.VaadinRequest;
import com.vaadin.ui.CssLayout;
import com.vaadin.ui.Label;
import com.vaadin.ui.UI;
import com.vaadin.v7.ui.TextField;

/**
 * Mini tutorial code for
 * https://vaadin.com/wiki/-/wiki/Main/Creating%20an%20application
 * %20that%20preserves%20state%20on%20refresh
 *
 * @author Vaadin Ltd
 * @since 7.0.0
 */
@PreserveOnRefresh
public class CreatingPreserveState extends UI {
    private static int instanceCounter = 0;

    private final CssLayout content = new CssLayout();

    @Override
    public void init(VaadinRequest request) {
        TextField tf = new TextField("Instance #" + (++instanceCounter));
        tf.setImmediate(true);

        content.addComponent(tf);
        setContent(content);
    }

    @Override
    protected void refresh(VaadinRequest request) {
        content.addComponent(
                new Label("UI was refreshed @" + System.currentTimeMillis()));
    }
}