/* * Copyright (C) 2013 Red Hat, Inc. and/or its affiliates. * * 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 org.jboss.errai.demo.busstress.client.local; import org.jboss.errai.demo.busstress.client.shared.Stats; import com.google.gwt.core.client.GWT; import com.google.gwt.i18n.client.NumberFormat; import com.google.gwt.text.client.NumberFormatRenderer; 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.Label; import com.google.gwt.user.client.ui.Widget; public class StatsPanel extends Composite { private static RunStatsUiBinder uiBinder = GWT.create(RunStatsUiBinder.class); interface RunStatsUiBinder extends UiBinder<Widget, StatsPanel> { } @UiField Label summaryLabel; @UiField Label messageSendCount; @UiField Label messageSendBytes; @UiField Label inFlightCount; @UiField Label inFlightAvg; @UiField Label messageRecvCount; @UiField Label messageRecvBytes; NumberFormatRenderer renderer = new NumberFormatRenderer(NumberFormat.getFormat("0.00")); public StatsPanel() { initWidget(uiBinder.createAndBindUi(this)); } void onRunStarted(Stats stats) { summaryLabel.setText("Started " + stats.getStartTime()); } /** * Updates the labels in the UI based on the values in {@link #stats}. */ void updateStatsLabels(Stats stats) { messageSendBytes.setText("" + stats.getSentBytes() + " bytes"); messageSendCount.setText("" + stats.getSentMessages()); inFlightCount.setText("" + stats.getInflightMessages()); inFlightAvg.setText("" + renderer.render(stats.getAverageWaitTime()) + " ms/resp"); messageRecvBytes.setText("" + stats.getReceivedBytes() + " bytes"); messageRecvCount.setText("" + stats.getReceivedMessages()); } void onRunFinished(Stats stats) { summaryLabel.setText("Started " + stats.getStartTime() + "; finished " + stats.getFinishTime() + "."); } }