I've checked in my *very* rough initial thoughts for an API. I "vetted" them against an Amazon S3 API that I am working on https://svn.codehaus.org/livetribe/nursery/livetribe-s3-api .

There was a discussion on this a while back. I thought that the connector/connection/client/factory was a bit awkward, imho. There were a few other things but rather than making a tedious comparison I thought that I would just highlight what I think are the key important features of the my API sketch.

I'm pretty sure that it can support all the use cases listed in http://cwiki.apache.org/AWEB/client-use-cases.html plus a few more.

My API is pretty simple. Factories create clients and clients create connections; you can forgo the use of factories. Connections can be reused to implement load balancing/proxying. You'll notice that the core components are not littered with implementation parameters. These are left to implementations of HttpConfig.

I have an asynchronous mechanism to download content as the HTPP response is being parsed. I think my mechanism for supplying multiple MIME content is pretty clean.

Extensions of HttpListener can be added to obtain various events. I thought that the type safety of listeners would be preferred to a generic HttpEvent listener.

There may be overlap with existing APIs.


Regards,
Alan

Reply via email to