Add error/success generators to the HTTP Adapters, refactor the repository code to use these, update test