128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org/* 228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * libjingle 35f93d0a140515e3b8cdd1b9a4c6f5871144e5deejlmiller@webrtc.org * Copyright 2013 Google Inc. 428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * Redistribution and use in source and binary forms, with or without 628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * modification, are permitted provided that the following conditions are met: 728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 1. Redistributions of source code must retain the above copyright notice, 928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * this list of conditions and the following disclaimer. 1028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 2. Redistributions in binary form must reproduce the above copyright notice, 1128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * this list of conditions and the following disclaimer in the documentation 1228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * and/or other materials provided with the distribution. 1328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 3. The name of the author may not be used to endorse or promote products 1428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * derived from this software without specific prior written permission. 1528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * 1628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 1728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 1928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 2028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 2128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 2228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 2328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 2428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 2528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org */ 2728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 2828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.orgpackage org.webrtc; 2928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 3028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org/** Java version of webrtc::StatsReport. */ 3128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.orgpublic class StatsReport { 3228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 3328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org /** Java version of webrtc::StatsReport::Value. */ 3428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public static class Value { 3528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final String name; 3628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final String value; 3728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 3828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public Value(String name, String value) { 3928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.name = name; 4028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.value = value; 4128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 4228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 4328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public String toString() { 4428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org StringBuilder builder = new StringBuilder(); 4528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org builder.append("[").append(name).append(": ").append(value).append("]"); 4628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org return builder.toString(); 4728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 4828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 4928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 5028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final String id; 5128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final String type; 5228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org // Time since 1970-01-01T00:00:00Z in milliseconds. 5328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final double timestamp; 5428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public final Value[] values; 5528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 5628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public StatsReport(String id, String type, double timestamp, Value[] values) { 5728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.id = id; 5828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.type = type; 5928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.timestamp = timestamp; 6028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org this.values = values; 6128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 6228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org 6328e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org public String toString() { 6428e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org StringBuilder builder = new StringBuilder(); 6528e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org builder.append("id: ").append(id).append(", type: ").append(type) 6628e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org .append(", timestamp: ").append(timestamp).append(", values: "); 6728e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org for (int i = 0; i < values.length; ++i) { 6828e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org builder.append(values[i].toString()).append(", "); 6928e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 7028e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org return builder.toString(); 7128e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org } 7228e20752806a492f5a6a5d343c02f9556f39b1cdhenrike@webrtc.org} 73