Extensible Proxy


Email :


Implemented features :

  • HttpMessage listeners
    • Requests before they are processed
    • Responses with their corresponding requests
  • HttpMessage processor, to forbid or modify requests or responses
  • Keep-Alive full support
  • Chunk encoding full support
  • MultiThreaded architecture
  • One thread for each distinct connection
  • Man-in-the-middle automatic support for the CONNECT http Method
  • HTTP or HTTPS on the same TCP/IP port (ssl socket upgrade)
  • Default processor :
    • Cleanup requests with compressed content encoding
  • Java 5 is mandatory
  • All I/O are done using Java NIO

Limits :

  • Http message bodies are entirely read in memory before being sent back (in a future release, they will be stored on disk)
  • Current architecture is not suitable with a high number of users (in a future release, I'll use multiplexing to process requests in order to keep the number of threads low)
  • Man-in-the-middle approach for HTTPS can not be desactivated

Warning :

  • Listeners and processors must be fast, for listeners use deferred execution (something like Swing invokeLater for example)