Please note that the contents of this offline web site may be out of date. To access the most recent documentation visit the online version .
Note that links that point to online resources are green in color and will open in a new window.
We would love it if you could give us feedback about this material by filling this form (You have to be online to fill it)
BasicTransition / src / com.example.android.common / logger /

Log.java

      
        1
       
        2
       
        3
       
        4
       
        5
       
        6
       
        7
       
        8
       
        9
       
        10
       
        11
       
        12
       
        13
       
        14
       
        15
       
        16
       
        17
       
        18
       
        19
       
        20
       
        21
       
        22
       
        23
       
        24
       
        25
       
        26
       
        27
       
        28
       
        29
       
        30
       
        31
       
        32
       
        33
       
        34
       
        35
       
        36
       
        37
       
        38
       
        39
       
        40
       
        41
       
        42
       
        43
       
        44
       
        45
       
        46
       
        47
       
        48
       
        49
       
        50
       
        51
       
        52
       
        53
       
        54
       
        55
       
        56
       
        57
       
        58
       
        59
       
        60
       
        61
       
        62
       
        63
       
        64
       
        65
       
        66
       
        67
       
        68
       
        69
       
        70
       
        71
       
        72
       
        73
       
        74
       
        75
       
        76
       
        77
       
        78
       
        79
       
        80
       
        81
       
        82
       
        83
       
        84
       
        85
       
        86
       
        87
       
        88
       
        89
       
        90
       
        91
       
        92
       
        93
       
        94
       
        95
       
        96
       
        97
       
        98
       
        99
       
        100
       
        101
       
        102
       
        103
       
        104
       
        105
       
        106
       
        107
       
        108
       
        109
       
        110
       
        111
       
        112
       
        113
       
        114
       
        115
       
        116
       
        117
       
        118
       
        119
       
        120
       
        121
       
        122
       
        123
       
        124
       
        125
       
        126
       
        127
       
        128
       
        129
       
        130
       
        131
       
        132
       
        133
       
        134
       
        135
       
        136
       
        137
       
        138
       
        139
       
        140
       
        141
       
        142
       
        143
       
        144
       
        145
       
        146
       
        147
       
        148
       
        149
       
        150
       
        151
       
        152
       
        153
       
        154
       
        155
       
        156
       
        157
       
        158
       
        159
       
        160
       
        161
       
        162
       
        163
       
        164
       
        165
       
        166
       
        167
       
        168
       
        169
       
        170
       
        171
       
        172
       
        173
       
        174
       
        175
       
        176
       
        177
       
        178
       
        179
       
        180
       
        181
       
        182
       
        183
       
        184
       
        185
       
        186
       
        187
       
        188
       
        189
       
        190
       
        191
       
        192
       
        193
       
        194
       
        195
       
        196
       
        197
       
        198
       
        199
       
        200
       
        201
       
        202
       
        203
       
        204
       
        205
       
        206
       
        207
       
        208
       
        209
       
        210
       
        211
       
        212
       
        213
       
        214
       
        215
       
        216
       
        217
       
        218
       
        219
       
        220
       
        221
       
        222
       
        223
       
        224
       
        225
       
        226
       
        227
       
        228
       
        229
       
        230
       
        231
       
        232
       
        233
       
        234
       
        235
       
        236
       
       
       

       
/*
       

       
       

        * Copyright (C) 2013 The Android Open Source Project
       

       
       

        *
       

       
       

        * 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.example.android.common.logger;
       

       
       

       

       
       

       
/**
       

       
       

        * Helper class for a list (or tree) of LoggerNodes.
       

       
       

        *
       

       
       

        * <p>When this is set as the head of the list,
       

       
       

        * an instance of it can function as a drop-in replacement for {@link android.util.Log}.
       

       
       

        * Most of the methods in this class server only to map a method call in Log to its equivalent
       

       
       

        * in LogNode.</p>
       

       
       

        */

       

       
       

       
public class Log {
       

       
       

       
// Grabbing the native values from Android's native logging facilities,
       

       
       

       
// to make for easy migration and interop.
       

       
       

       
public static final int NONE = -1;
       

       
       

       
public static final int VERBOSE = android.util.Log.VERBOSE;
       

       
       

       
public static final int DEBUG = android.util.Log.DEBUG;
       

       
       

       
public static final int INFO = android.util.Log.INFO;
       

       
       

       
public static final int WARN = android.util.Log.WARN;
       

       
       

       
public static final int ERROR = android.util.Log.ERROR;
       

       
       

       
public static final int ASSERT = android.util.Log.ASSERT;
       

       
       

       

       
       

       
// Stores the beginning of the LogNode topology.
       

       
       

       
private static LogNode mLogNode;
       

       
       

       

       
       

       
/**
       

       
       

        * Returns the next LogNode in the linked list.
       

       
       

        */

       

       
       

       
public static LogNode getLogNode() {
       

       
       

       
return mLogNode;
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Sets the LogNode data will be sent to.
       

       
       

        */

       

       
       

       
public static void setLogNode(LogNode node) {
       

       
       

        mLogNode
= node;
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Instructs the LogNode to print the log data provided. Other LogNodes can
       

       
       

        * be chained to the end of the LogNode as desired.
       

       
       

        *
       

       
       

        * @param priority Log level of the data being logged. Verbose, Error, etc.
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void println(int priority, String tag, String msg, Throwable tr) {
       

       
       

       
if (mLogNode != null) {
       

       
       

        mLogNode
.println(priority, tag, msg, tr);
       

       
       

       
}
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Instructs the LogNode to print the log data provided. Other LogNodes can
       

       
       

        * be chained to the end of the LogNode as desired.
       

       
       

        *
       

       
       

        * @param priority Log level of the data being logged. Verbose, Error, etc.
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged. The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void println(int priority, String tag, String msg) {
       

       
       

        println
(priority, tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at VERBOSE priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void v(String tag, String msg, Throwable tr) {
       

       
       

        println
(VERBOSE, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at VERBOSE priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void v(String tag, String msg) {
       

       
       

        v
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at DEBUG priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void d(String tag, String msg, Throwable tr) {
       

       
       

        println
(DEBUG, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at DEBUG priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void d(String tag, String msg) {
       

       
       

        d
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at INFO priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void i(String tag, String msg, Throwable tr) {
       

       
       

        println
(INFO, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at INFO priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void i(String tag, String msg) {
       

       
       

        i
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at WARN priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void w(String tag, String msg, Throwable tr) {
       

       
       

        println
(WARN, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at WARN priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void w(String tag, String msg) {
       

       
       

        w
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at WARN priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void w(String tag, Throwable tr) {
       

       
       

        w
(tag, null, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at ERROR priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void e(String tag, String msg, Throwable tr) {
       

       
       

        println
(ERROR, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at ERROR priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void e(String tag, String msg) {
       

       
       

        e
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at ASSERT priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void wtf(String tag, String msg, Throwable tr) {
       

       
       

        println
(ASSERT, tag, msg, tr);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at ASSERT priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param msg The actual message to be logged.
       

       
       

        */

       

       
       

       
public static void wtf(String tag, String msg) {
       

       
       

        wtf
(tag, msg, null);
       

       
       

       
}
       

       
       

       

       
       

       
/**
       

       
       

        * Prints a message at ASSERT priority.
       

       
       

        *
       

       
       

        * @param tag Tag for for the log data. Can be used to organize log statements.
       

       
       

        * @param tr If an exception was thrown, this can be sent along for the logging facilities
       

       
       

        *           to extract and print useful information.
       

       
       

        */

       

       
       

       
public static void wtf(String tag, Throwable tr) {
       

       
       

        wtf
(tag, null, tr);
       

       
       

       
}
       

       
       

       
}