summaryrefslogtreecommitdiffstats
path: root/src/com/vaadin/terminal/gwt/server/BootstrapResponse.java
blob: 37b59989f6440ad5b50a88a36d0320d84c4e0ae7 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/* 
@VaadinApache2LicenseForJavaFiles@
 */

package com.vaadin.terminal.gwt.server;

import java.util.EventObject;
import java.util.Map;

import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

import com.vaadin.Application;
import com.vaadin.terminal.WrappedRequest;
import com.vaadin.ui.Root;

public class BootstrapResponse extends EventObject {
    private final Document document;
    private final WrappedRequest request;
    private final Map<String, Object> headers;
    private final Element applicationTag;
    private final Application application;
    private final Integer rootId;

    public BootstrapResponse(BootstrapHandler handler, WrappedRequest request,
            Document document, Element applicationTag,
            Map<String, Object> headers, Application application, Integer rootId) {
        super(handler);
        this.request = request;
        this.document = document;
        this.applicationTag = applicationTag;
        this.headers = headers;
        this.application = application;
        this.rootId = rootId;
    }

    public void setHeader(String name, String value) {
        headers.put(name, value);
    }

    public void setDateHeader(String name, long timestamp) {
        headers.put(name, Long.valueOf(timestamp));
    }

    public BootstrapHandler getBootstrapHandler() {
        return (BootstrapHandler) getSource();
    }

    public WrappedRequest getRequest() {
        return request;
    }

    public Document getDocument() {
        return document;
    }

    public Element getApplicationTag() {
        return applicationTag;
    }

    public Application getApplication() {
        return application;
    }

    public Integer getRootId() {
        return rootId;
    }

    public Root getRoot() {
        return Root.getCurrent();
    }
}