I wrote this class in order to not having to write tag
every time (because of code duplication and risk of typos).
public class TaggedLogger {
public static final TaggedLogger GLOBAL = new TaggedLogger("Global");
private final String tag;
public static TaggedLogger forClass(Class<?> someClass) {
return new TaggedLogger(someClass.getName());
}
public TaggedLogger(String tag) {
this.tag = tag;
}
public void debug(String message) {
Log.d(tag, message);
}
public void info(String message) {
Log.i(tag, message);
}
public void exception(String message) {
Log.e(tag, message);
}
public void exception(String message, Throwable exception) {
Log.e(tag, message, exception);
}
// skipped
}
Using:
public class MainActivity extends Activity {
private static final TaggedLogger LOGGER = TaggedLogger.forClass(MainActivity.class);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LOGGER.debug("Initialization: start");
init(savedInstanceState);
}
// skipped
}
What do you think? Maybe this class is useless?
Help me choose a more appropriate name for this class (if TaggedLogger
isn't good) ?