All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nu.mine.mosher.io.slf4j.ServletLoggerContext Maven / Gradle / Ivy

The newest version!
package nu.mine.mosher.io.slf4j;

import jakarta.servlet.*;
import jakarta.servlet.annotation.WebListener;
import lombok.NonNull;

import java.util.Optional;

@SuppressWarnings("OptionalUsedAsFieldOrParameterType")
@WebListener
public class ServletLoggerContext implements ServletContextListener {
    private static Optional context;

    static {
        set(Optional.empty());
    }

    private synchronized static void set(@NonNull final Optional context) {
        ServletLoggerContext.context = context;
    }

    @NonNull
    public synchronized static Optional get() {
        return ServletLoggerContext.context;
    }

    @Override
    public void contextInitialized(@NonNull final ServletContextEvent event) {
        set(Optional.ofNullable(event.getServletContext()));
    }

    @Override
    public void contextDestroyed(@NonNull final ServletContextEvent event) {
        set(Optional.empty());
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy