@Override
    public void intercept(@NonNull final HttpRequestChain chain, @NonNull ByteBuffer buffer)
            throws IOException {
        HttpRequest request = chain.request();
        Session session = findSessionById(request.id());
        session.request = request;
        if (session.interceptors == null) {
            session.interceptors = mSubInterceptorsFactory.create();
        }
        new HttpContainerRequestChain(chain, session.interceptors).process(buffer);
    }
One http virtual gateway may have multi http sessions, but we don't want to share interceptors
between them. Use a container to manage different sessions, every session has independent
interceptor instances.

@author Megatron King
@since 2019/1/6 16:13
netbare-core/src/main/java/com/github/megatronking/netbare/http/ContainerHttpInterceptor.java