Skip to content

Instantly share code, notes, and snippets.

@ERiSugawara
Last active November 12, 2015 10:21
Show Gist options
  • Save ERiSugawara/af94293703fd4dc5275d to your computer and use it in GitHub Desktop.
Save ERiSugawara/af94293703fd4dc5275d to your computer and use it in GitHub Desktop.
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* Created by sugawaraMBP on 15/03/25.
*/
public class Log {
private static final String TAG = "Log";
private static final String EMPTY = "";
private static boolean LOG_ENABLE = true;
private enum Level {
DEBUG,
WARNING,
INFO,
ERROR;
@Override
public String toString() {
String temp;
switch (this) {
case WARNING:
temp = "W/";
break;
case INFO:
temp = "I/";
break;
case ERROR:
temp = "E/";
break;
case DEBUG:
default:
temp = "D/";
break;
}
return temp;
}
}
private static SimpleDateFormat dateFormatter = new SimpleDateFormat("MM-dd HH:mm:ss.SSS");
private static void println(Level level, String tag, String text) {
StringBuffer buffer = new StringBuffer();
Date date = new Date();
buffer.append(dateFormatter.format(date));
buffer.append(" ");
buffer.append(level.toString());
buffer.append(tag);
buffer.append(" ");
buffer.append(text);
System.out.println(buffer.toString());
}
public static int d(String tag, String text) {
if (LOG_ENABLE) {
println(Level.DEBUG, tag, text);
}
return 0;
}
public static int d(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.DEBUG, tag, format(format, args));
}
return 0;
}
public static int w(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.WARNING, tag, format(format, args));
}
return 0;
}
public static int i(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.INFO, tag, format(format, args));
}
return 0;
}
public static int e(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.ERROR, tag, format(format, args));
}
return 0;
}
private static String format(String format, Object... args) {
try {
return String.format(format == null ? EMPTY : format, args);
} catch (RuntimeException e) {
Log.w(TAG, "format error. reason=%s, format=%s", e.getMessage(), format);
return String.format(EMPTY, format);
}
}
public static String hexString(byte[] bytes) {
if (bytes == null) {
return "(null)";
}
StringBuffer buffer = new StringBuffer();
buffer.delete(0, buffer.length());
for (byte b : bytes) {
buffer.append(String.format("%02X", b));
}
return buffer.toString();
}
}
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) throws Exception {
Log.d("Main", "test");
}
public static class Log {
private static final String TAG = "Log";
private static final String EMPTY = "";
private static boolean LOG_ENABLE = true;
private enum Level {
DEBUG,
WARNING,
INFO,
ERROR;
@Override
public String toString() {
String temp;
switch (this) {
case WARNING:
temp = "W/";
break;
case INFO:
temp = "I/";
break;
case ERROR:
temp = "E/";
break;
case DEBUG:
default:
temp = "D/";
break;
}
return temp;
}
}
private static SimpleDateFormat dateFormatter = new SimpleDateFormat("MM-dd HH:mm:ss.SSS");
private static void println(Level level, String tag, String text) {
StringBuffer buffer = new StringBuffer();
Date date = new Date();
buffer.append(dateFormatter.format(date));
buffer.append(" ");
buffer.append(level.toString());
buffer.append(tag);
buffer.append(" ");
buffer.append(text);
System.out.println(buffer.toString());
}
public static int d(String tag, String text) {
if (LOG_ENABLE) {
println(Level.DEBUG, tag, text);
}
return 0;
}
public static int d(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.DEBUG, tag, format(format, args));
}
return 0;
}
public static int w(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.WARNING, tag, format(format, args));
}
return 0;
}
public static int i(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.INFO, tag, format(format, args));
}
return 0;
}
public static int e(String tag, String format, Object... args) {
if (LOG_ENABLE) {
println(Level.ERROR, tag, format(format, args));
}
return 0;
}
private static String format(String format, Object... args) {
try {
return String.format(format == null ? EMPTY : format, args);
} catch (RuntimeException e) {
Log.w(TAG, "format error. reason=%s, format=%s", e.getMessage(), format);
return String.format(EMPTY, format);
}
}
public static String hexString(byte[] bytes) {
if (bytes == null) {
return "(null)";
}
StringBuffer buffer = new StringBuffer();
buffer.delete(0, buffer.length());
for (byte b : bytes) {
buffer.append(String.format("%02X", b));
}
return buffer.toString();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment