io.quarkus.websockets.client.runtime.DisableLoggingFeature Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of quarkus-websockets-client Show documentation
Show all versions of quarkus-websockets-client Show documentation
Client for WebSocket communication channel
package io.quarkus.websockets.client.runtime;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.graalvm.nativeimage.hosted.Feature;
/**
* Disables logging during the analysis phase
*/
public class DisableLoggingFeature implements Feature {
private static final String[] CATEGORIES = {
"io.undertow.websockets",
};
private final Map categoryMap = new HashMap<>(CATEGORIES.length);
@Override
public void beforeAnalysis(BeforeAnalysisAccess access) {
for (String category : CATEGORIES) {
Logger logger = Logger.getLogger(category);
categoryMap.put(category, logger.getLevel());
logger.setLevel(Level.WARNING);
}
}
@Override
public void afterAnalysis(AfterAnalysisAccess access) {
for (String category : CATEGORIES) {
Level level = categoryMap.remove(category);
Logger logger = Logger.getLogger(category);
logger.setLevel(level);
}
}
@Override
public String getDescription() {
return "Disables INFO logging during the analysis phase";
}
}