Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: talk/examples/android/src/org/appspot/apprtc/util/AppRTCUtils.java

Issue 1235563006: Move talk/examples/* to webrtc/examples. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: 201508051337 Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * libjingle
3 * Copyright 2014 Google Inc.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice,
11 * this list of conditions and the following disclaimer in the documentation
12 * and/or other materials provided with the distribution.
13 * 3. The name of the author may not be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28 package org.appspot.apprtc.util;
29
30 import android.os.Build;
31 import android.util.Log;
32
33 /**
34 * AppRTCUtils provides helper functions for managing thread safety.
35 */
36 public final class AppRTCUtils {
37
38 private AppRTCUtils() {
39 }
40
41 /**
42 * NonThreadSafe is a helper class used to help verify that methods of a
43 * class are called from the same thread.
44 */
45 public static class NonThreadSafe {
46 private final Long threadId;
47
48 public NonThreadSafe() {
49 // Store thread ID of the creating thread.
50 threadId = Thread.currentThread().getId();
51 }
52
53 /** Checks if the method is called on the valid/creating thread. */
54 public boolean calledOnValidThread() {
55 return threadId.equals(Thread.currentThread().getId());
56 }
57 }
58
59 /** Helper method which throws an exception when an assertion has failed. */
60 public static void assertIsTrue(boolean condition) {
61 if (!condition) {
62 throw new AssertionError("Expected condition to be true");
63 }
64 }
65
66 /** Helper method for building a string of thread information.*/
67 public static String getThreadInfo() {
68 return "@[name=" + Thread.currentThread().getName()
69 + ", id=" + Thread.currentThread().getId() + "]";
70 }
71
72 /** Information about the current build, taken from system properties. */
73 public static void logDeviceInfo(String tag) {
74 Log.d(tag, "Android SDK: " + Build.VERSION.SDK_INT + ", "
75 + "Release: " + Build.VERSION.RELEASE + ", "
76 + "Brand: " + Build.BRAND + ", "
77 + "Device: " + Build.DEVICE + ", "
78 + "Id: " + Build.ID + ", "
79 + "Hardware: " + Build.HARDWARE + ", "
80 + "Manufacturer: " + Build.MANUFACTURER + ", "
81 + "Model: " + Build.MODEL + ", "
82 + "Product: " + Build.PRODUCT);
83 }
84 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698