I'm working with Postman and I see that it has many modes. I was able to implement a restRequest object that "knows" how to send a request in Post or Get method.
This is part of my code:
 @Override
public RestResponse sendRequest() {
    return data.accept(new RequestDataVisitor<RestResponse>() {
        @Override
        public RestResponse visit(GetData getData) {
            return new RestResponse(webTarget.request().headers(headers).get());
        }
        @Override
        public RestResponse visit(PostFormData post) {
            return new RestResponse(webTarget.request(post.getMediaType()).headers(headers).post(post.getEntity()));
        }
        @Override
        public RestResponse visit(PostRawData post) {
            return new RestResponse(webTarget.request(post.getMediaType()).headers(headers).post(post.getEntity()));
        }
        @Override
        public RestResponse visit(DeleteData deleteData) {
            return new RestResponse(webTarget.request(deleteData.getMediaType()).headers(headers).delete());
        }
    });
}
How do I get my webTarget to send a request in Patch mode?
 
    