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

com.netflix.karyon.examples.hellonoss.common.LoggingInterceptor Maven / Gradle / Ivy

package com.netflix.karyon.examples.hellonoss.common;

import com.netflix.karyon.transport.interceptor.DuplexInterceptor;
import io.netty.buffer.ByteBuf;
import io.reactivex.netty.protocol.http.server.HttpServerRequest;
import io.reactivex.netty.protocol.http.server.HttpServerResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import rx.Observable;

/**
 * @author Nitesh Kant
 */
public class LoggingInterceptor implements DuplexInterceptor, HttpServerResponse> {

    private static final Logger logger = LoggerFactory.getLogger(LoggingInterceptor.class);

    private static int count;
    private final int id;

    public LoggingInterceptor() {
        id = ++count;
    }

    @Override
    public Observable in(HttpServerRequest request, HttpServerResponse response) {
        logger.info("Logging interceptor with id {} invoked for direction IN.", id);
        return Observable.empty();
    }

    @Override
    public Observable out(HttpServerResponse response) {
        logger.info("Logging interceptor with id {} invoked for direction OUT.", id);
        return Observable.empty();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy