Git Product home page Git Product logo

Comments (9)

jfarcand avatar jfarcand commented on May 17, 2024

Mark the issue as an enhancements. This could be done using the NettyAsyncHttpProviderConfig allowing the use of customized Pipeline

from async-http-client.

jfarcand avatar jfarcand commented on May 17, 2024

This has been fixed and available now by #205

from async-http-client.

slandelle avatar slandelle commented on May 17, 2024

Backport to 1.7.x?

from async-http-client.

jfarcand avatar jfarcand commented on May 17, 2024

Not necessary IMO.

from async-http-client.

selangley avatar selangley commented on May 17, 2024

I would re-open this issue if I could.

The current implementation in 1.9.33 has taken away the ability to customize your own Channel Pipeline. The code in question has been moved into the method:

configureBootstraps(NettyRequestSender requestSender, AtomicBoolean closed) 

of class com.ning.http.client.providers.netty.channel.ChannelManager

where many of the variables you would want to access are private.

from async-http-client.

slandelle avatar slandelle commented on May 17, 2024

With all due respect to Jean-François, I think this move was a wrong one. Allowing for extensibility this way is no less than making it easier for people for fork without ever contributing back. That's not how open-source is supposed to work!

If you need to customize the pipeline, there's the channel initializers in the Netty config. Otherwise, state your use case and let's discuss about it so we can bring a solution that can benefit the whole project, not just you alone.

from async-http-client.

selangley avatar selangley commented on May 17, 2024

Your comment pointed me in the right direction. I had a similar use case to the original submitter. I wanted to not automatically decompress gzip files. The below, written in Groovy, worked for me.

Perhaps the real issue is that the documentation is scarce. I was attempting to use the approach talked about in this ticket, which no longer works.

myNettyProviderConfig.setHttpAdditionalPipelineInitializer(new NettyPipelineInflaterRemover())

public static class NettyPipelineInflaterRemover extends com.ning.http.client.providers.netty.NettyAsyncHttpProviderConfig.AdditionalPipelineInitializer {
    void    initPipeline(org.jboss.netty.channel.ChannelPipeline pipeline) {
        pipeline.remove(com.ning.http.client.providers.netty.channel.ChannelManager.INFLATER_HANDLER)
    }
}

from async-http-client.

selangley avatar selangley commented on May 17, 2024

The new way to do it was implemented here: #717

from async-http-client.

slandelle avatar slandelle commented on May 17, 2024

Perhaps the real issue is that the documentation is scarce.

It's not like I'm getting any help here, nor that I make a living with this project... :(

from async-http-client.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.