com.vmware.transport.core.util.Loggable Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of transport Show documentation
Show all versions of transport Show documentation
Transport is a full stack, simple, fast, expandable application event bus for your applications. It provides a standardized and simple API, implemented in multiple languages, to allow any individual component inside your applications to talk to one another. This is the Java implementation of the Transport library.
The newest version!
/*
* Copyright 2018-2020 VMware, Inc.
* SPDX-License-Identifier: BSD-2-Clause
*
*/
package com.vmware.transport.core.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public abstract class Loggable {
protected final Logger log;
protected boolean useJazz = false;
public String getName() {
return this.getClass().getName();
}
public Loggable() {
log = LoggerFactory.getLogger(this.getClass());
}
public void enableLoggingJazz() {
this.useJazz = true;
}
public void disableLoggingJazz() {
this.useJazz = false;
}
public void logInfoMessage(String emoji, String message, String value) {
if (useJazz) {
log.info("{} {}: " + "\u001b[1m\u001b[35;1m{}\u001b[0m", emoji, message.trim(), value.trim());
} else {
log.info("{} {}: ", message.trim(), value.trim());
}
}
public void logErrorMessage(String message, String value) {
if (useJazz) {
log.error("\uD83D\uDED1 \u001b[41;1m{}:\u001b[0m \u001b[31;1m{}\u001b[0m", message.trim(), value.trim());
} else {
log.error("{}: {}", message.trim(), value.trim());
}
}
public void logDebugMessage(String message, String value) {
if (useJazz) {
log.debug("\uD83D\uDD39 \u001b[38;5;245m{}: \u001b[35m{}\u001b[0m", message.trim(), value.trim());
} else {
log.debug("{}: {}", message.trim(), value.trim());
}
}
public void logDebugMessage(String message) {
if (useJazz) {
log.debug("\uD83D\uDD39 \u001b[38;5;245m{}\u001b[0m", message.trim());
} else {
log.debug("{}", message.trim());
}
}
public void logTraceMessage(String message, String value) {
if (useJazz) {
log.trace("\uD83D\uDD38 \u001b[38;5;245m{}: \u001b[38;5;67m{}\u001b[0m", message.trim(), value.trim());
} else {
log.trace("{}: {}", message.trim(), value.trim());
}
}
public void logWarnMessage(String message) {
if (useJazz) {
log.warn("⚠️ \u001b[33m\u001b[1m{}\u001b[0m", message.trim());
} else {
log.warn("{}", message.trim());
}
}
public void logBannerMessage(String emoji, String message) {
if (useJazz) {
log.info("{} \u001b[1m\u001b[38;5;200m{}\u001b[0m", emoji, message.trim());
} else {
log.info("{} {}", emoji, message.trim());
}
}
}