cjstehno / ersatz

🤖 A simulated HTTP server for testing client code with configurable responses.
https://cjstehno.github.io/ersatz
Apache License 2.0
47 stars 5 forks source link

Isolate Undertow server for extraction #124

Closed cjstehno closed 2 years ago

cjstehno commented 4 years ago

The goal here is to get all of the server-specific (undertow at this point) code abstracted and packaged such that the a set of interfaces and framework classes could be provided to allow implementation of Ersatz using a different underlying server. During the 2.0 development effort, some work has been done in this direction; however there is more needed. I expect that the server implementations will be provided as the top-level jar artifacts to be used so that only the desired server implementation is available (though the other could be included). Configuration of a specific server implementation could be done by default or through specification of the main server class or some similar configuration method at instantiation-time.

cjstehno commented 2 years ago

I don't see the need to enable server swapping - if there is a need case I can reassess it and be more aggressive about isolating it.