Remove unused microbenchmarks.
Change-Id: I6f9fa0f0c18bed447d98b81e4955c02420a24eb7
diff --git a/reference/BUILD b/reference/BUILD
deleted file mode 100644
index 58d3816..0000000
--- a/reference/BUILD
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 2012 Google Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may not
-# use this file except in compliance with the License. You may obtain a copy of
-# the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations under
-# the License.
-
-# Description:
-#
-# Unused code kept around for reference.
-
-# Google owns the copyright
-licenses(["unencumbered"])
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/Microbenchmarks.gwt.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/Microbenchmarks.gwt.xml
deleted file mode 100644
index 7b85430..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/Microbenchmarks.gwt.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module rename-to='microbenchmarks'>
- <inherits name='com.google.gwt.user.User'/>
- <inherits name='com.google.gwt.user.theme.standard.Standard'/>
-
- <!-- Specify the app entry point class. -->
- <entry-point class='com.google.gwt.reference.microbenchmark.client.Microbenchmarks'/>
-
- <!-- Specify the paths for translatable code -->
- <source path='client'/>
-
- <!-- Deferred binding for Util. -->
- <replace-with class="com.google.gwt.reference.microbenchmark.client.UtilImplTrident">
- <when-type-is class="com.google.gwt.reference.microbenchmark.client.UtilImpl" />
- <any>
- <when-property-is name="user.agent" value="ie6" />
- <when-property-is name="user.agent" value="ie8" />
- <when-property-is name="user.agent" value="ie9" />
- </any>
- </replace-with>
-
-</module>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.java
deleted file mode 100644
index 0f39b9b..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Creates an empty HTMLPanel via UiBinder.
- */
-public class EmptyBinder extends Composite {
-
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("HTMLPanel UiBinder");
- }
-
- @Override
- public Widget make() {
- return new EmptyBinder();
- }
- }
- interface Binder extends UiBinder<Widget, EmptyBinder> {}
-
- private static final Binder BINDER = GWT.create(Binder.class);
-
- private EmptyBinder() {
- initWidget(BINDER.createAndBindUi(this));
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.ui.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.ui.xml
deleted file mode 100644
index 42de1b2..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/EmptyBinder.ui.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
- xmlns:gwt='urn:import:com.google.gwt.user.client.ui'>
- <gwt:HTMLPanel/>
-</ui:UiBinder>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmark.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmark.java
deleted file mode 100644
index a44cf50..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmark.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Implemented by the Microbenchmarks run from {@link Microbenchmarks}.
- */
-public interface Microbenchmark {
- /**
- * @return The user visible name of this benchmark
- */
- String getName();
-
- /**
- * @return The widget to display for this benchmark
- */
- Widget getWidget();
-
- /**
- * Run the benchmark.
- */
- void run();
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.java
deleted file mode 100644
index f37ee1a..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.java
+++ /dev/null
@@ -1,414 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.Duration;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.event.dom.client.BlurEvent;
-import com.google.gwt.event.dom.client.BlurHandler;
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.Cookies;
-import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.Window.ClosingEvent;
-import com.google.gwt.user.client.Window.ClosingHandler;
-import com.google.gwt.user.client.ui.CheckBox;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.Grid;
-import com.google.gwt.user.client.ui.InlineLabel;
-import com.google.gwt.user.client.ui.PopupPanel;
-import com.google.gwt.user.client.ui.RootPanel;
-import com.google.gwt.user.client.ui.ScrollPanel;
-import com.google.gwt.user.client.ui.TextBox;
-import com.google.gwt.user.client.ui.Widget;
-
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-
-/**
- * An implementation of {@link Microbenchmark} that surveys multiple timed
- * tests.
- */
-public class MicrobenchmarkSurvey implements Microbenchmark {
-
- /**
- * A single runnable test that makes up the survey.
- */
- static abstract class NanoTest {
-
- private final String name;
-
- /**
- * Construct a new {@link NanoTest}.
- *
- * @param name the display name
- */
- public NanoTest(String name) {
- this.name = name;
- }
-
- public String getName() {
- return name;
- }
-
- /**
- * Get the widget to display in a popup when the user clicks on the test
- * name.
- *
- * @return the popup widget, or null not to show one
- */
- public Widget getPopup() {
- return null;
- }
-
- /**
- * Run the test.
- */
- public abstract void runTest();
-
- /**
- * Setup the test before starting the timer. Override this method to prepare
- * the test before it starts running.
- */
- public void setup() {
- // No-op by default.
- }
-
- /**
- * Tear down the test after stopping the timer. Override this method to
- * cleanup the test after it completes.
- */
- public void teardown() {
- // No-op by default.
- }
- }
-
- /**
- * A nano test that makes a widget and attaches it to the {@link RootPanel}.
- */
- static abstract class WidgetMaker extends NanoTest {
-
- private final RootPanel root = RootPanel.get();
- private Widget popupWidget;
- private Widget w;
-
- public WidgetMaker(String name) {
- super(name);
- }
-
- @Override
- public Widget getPopup() {
- if (popupWidget == null) {
- popupWidget = make();
- }
- return popupWidget;
- }
-
- @Override
- public void runTest() {
- w = make();
- root.add(w);
-
- /*
- * Force a layout by finding the body's offsetTop and height. We avoid
- * doing setTimeout(0), which would allow paint to happen, to keep the
- * test synchronous and because different browsers round that zero to
- * different minimums. Layout should be the bulk of the time.
- */
- Document.get().getBody().getOffsetTop();
- Document.get().getBody().getOffsetHeight();
- w.getOffsetHeight();
- }
-
- @Override
- public void teardown() {
- // Clean up to keep the dom. Attached widgets will affect later tests.
- root.remove(w);
- }
-
- /**
- * Make the widget to test.
- *
- * @return the widget
- */
- protected abstract Widget make();
- }
-
- /**
- * A nano test that updates an existing widget that is already attached to the
- * {@link RootPanel}.
- *
- * @param <W> the widget type
- */
- static abstract class WidgetUpdater<W extends Widget> extends MicrobenchmarkSurvey.NanoTest {
-
- private final RootPanel root = RootPanel.get();
- private W w;
-
- public WidgetUpdater(String name) {
- super(name);
- }
-
- @Override
- public Widget getPopup() {
- return ensureWidget();
- }
-
- @Override
- public void setup() {
- root.add(ensureWidget());
- }
-
- @Override
- public void runTest() {
- updateWidget(w);
- }
-
- @Override
- public void teardown() {
- root.remove(w);
- }
-
- /**
- * Make the widget to test.
- *
- * @return the widget
- */
- protected abstract W make();
-
- /**
- * Update the widget.
- *
- * @param w the widget to update
- */
- protected abstract void updateWidget(W w);
-
- private W ensureWidget() {
- if (w == null) {
- w = make();
- }
- return w;
- }
- }
-
- interface Binder extends UiBinder<Widget, MicrobenchmarkSurvey> {
- }
-
- private static final Binder BINDER = GWT.create(Binder.class);
-
- private static final String COOKIE = "gwt_microb_survey";
-
- private static final int DEFAULT_INSTANCES = 100;
-
- public static native void log(String msg) /*-{
- var logger = $wnd.console;
- if (logger) {
- logger.log(msg);
- if (logger.markTimeline) {
- logger.markTimeline(msg);
- }
- }
- }-*/;
-
- @UiField(provided = true)
- Grid grid;
- @UiField
- CheckBox includeLargeWidget;
- @UiField
- TextBox number;
- @UiField
- Widget root;
- final String name;
- private final List<NanoTest> nanos;
-
- /**
- * Construct a new {@link MicrobenchmarkSurvey} micro benchmark.
- *
- * @param name the name of the benchmark
- * @param nanos the {@link NanoTest}s that make up the survey
- */
- public MicrobenchmarkSurvey(String name, List<NanoTest> nanos) {
- this.name = name;
- this.nanos = Collections.unmodifiableList(nanos);
-
- int instances = DEFAULT_INSTANCES;
- try {
- instances = Integer.parseInt(Cookies.getCookie(COOKIE));
- } catch (NumberFormatException ignored) {
- }
-
- // Initialize the grid.
- grid = new Grid(nanos.size() + 2, 3);
- grid.setText(0, 0, "median");
- grid.setText(0, 1, "mean");
-
- int row = 1;
- for (final NanoTest nano : nanos) {
- grid.setText(row, 0, "0");
- grid.setText(row, 1, "0");
- InlineLabel a = new InlineLabel();
- a.setText(nano.getName());
- a.addClickHandler(new ClickHandler() {
- public void onClick(ClickEvent event) {
- Widget toDisplay = nano.getPopup();
- if (toDisplay != null) {
- PopupPanel popup = new PopupPanel(true, true);
- ScrollPanel container = new ScrollPanel(toDisplay);
- container.setPixelSize(500, 500);
- popup.setWidget(container);
- popup.center();
- }
- }
- });
- // TODO: popup.
- grid.setWidget(row, 2, a);
- row++;
- }
-
- // Create the widget.
- root = BINDER.createAndBindUi(this);
- number.setVisibleLength(7);
- number.setValue("" + instances);
- number.addBlurHandler(new BlurHandler() {
- public void onBlur(BlurEvent event) {
- saveInstances();
- }
- });
-
- Window.addWindowClosingHandler(new ClosingHandler() {
- public void onWindowClosing(ClosingEvent event) {
- saveInstances();
- }
- });
- }
-
- public String getName() {
- return name;
- }
-
- public Widget getWidget() {
- return root;
- }
-
- public void run() {
- RootPanel root = RootPanel.get();
-
- // Add a large widget to the root to reflect a typical application.
- FlowPanel largeWidget = null;
- if (includeLargeWidget.getValue()) {
- largeWidget = new FlowPanel();
- TestWidgetBinder.Maker widgetMaker = new TestWidgetBinder.Maker();
- for (int i = 0; i < 100; i++) {
- largeWidget.add(widgetMaker.make());
- }
- root.add(largeWidget);
- }
-
- int nanosCount = nanos.size();
- double[] times = new double[nanosCount];
-
- int column = grid.getColumnCount();
- grid.resizeColumns(column + 1);
- grid.setText(0, column, "Run " + (column - 3));
-
- final int instances = getInstances();
- boolean forward = false;
- for (int i = 0; i < instances; ++i) {
- forward = !forward;
- for (int m = 0; m < nanosCount; m++) {
- /*
- * Alternate the order that we invoke the makers to cancel out the
- * performance impact of adding elements to the DOM, which would cause
- * later tests to run more slowly than earlier tests.
- */
- NanoTest nano = nanos.get(forward ? m : (nanosCount - 1 - m));
- nano.setup();
-
- // Execute the test.
- log(i + ": " + nano.name);
- double start = Duration.currentTimeMillis();
- nano.runTest();
-
- // Record the end time.
- double thisTime = Duration.currentTimeMillis() - start;
- times[m] += thisTime;
-
- // Cleanup after the test.
- nano.teardown();
- }
- }
-
- // Record the times.
- double allTimes = 0;
- for (int m = 0; m < nanosCount; ++m) {
- record(m + 1, times[m]);
- allTimes += times[m];
- }
- grid.setText(grid.getRowCount() - 1, grid.getColumnCount() - 1, Util.format(allTimes));
-
- // Cleanup the dom.
- if (largeWidget != null) {
- root.remove(largeWidget);
- }
- }
-
- private int getInstances() {
- try {
- int instances = Integer.parseInt(number.getValue());
- return instances;
- } catch (NumberFormatException ignored) {
- return 0;
- }
- }
-
- private void record(int row, double thisTime) {
- final int columns = grid.getColumnCount();
- grid.setText(row, columns - 1, Util.format(thisTime));
-
- double max = 0, min = 0, mean = 0;
-
- for (int column = 3; column < columns; column++) {
- double value = Double.parseDouble(grid.getText(row, column));
- mean += value;
- max = Math.max(max, value);
- if (min == 0) {
- min = max;
- } else {
- min = Math.min(min, value);
- }
- }
-
- double range = max - min;
- double halfRange = range / 2;
- double median = min + halfRange;
- grid.setText(row, 0, Util.format(Util.roundToTens(median)));
-
- mean = mean / (columns - 3);
- grid.setText(row, 1, Util.format(Util.roundToTens(mean)));
- }
-
- @SuppressWarnings("deprecation")
- private void saveInstances() {
- String value = number.getValue();
- Date expires = new Date();
- expires.setYear(expires.getYear() + 3);
- Cookies.setCookie(COOKIE, value, expires);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.ui.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.ui.xml
deleted file mode 100644
index ba226d6..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/MicrobenchmarkSurvey.ui.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<ui:UiBinder
- xmlns:ui='urn:ui:com.google.gwt.uibinder'
- xmlns:g='urn:import:com.google.gwt.user.client.ui'>
-
- <g:HTMLPanel
- ui:field="root">
- <b>
- Time for creating, attaching and detaching
- <g:TextBox
- ui:field="number"
- visibleLength="7" />
- instances, in MS
- </b>
- <br />
-
- <g:CheckBox
- ui:field="includeLargeWidget">Click to include a large widget on the page while running the
- test</g:CheckBox>
- <br />
- <br />
-
- <g:Grid
- ui:field="grid" />
- </g:HTMLPanel>
-
-</ui:UiBinder>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.java
deleted file mode 100644
index 5669374..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.Duration;
-import com.google.gwt.core.client.EntryPoint;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.core.client.Scheduler.ScheduledCommand;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.event.dom.client.ChangeEvent;
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.reference.microbenchmark.client.MicrobenchmarkSurvey.NanoTest;
-import com.google.gwt.reference.microbenchmark.client.MicrobenchmarkSurvey.WidgetMaker;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.uibinder.client.UiHandler;
-import com.google.gwt.user.client.ui.Button;
-import com.google.gwt.user.client.ui.DeckPanel;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.HTMLPanel;
-import com.google.gwt.user.client.ui.ListBox;
-import com.google.gwt.user.client.ui.RootPanel;
-import com.google.gwt.user.client.ui.SimplePanel;
-import com.google.gwt.user.client.ui.UIObject;
-import com.google.gwt.user.client.ui.Widget;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Offers up a selection of {@link Microbenchmark} implementations to run.
- */
-public class Microbenchmarks implements EntryPoint {
-
- interface Binder extends UiBinder<Widget, Microbenchmarks> {}
- private static final Binder BINDER = GWT.create(Binder.class);
-
- private final Microbenchmark[] benchmarks;
-
- double elapsedMs = 0;
- @UiField ListBox listBox;
- @UiField DeckPanel deck;
- @UiField Button button;
- @UiField Element running;
- @UiField Element runs;
- @UiField Element sum;
-
- public Microbenchmarks() {
- // Add entries for new widget benchmarks here.
- List<NanoTest> widgetMakers = new ArrayList<NanoTest>();
- widgetMakers.add(new WidgetMaker("SimplePanel") {
- @Override
- public Widget make() {
- return new SimplePanel();
- }
- });
- widgetMakers.add(new WidgetMaker("FlowPanel") {
- @Override
- public Widget make() {
- return new FlowPanel();
- }
- });
- widgetMakers.add(new WidgetMaker("HTMLPanel") {
- @Override
- public Widget make() {
- return new HTMLPanel("");
- }
- });
- widgetMakers.add(new EmptyBinder.Maker());
- widgetMakers.add(new TestEmptyDomViaApi.Maker());
- widgetMakers.add(new TestEmptyDom.Maker());
- widgetMakers.add(new TestEmptyCursorDomCrawl.Maker());
- widgetMakers.add(new TestEmptyRealisticDomCrawl.Maker());
- widgetMakers.add(new TestDomViaApi.Maker());
- widgetMakers.add(new TestDomInnerHtmlById.Maker());
- if (Util.hasQSA) {
- widgetMakers.add(new TestDomInnerHtmlQuerySelectorAll.Maker());
- }
- widgetMakers.add(new TestCursorDomCrawl.Maker());
- widgetMakers.add(new TestRealisticDomCrawl.Maker());
- widgetMakers.add(new TestDomBinder.Maker());
- widgetMakers.add(new TestFlows.Maker());
- widgetMakers.add(new TestManualHTMLPanel.Maker());
- widgetMakers.add(new TestWidgetBinder.Maker());
-
- // Add entries for table creation benchmarks here.
- List<NanoTest> tableMakers = new ArrayList<NanoTest>();
- tableMakers.add(new TestCreateTableInnerHtml.Maker());
- tableMakers.add(new TestCreateTablePrecreatedInnerHtml.Maker());
- tableMakers.add(new TestCreateTableDom.Maker());
- tableMakers.add(new TestCreateTableDomWithEvents.Maker());
-
- // Add entries for table update benchmarks here.
- List<NanoTest> tableUpdaters = new ArrayList<NanoTest>();
- tableUpdaters.add(new TestCreateTableInnerHtml.Updater());
- tableUpdaters.add(new TestCreateTablePrecreatedInnerHtml.Updater());
- tableUpdaters.add(new TestCreateTableDom.Updater());
- tableUpdaters.add(new TestCreateTableDomWithEvents.Updater());
-
- // Combine all table tests.
- List<NanoTest> allTableTests = new ArrayList<MicrobenchmarkSurvey.NanoTest>();
- allTableTests.addAll(tableMakers);
- allTableTests.addAll(tableUpdaters);
-
- benchmarks = new Microbenchmark[4];
- benchmarks[0] = new MicrobenchmarkSurvey("Widget Creation Survey", widgetMakers);
- benchmarks[1] = new MicrobenchmarkSurvey("Table Creation and Update Survey", allTableTests);
- benchmarks[2] = new MicrobenchmarkSurvey("Table Creation Survey", tableMakers);
- benchmarks[3] = new MicrobenchmarkSurvey("Table Update Survey", tableUpdaters);
- }
-
- @UiHandler("listBox")
- public void onChange(@SuppressWarnings("unused") ChangeEvent ignored) {
- int index = listBox.getSelectedIndex();
- deck.showWidget(index);
- }
-
- @UiHandler("button")
- public void onClick(@SuppressWarnings("unused") ClickEvent ignored) {
- final int index = listBox.getSelectedIndex();
- UIObject.setVisible(running, true);
- button.setEnabled(false);
- Scheduler.get().scheduleDeferred(new ScheduledCommand() {
- public void execute() {
- double start = Duration.currentTimeMillis();
- benchmarks[index].run();
- double end = Duration.currentTimeMillis();
- UIObject.setVisible(running, false);
- button.setEnabled(true);
- double run = end - start;
- runs.setInnerText(runs.getInnerText() + Util.format(run) + " ");
- elapsedMs += run;
- sum.setInnerText("(" + Util.format(elapsedMs) + ")");
- }
- });
- }
-
- public void onModuleLoad() {
- Widget root = BINDER.createAndBindUi(this);
-
- for (Microbenchmark benchmark : benchmarks) {
- listBox.addItem(benchmark.getName());
- deck.add(benchmark.getWidget());
- }
-
- deck.showWidget(0);
- RootPanel.get().add(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.ui.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.ui.xml
deleted file mode 100644
index 70c51e4..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.ui.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
- xmlns:gwt='urn:import:com.google.gwt.user.client.ui'>
-
- <gwt:HTMLPanel>
- <div style='margin-left:1em; margin-top:1em;'>
- Select Benchmark: <gwt:ListBox ui:field='listBox'/>
- <gwt:Button ui:field='button'>Run</gwt:Button>
- <span ui:field='runs'/><span ui:field='sum'/>
- <span style="display:none; color:gray; font-style:oblique"
- ui:field='running'>Running...</span>
- </div>
- <br/><hr/><br/>
- <div style='margin-left:1em;'>
- <gwt:DeckPanel ui:field='deck'/>
- </div>
- </gwt:HTMLPanel>
-</ui:UiBinder>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDom.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDom.java
deleted file mode 100644
index 31332e6..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDom.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.TableCellElement;
-import com.google.gwt.dom.client.TableElement;
-import com.google.gwt.dom.client.TableRowElement;
-import com.google.gwt.dom.client.TableSectionElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestCreateTableDom extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Create " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via DOM api calls, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestCreateTableDom();
- }
- }
-
- public static class Updater extends MicrobenchmarkSurvey.WidgetUpdater<TestCreateTableDom> {
- Updater() {
- this("Replace rows in " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via DOM api calls, no widgets");
- }
-
- Updater(String name) {
- super(name);
- }
-
- @Override
- protected TestCreateTableDom make() {
- return new TestCreateTableDom();
- }
-
- @Override
- protected void updateWidget(TestCreateTableDom w) {
- // Remove the old rows.
- int rowCount = w.tableBody.getRows().getLength();
- for (int i = 0; i < rowCount; i++) {
- w.tableBody.deleteRow(0);
- }
-
- // Add new rows.
- w.fillTableBodyRows();
- }
- }
-
- private final TableElement table;
- private final TableSectionElement tableBody;
-
- TestCreateTableDom() {
- // This table should match the structure defined in Util#createTableHtml().
- table = Document.get().createTableElement();
- tableBody = Document.get().createTBodyElement();
- table.appendChild(tableBody);
- fillTableBodyRows();
- setElement(table);
- }
-
- /**
- * Create the contents of a cell.
- *
- * @param row the row index
- * @param column the column index
- * @return the cell contents as an element
- */
- Element createCellContents(int row, int column) {
- DivElement div = Document.get().createDivElement();
- div.setInnerHTML("Cell " + row + ":" + column);
- return div;
- }
-
- /**
- * Fill the table body element with rows.
- */
- private void fillTableBodyRows() {
- for (int row = 0; row < Util.TABLE_ROW_COUNT; row++) {
- TableRowElement tr = Document.get().createTRElement();
- tableBody.appendChild(tr);
- if (row % 2 == 0) {
- tr.addClassName("evenRow");
- } else {
- tr.addClassName("oddRow");
- }
- for (int column = 0; column < Util.TABLE_COLUMN_COUNT; column++) {
- TableCellElement td = Document.get().createTDElement();
- td.setAlign("center");
- td.setVAlign("middle");
- td.appendChild(createCellContents(row, column));
- tr.appendChild(td);
- }
- }
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDomWithEvents.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDomWithEvents.java
deleted file mode 100644
index 11be2be..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableDomWithEvents.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.user.client.Event;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestCreateTableDomWithEvents extends TestCreateTableDom {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
-
- Maker() {
- super("Create " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via DOM api calls, no widgets, sink events on each cell");
- }
-
- @Override
- public Widget make() {
- return new TestCreateTableDomWithEvents();
- }
- }
-
- public static class Updater extends TestCreateTableDom.Updater {
- Updater() {
- super("Replace rows in " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via DOM api calls, no widgets, sink events on each cell");
- }
-
- @Override
- protected TestCreateTableDom make() {
- return new TestCreateTableDomWithEvents();
- }
- }
-
- @Override
- Element createCellContents(int row, int column) {
- Element div = super.createCellContents(row, column);
- Event.sinkEvents(div, Event.ONCLICK);
- return div;
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableInnerHtml.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableInnerHtml.java
deleted file mode 100644
index 10c936e..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTableInnerHtml.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.TableElement;
-import com.google.gwt.dom.client.TableSectionElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestCreateTableInnerHtml extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Create " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via innerHTML built with StringBuilder, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestCreateTableInnerHtml();
- }
- }
-
- public static class Updater extends MicrobenchmarkSurvey.WidgetUpdater<TestCreateTableInnerHtml> {
- Updater() {
- super("Update " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " tbody via innerHTML built with StringBuilder, no widgets");
- }
-
- @Override
- protected TestCreateTableInnerHtml make() {
- return new TestCreateTableInnerHtml();
- }
-
- @Override
- protected void updateWidget(TestCreateTableInnerHtml w) {
- w.replaceAllRows();
- }
- }
-
- private final TableElement table;
- private final TableSectionElement tableBody;
-
- private TestCreateTableInnerHtml() {
- table = Util.fromHtml(Util.createTableHtml()).cast();
- setElement(table);
- tableBody = table.getTBodies().getItem(0).cast();
- }
-
- private void replaceAllRows() {
- Util.replaceTableBodyRows(tableBody, Util.createTableRowsHtml());
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTablePrecreatedInnerHtml.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTablePrecreatedInnerHtml.java
deleted file mode 100644
index c99a8cf..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCreateTablePrecreatedInnerHtml.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.TableElement;
-import com.google.gwt.dom.client.TableSectionElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestCreateTablePrecreatedInnerHtml extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
-
- private final String tableHtml = Util.createTableHtml();
-
- Maker() {
- super("Create " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " tbody via precreated innerHTML String, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestCreateTablePrecreatedInnerHtml(tableHtml);
- }
- }
-
- public static class Updater extends
- MicrobenchmarkSurvey.WidgetUpdater<TestCreateTablePrecreatedInnerHtml> {
-
- private final String tableRowsHtml = Util.createTableRowsHtml();
-
- Updater() {
- super("Update " + Util.TABLE_ROW_COUNT + "x" + Util.TABLE_COLUMN_COUNT
- + " table via precreated innerHTML String, no widgets");
- }
-
- @Override
- protected TestCreateTablePrecreatedInnerHtml make() {
- return new TestCreateTablePrecreatedInnerHtml(Util.createTableHtml());
- }
-
- @Override
- protected void updateWidget(TestCreateTablePrecreatedInnerHtml w) {
- w.replaceAllRows(tableRowsHtml);
- }
- }
-
- private final TableElement table;
- private final TableSectionElement tableBody;
-
- private TestCreateTablePrecreatedInnerHtml(String tableHtml) {
- table = Util.fromHtml(tableHtml).cast();
- setElement(table);
- tableBody = table.getTBodies().getItem(0).cast();
- }
-
- private void replaceAllRows(String tableRowsHtml) {
- Util.replaceTableBodyRows(tableBody, tableRowsHtml);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCursorDomCrawl.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCursorDomCrawl.java
deleted file mode 100644
index 0717a69..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestCursorDomCrawl.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestCursorDomCrawl extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via innerHTML, no widgets, get children by idealized crawl");
- }
-
- @Override
- public Widget make() {
- return new TestCursorDomCrawl();
- }
- }
-
- Element elm;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
- SpanElement span2;
-
- private TestCursorDomCrawl() {
- Element root = Util.fromHtml(Util.TEXTY_OUTER_HTML);
-
- Element cursor = root;
- div1 = (cursor = cursor.getFirstChildElement()).cast();
- assert div1.getId().equals("div1");
- div2 = (cursor = cursor.getFirstChildElement()).cast();
- assert div2.getId().equals("div2");
- span1 = (cursor = cursor.getNextSiblingElement()).cast();
- assert span1.getId().equals("span1");
-
- cursor = div1.getNextSiblingElement();
- div3 = (cursor = cursor.getFirstChildElement()).cast();
- assert div3.getId().equals("div3");
- div4 = (cursor = cursor.getFirstChildElement()).cast();
- assert div4.getId().equals("div4");
- span2 = (cursor = cursor.getNextSiblingElement()).cast();
- assert span2.getId().equals("span2");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.java
deleted file mode 100644
index 32a9d7d..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestDomBinder extends Widget {
-
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via UiBinder, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestDomBinder();
- }
- }
- interface Binder extends UiBinder<Element, TestDomBinder> {}
- @UiField DivElement div1;
- @UiField DivElement div2;
- @UiField DivElement div3;
- @UiField DivElement div4;
-
- @UiField SpanElement span1;
- @UiField SpanElement span2;
-
- private static final Binder BINDER = GWT.create(Binder.class);
-
- private TestDomBinder() {
- setElement(BINDER.createAndBindUi(this));
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.ui.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.ui.xml
deleted file mode 100644
index 592a756..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomBinder.ui.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'>
- <div>Div root start
- <div ui:field='div1'>Div1
- <div ui:field='div2'>Div2</div>
- <span ui:field='span1'>Span1</span>
- Div1 end</div>
- <div>Div anon start
- <div ui:field='div3'>Div3
- <div ui:field='div4'>Div4</div>
- <span ui:field='span2'>Span2</span>
- Div3 end</div>
- Div anon end</div>
- Div root end</div>
-</ui:UiBinder>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlById.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlById.java
deleted file mode 100644
index 207e673..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlById.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestDomInnerHtmlById extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via innerHTML, no widgets, getElementById");
- }
-
- @Override
- public Widget make() {
- return new TestDomInnerHtmlById();
- }
- }
-
- Element root;
- DivElement div1;
- DivElement div2;
- DivElement div3;
-
- DivElement div4;
- SpanElement span1;
-
- SpanElement span2;
-
- private TestDomInnerHtmlById() {
- root = Util.fromHtml(Util.TEXTY_OUTER_HTML);
-
- Document.get().getBody().appendChild(root);
- div1 = Document.get().getElementById("div1").cast();
- div2 = Document.get().getElementById("div2").cast();
- div3 = Document.get().getElementById("div3").cast();
- div4 = Document.get().getElementById("div4").cast();
- span1 = Document.get().getElementById("span1").cast();
- span2 = Document.get().getElementById("span2").cast();
-
- Document.get().getBody().removeChild(root);
- div1.removeAttribute("id");
- div2.removeAttribute("id");
- div3.removeAttribute("id");
- div4.removeAttribute("id");
- span1.removeAttribute("id");
- span2.removeAttribute("id");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlQuerySelectorAll.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlQuerySelectorAll.java
deleted file mode 100644
index f7bfb79..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomInnerHtmlQuerySelectorAll.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.JsArray;
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestDomInnerHtmlQuerySelectorAll extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via innerHTML, no widgets, querySelectorAll");
- }
-
- @Override
- public Widget make() {
- return new TestDomInnerHtmlQuerySelectorAll();
- }
- }
-
- Element root;
- DivElement div1;
- DivElement div2;
- DivElement div3;
-
- DivElement div4;
- SpanElement span1;
-
- SpanElement span2;
-
- private TestDomInnerHtmlQuerySelectorAll() {
- root = Util.fromHtml(Util.TEXTY_OUTER_HTML);
-
- String query = "#div1, #div2, #div3, #div4, #span1, #span2";
- JsArray<Element> response = Util.querySelectorAll(root, query);
- assert 6 == response.length() : "response length should be 6: " + response.length();
-
- div1 = response.get(0).cast();
- div2 = response.get(1).cast();
- span1 = response.get(2).cast();
- div3 = response.get(3).cast();
- div4 = response.get(4).cast();
- span2 = response.get(5).cast();
-
- assert div1.getId().equals("div1");
- assert div2.getId().equals("div2");
- assert span1.getId().equals("span1");
- assert div3.getId().equals("div3");
- assert div4.getId().equals("div4");
- assert span2.getId().equals("span2");
-
- div1.removeAttribute("id");
- div2.removeAttribute("id");
- span1.removeAttribute("id");
- div3.removeAttribute("id");
- div4.removeAttribute("id");
- span2.removeAttribute("id");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomViaApi.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomViaApi.java
deleted file mode 100644
index 6699f82..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestDomViaApi.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestDomViaApi extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via DOM api calls, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestDomViaApi();
- }
- }
-
- DivElement root;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
- SpanElement span2;
-
- private TestDomViaApi() {
- Document d = Document.get();
- root = d.createDivElement();
- root.appendChild(d.createTextNode("Div root"));
-
- div1 = d.createDivElement();
- Util.addText(div1, "Div1");
- root.appendChild(div1);
-
- div2 = d.createDivElement();
- Util.addText(div2, "Div2");
- div1.appendChild(div2);
-
- span1 = d.createSpanElement();
- Util.addText(span1, "Span1");
- div1.appendChild(span1);
-
- DivElement anon = d.createDivElement();
- Util.addText(anon, "Div anon");
- root.appendChild(anon);
-
- div3 = d.createDivElement();
- Util.addText(div3, "Div3");
- anon.appendChild(div3);
-
- div4 = d.createDivElement();
- Util.addText(div4, "Div4");
- div3.appendChild(div4);
-
- span2 = d.createSpanElement();
- Util.addText(span2, "Span2");
- div3.appendChild(span2);
-
- Util.addText(div1, " Div1 end");
- Util.addText(div3, " Div3 end");
- Util.addText(anon, " Div anon end");
- Util.addText(root, " Div root end");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyCursorDomCrawl.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyCursorDomCrawl.java
deleted file mode 100644
index 4611d76..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyCursorDomCrawl.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestEmptyCursorDomCrawl extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Empty UI via innerHTML, no widgets, get children by idealized crawl");
- }
-
- @Override
- public Widget make() {
- return new TestEmptyCursorDomCrawl();
- }
- }
-
- Element elm;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
- SpanElement span2;
-
- private TestEmptyCursorDomCrawl() {
- Element root = Util.fromHtml(Util.EMPTY_OUTER_HTML);
-
- Element cursor = root;
- div1 = (cursor = cursor.getFirstChildElement()).cast();
- assert div1.getId().equals("div1");
- div2 = (cursor = cursor.getFirstChildElement()).cast();
- assert div2.getId().equals("div2");
- span1 = (cursor = cursor.getNextSiblingElement()).cast();
- assert span1.getId().equals("span1");
-
- cursor = div1.getNextSiblingElement();
- div3 = (cursor = cursor.getFirstChildElement()).cast();
- assert div3.getId().equals("div3");
- div4 = (cursor = cursor.getFirstChildElement()).cast();
- assert div4.getId().equals("div4");
- span2 = (cursor = cursor.getNextSiblingElement()).cast();
- assert span2.getId().equals("span2");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDom.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDom.java
deleted file mode 100644
index e642b7f..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDom.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestEmptyDom extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Empty UI via innerHTML, no widgets, get children by id");
- }
-
- @Override
- public Widget make() {
- return new TestEmptyDom();
- }
- }
-
- Element root;
- DivElement div1;
- DivElement div2;
- DivElement div3;
-
- DivElement div4;
- SpanElement span1;
-
- SpanElement span2;
-
- private TestEmptyDom() {
- root = Util.fromHtml(Util.EMPTY_OUTER_HTML);
-
- Document.get().getBody().appendChild(root);
- div1 = Document.get().getElementById("div1").cast();
- div2 = Document.get().getElementById("div2").cast();
- div3 = Document.get().getElementById("div3").cast();
- div4 = Document.get().getElementById("div4").cast();
- span1 = Document.get().getElementById("span1").cast();
- span2 = Document.get().getElementById("span2").cast();
-
- Document.get().getBody().removeChild(root);
- div1.removeAttribute("id");
- div2.removeAttribute("id");
- div3.removeAttribute("id");
- div4.removeAttribute("id");
- span1.removeAttribute("id");
- span2.removeAttribute("id");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDomViaApi.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDomViaApi.java
deleted file mode 100644
index 38672e7..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyDomViaApi.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestEmptyDomViaApi extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Empty UI via DOM api calls, no widgets");
- }
-
- @Override
- public Widget make() {
- return new TestEmptyDomViaApi();
- }
- }
-
- DivElement root;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
- SpanElement span2;
-
- private TestEmptyDomViaApi() {
- Document d = Document.get();
- root = d.createDivElement();
- root.appendChild(d.createTextNode("Div root"));
-
- div1 = d.createDivElement();
- root.appendChild(div1);
-
- div2 = d.createDivElement();
- div1.appendChild(div2);
-
- span1 = d.createSpanElement();
- div1.appendChild(span1);
-
- DivElement anon = d.createDivElement();
- root.appendChild(anon);
-
- div3 = d.createDivElement();
- anon.appendChild(div3);
-
- div4 = d.createDivElement();
- div3.appendChild(div4);
-
- span2 = d.createSpanElement();
- div3.appendChild(span2);
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyRealisticDomCrawl.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyRealisticDomCrawl.java
deleted file mode 100644
index 909bd68..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestEmptyRealisticDomCrawl.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestEmptyRealisticDomCrawl extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Empty UI via innerHTML, no widgets, get children by nav from root");
- }
-
- @Override
- public Widget make() {
- return new TestEmptyRealisticDomCrawl();
- }
- }
-
- Element elm;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
-
- SpanElement span2;
-
- private TestEmptyRealisticDomCrawl() {
- Element root = Util.fromHtml(Util.EMPTY_OUTER_HTML);
-
- div1 = root.getFirstChildElement().cast();
- assert div1.getId().equals("div1");
- div2 = root.getFirstChildElement().getFirstChildElement().cast();
- assert div2.getId().equals("div2");
- span1 = root.getFirstChildElement().getFirstChildElement().getNextSiblingElement().cast();
- assert span1.getId().equals("span1");
-
- div3 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().cast();
- assert div3.getId().equals("div3");
- div4 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().getFirstChildElement().cast();
- assert div4.getId().equals("div4");
- span2 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().getFirstChildElement().getNextSiblingElement().cast();
- assert span2.getId().equals("span2");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestFlows.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestFlows.java
deleted file mode 100644
index 5d7acbc..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestFlows.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.FlowPanel;
-import com.google.gwt.user.client.ui.InlineLabel;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestFlows extends Composite {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via FlowPanels (DIVs) and InlineLabels (SPANs)");
- }
-
- @Override
- public Widget make() {
- return new TestFlows();
- }
- }
-
- private TestFlows() {
- FlowPanel root = new FlowPanel();
- Util.addText(root.getElement(), "Div root");
-
- FlowPanel div1 = new FlowPanel();
- Util.addText(div1.getElement(), "Div1");
- root.add(div1);
-
- FlowPanel div2 = new FlowPanel();
- Util.addText(div2.getElement(), "Div2");
- div1.add(div2);
-
- InlineLabel span1 = new InlineLabel();
- span1.setText("Span1");
- div1.add(span1);
-
- FlowPanel anon = new FlowPanel();
- Util.addText(anon.getElement(), "Div anon");
- root.add(anon);
-
- FlowPanel div3 = new FlowPanel();
- Util.addText(div3.getElement(), "Div3");
- anon.add(div3);
-
- FlowPanel div4 = new FlowPanel();
- Util.addText(div4.getElement(), "Div4");
- div3.add(div4);
-
- InlineLabel span2 = new InlineLabel();
- span2.setText("Span2");
- div3.add(span2);
-
- Util.addText(div1.getElement(), " Div1 end");
- Util.addText(div3.getElement(), " Div3 end");
- Util.addText(anon.getElement(), " Div anon end");
- Util.addText(root.getElement(), " Div root end");
-
- initWidget(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestManualHTMLPanel.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestManualHTMLPanel.java
deleted file mode 100644
index d3d813d..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestManualHTMLPanel.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.HTMLPanel;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestManualHTMLPanel extends Composite {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via typical manual HTMLPanel usage");
- }
-
- @Override
- public Widget make() {
- return new TestManualHTMLPanel();
- }
- }
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
-
-
- SpanElement span2;
-
- private TestManualHTMLPanel() {
- HTMLPanel p = new HTMLPanel(Util.TEXTY_INNER_HTML);
- initWidget(p);
-
- div1 = p.getElementById("div1").cast();
- div2 = p.getElementById("div2").cast();
- div3 = p.getElementById("div3").cast();
- div4 = p.getElementById("div4").cast();
- span1 = p.getElementById("span1").cast();
- span2 = p.getElementById("span2").cast();
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestRealisticDomCrawl.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestRealisticDomCrawl.java
deleted file mode 100644
index e8facdc..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestRealisticDomCrawl.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestRealisticDomCrawl extends Widget {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI via innerHTML, no widgets, get children by nav from root");
- }
-
- @Override
- public Widget make() {
- return new TestRealisticDomCrawl();
- }
- }
-
- Element elm;
- DivElement div1;
- DivElement div2;
- DivElement div3;
- DivElement div4;
- SpanElement span1;
-
- SpanElement span2;
-
- private TestRealisticDomCrawl() {
- Element root = Util.fromHtml(Util.TEXTY_OUTER_HTML);
-
- div1 = root.getFirstChildElement().cast();
- assert div1.getId().equals("div1");
- div2 = root.getFirstChildElement().getFirstChildElement().cast();
- assert div2.getId().equals("div2");
- span1 = root.getFirstChildElement().getFirstChildElement().getNextSiblingElement().cast();
- assert span1.getId().equals("span1");
-
- div3 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().cast();
- assert div3.getId().equals("div3");
- div4 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().getFirstChildElement().cast();
- assert div4.getId().equals("div4");
- span2 = root.getFirstChildElement().getNextSiblingElement().getFirstChildElement().getFirstChildElement().getNextSiblingElement().cast();
- assert span2.getId().equals("span2");
-
- setElement(root);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.java
deleted file mode 100644
index 6dc3a44..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.SpanElement;
-import com.google.gwt.uibinder.client.UiBinder;
-import com.google.gwt.uibinder.client.UiField;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.Widget;
-
-/**
- * Run by {@link MicrobenchmarkSurvey}, see name for details.
- */
-public class TestWidgetBinder extends Composite {
- public static class Maker extends MicrobenchmarkSurvey.WidgetMaker {
- Maker() {
- super("Text heavy UI with HTMLPanel via UiBinder");
- }
-
- @Override
- public Widget make() {
- return new TestWidgetBinder();
- }
- }
- interface Binder extends UiBinder<Widget, TestWidgetBinder> {}
- @UiField DivElement div1;
- @UiField DivElement div2;
- @UiField DivElement div3;
- @UiField DivElement div4;
-
- @UiField SpanElement span1;
- @UiField SpanElement span2;
-
- private static final Binder BINDER = GWT.create(Binder.class);
-
- private TestWidgetBinder() {
- initWidget(BINDER.createAndBindUi(this));
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.ui.xml b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.ui.xml
deleted file mode 100644
index 2bf108d..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/TestWidgetBinder.ui.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
- xmlns:gwt='urn:import:com.google.gwt.user.client.ui'>
- <gwt:HTMLPanel>Div root start
- <div ui:field='div1'>Div1
- <div ui:field='div2'>Div2</div>
- <span ui:field='span1'>Span1</span>
- Div1 end</div>
- <div>Div anon start
- <div ui:field='div3'>Div3
- <div ui:field='div4'>Div4</div>
- <span ui:field='span2'>Span2</span>
- Div3 end</div>
- Div anon end</div>
- Div root end</gwt:HTMLPanel>
-</ui:UiBinder>
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Util.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Util.java
deleted file mode 100644
index 469db17..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Util.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.core.client.JsArray;
-import com.google.gwt.dom.client.DivElement;
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.Node;
-import com.google.gwt.dom.client.TableSectionElement;
-import com.google.gwt.i18n.client.NumberFormat;
-
-class Util {
- private static final DivElement detachedDiv = Document.get().createDivElement();
-
- static final boolean hasQSA = hasQSA();
-
- static final String EMPTY_OUTER_HTML = "<div>" + Util.EMPTY_INNER_HTML + "</div>";
-
- static final String EMPTY_INNER_HTML = "<div id='div1'>"
- + "<div id='div2'></div>"
- + "<span id='span1'></span>"
- + "</div>"
- + "<div>"
- + "<div id='div3'>"
- + "<div id='div4'></div>"
- + "<span id='span2'></span>"
- + "</div>"
- + "</div>";
-
- static final int TABLE_ROW_COUNT = 40;
-
- static final int TABLE_COLUMN_COUNT = 10;
-
- static final String TEXTY_OUTER_HTML = "<div>" + Util.TEXTY_INNER_HTML + "</div>";
-
- static final String TEXTY_INNER_HTML = "Div root start"
- + "<div id='div1'>Div1 start"
- + "<div id='div2'>Div2</div>"
- + "<span id='span1'>Span1</span>"
- + "Div1 end</div>"
- + "<div>Div anon start"
- + "<div id='div3'>Div3"
- + "<div id='div4'>Div4</div>"
- + "<span id='span2'>Span2</span>"
- + "Div 3 end</div>"
- + "Div anon end</div>"
- + "Div root end";
-
- private static int uniqueId = 0;
- private static UtilImpl impl = GWT.create(UtilImpl.class);
-
- static void addText(Element elm, String text) {
- elm.appendChild(Document.get().createTextNode(text));
- }
-
- static String createTableHtml() {
- StringBuilder sb = new StringBuilder();
- sb.append("<table><tbody>");
- sb.append(createTableRowsHtml());
- sb.append("</tbody></table>");
- return sb.toString();
- }
-
- static String createTableRowsHtml() {
- // Assign a unique ID to ensure that we actually change the content.
- uniqueId++;
- StringBuilder sb = new StringBuilder();
- for (int row = 0; row < Util.TABLE_ROW_COUNT; row++) {
- if (row % 2 == 0) {
- sb.append("<tr class=\"evenRow\">");
- } else {
- sb.append("<tr class=\"oddRow\">");
- }
- for (int column = 0; column < Util.TABLE_COLUMN_COUNT; column++) {
- sb.append("<td align=\"center\" valign=\"middle\"><div>");
- sb.append(uniqueId + " - Cell " + row + ":" + column);
- sb.append("</div></td>");
- }
- sb.append("</tr>");
- }
- return sb.toString();
- }
-
- static String format(double median) {
- return NumberFormat.getFormat("0").format(median);
- }
-
- static Element fromHtml(String html) {
- Util.detachedDiv.setInnerHTML(html);
- Element e = Util.detachedDiv.getFirstChildElement();
- e.getParentElement().removeChild(e);
- return e;
- }
-
- static String outerHtml(Element e) {
- String string = "<" + e.getNodeName() + ">"
- + e.getInnerHTML()
- + "</" + e.getNodeName() + ">";
- return string;
- }
-
- static native JsArray<Element> querySelectorAll(Node root, String selector) /*-{
- return root.querySelectorAll(selector);
- }-*/;
-
- /**
- * Replace all of the rows in the specified tbody.
- *
- * @param tbody the tbody element
- * @param rowHtml the HTML that represents the rows
- */
- static void replaceTableBodyRows(TableSectionElement tbody, String rowHtml) {
- impl.replaceTableBodyRows(tbody, rowHtml);
- }
-
- static long roundToTens(double median) {
- return Math.round(median/10)*10;
- }
-
- private static native boolean hasQSA() /*-{
- var qsa = document.querySelectorAll;
- return !(null == qsa);
- }-*/;
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImpl.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImpl.java
deleted file mode 100644
index 5e50ef5..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImpl.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.TableSectionElement;
-
-/**
- * Implementation of {@link Util}.
- */
-class UtilImpl {
-
- void replaceTableBodyRows(TableSectionElement tbody, String rowHtml) {
- tbody.setInnerHTML(rowHtml);
- }
-}
diff --git a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImplTrident.java b/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImplTrident.java
deleted file mode 100644
index efe9429..0000000
--- a/reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UtilImplTrident.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.google.gwt.reference.microbenchmark.client;
-
-import com.google.gwt.dom.client.Document;
-import com.google.gwt.dom.client.Element;
-import com.google.gwt.dom.client.TableElement;
-import com.google.gwt.dom.client.TableSectionElement;
-
-/**
- * IE implementation of Util.
- */
-class UtilImplTrident extends UtilImpl {
-
- private final com.google.gwt.user.client.Element tmpElem = Document.get().createDivElement()
- .cast();
-
- /**
- * IE doesn't support innerHTML on tbody, nor does it support removing or
- * replacing a tbody. The only solution is to remove and replace the rows
- * themselves.
- */
- @Override
- void replaceTableBodyRows(TableSectionElement tbody, String rowHtml) {
- // Remove all children.
- Element child = tbody.getFirstChildElement();
- while (child != null) {
- Element next = child.getNextSiblingElement();
- tbody.removeChild(child);
- child = next;
- }
-
- // Convert the row html to child elements.
- tmpElem.setInnerHTML("<table><tbody>" + rowHtml + "</tbody></table>");
- TableElement tableElem = tmpElem.getFirstChildElement().cast();
- TableSectionElement newRows = tableElem.getTBodies().getItem(0);
-
- // Add new child elements.
- child = newRows.getFirstChildElement();
- while (child != null) {
- Element next = child.getNextSiblingElement();
- tbody.appendChild(child);
- child = next;
- }
- }
-}
diff --git a/reference/Microbenchmarks/war/Microbenchmarks.html b/reference/Microbenchmarks/war/Microbenchmarks.html
deleted file mode 100644
index d6dfde5..0000000
--- a/reference/Microbenchmarks/war/Microbenchmarks.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE HTML>
-
-<html>
- <head>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8">
-
- <!-- -->
- <!-- Any title is fine -->
- <!-- -->
- <title>Microbenchmarks</title>
-
- <!-- -->
- <!-- This script loads your compiled module. -->
- <!-- If you add any GWT meta tags, they must -->
- <!-- be added before this line. -->
- <!-- -->
- <script type="text/javascript" language="javascript" src="microbenchmarks/microbenchmarks.nocache.js"></script>
- </head>
-
- <!-- -->
- <!-- The body can have arbitrary html, or -->
- <!-- you can leave the body empty if you want -->
- <!-- to create a completely dynamic UI. -->
- <!-- -->
- <body>
-
- <!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
- <noscript>
- <div style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
- Your web browser must have JavaScript enabled
- in order for this application to display correctly.
- </div>
- </noscript>
- </body>
-</html>
diff --git a/reference/Microbenchmarks/war/WEB-INF/web.xml b/reference/Microbenchmarks/war/WEB-INF/web.xml
deleted file mode 100644
index b5dbf31..0000000
--- a/reference/Microbenchmarks/war/WEB-INF/web.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<web-app>
-
- <!-- Default page to serve -->
- <welcome-file-list>
- <welcome-file>Microbenchmarks.html</welcome-file>
- </welcome-file-list>
-
-</web-app>