package com.vaadin.demo.sampler;
import com.vaadin.demo.sampler.gwt.widgetset.client.ui.VGoogleAnalytics;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.ui.AbstractComponent;
import com.vaadin.ui.ClientWidget;
@SuppressWarnings("serial")
@ClientWidget(VGoogleAnalytics.class)
public class GoogleAnalytics extends AbstractComponent {
private String trackerId;
private String pageId;
private String domainName;
public GoogleAnalytics(String trackerId) {
this.trackerId = trackerId;
}
public GoogleAnalytics(String trackerId, String domainName) {
this(trackerId);
this.domainName = domainName;
}
public String getTrackerId() {
return trackerId;
}
public String getDomainName() {
return domainName;
}
public void trackPageview(String pageId) {
this.pageId = pageId;
requestRepaint();
}
@Override
public void paintContent(PaintTarget target) throws PaintException {
super.paintContent(target);
target.addAttribute("trackerid", trackerId);
if (pageId != null) {
target.addAttribute("pageid", pageId);
}
if (domainName != null) {
target.addAttribute("domain", domainName);
}
}
}