Make TaskMatcher default to POST methods (#1418)

* Make TaskMatcher default to POST methods

TaskOptions.Builder.withUrl() defaults to POST methods.  Therefore, it seems
reasonable to verify that task queue methods are using the POST method,
especially given that the method must now be identified explicitly when using
CloudTaskUtils.  This check would have guarded against the bug fixed by #1413.

* Elaborate on comment

* Further improved the comment
This commit is contained in:
Michael Muller 2021-11-12 14:03:23 -05:00 committed by GitHub
parent 52550a9251
commit b4b318f923
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -188,7 +188,12 @@ public class CloudTasksHelper implements Serializable {
String taskName; String taskName;
String service; String service;
HttpMethod method; // App Engine TaskOption methods default to "POST". This isn't obvious from the code, so we
// default it to POST here so that we don't accidentally create an entry with a GET method when
// converting to CloudTaskUtils, which requires that the method be specified explicitly.
// Should we ever actually want to do a GET, we'll likewise have to set this explicitly for the
// tests.
HttpMethod method = HttpMethod.POST;
String url; String url;
Multimap<String, String> headers = ArrayListMultimap.create(); Multimap<String, String> headers = ArrayListMultimap.create();
Multimap<String, String> params = ArrayListMultimap.create(); Multimap<String, String> params = ArrayListMultimap.create();