@@ -150,9 +150,7 @@ private class HttpBuilderUriArgument extends RequestForgerySink {
150150 */
151151private class SpringRestTemplateArgument extends RequestForgerySink {
152152 SpringRestTemplateArgument ( ) {
153- exists ( MethodAccess ma |
154- this .asExpr ( ) = ma .getMethod ( ) .( SpringRestTemplateUrlMethod ) .getUrlArgument ( ma )
155- )
153+ this .asExpr ( ) = any ( SpringRestTemplateUrlMethodAccess m ) .getUrlArgument ( )
156154 }
157155}
158156
@@ -198,16 +196,19 @@ private class SpringRestTemplateUrlMethod extends Method {
198196 "execute" , "getForEntity" , "getForObject" , "patchForObject"
199197 ] )
200198 }
199+ }
200+
201+ /**
202+ * A call to a Spring Rest Template method
203+ * that takes a URL as an argument.
204+ */
205+ private class SpringRestTemplateUrlMethodAccess extends MethodAccess {
206+ SpringRestTemplateUrlMethodAccess ( ) { this .getMethod ( ) instanceof SpringRestTemplateUrlMethod }
201207
202208 /**
203- * Gets the argument which corresponds to a URL argument
204- * passed as a `java.net.URL` object or as a string or the like
209+ * Gets the URL argument of this template call.
205210 */
206- Argument getUrlArgument ( MethodAccess ma ) {
207- // doExecute(URI url, HttpMethod method, RequestCallback requestCallback,
208- // ResponseExtractor<T> responseExtractor)
209- result = ma .getArgument ( 0 )
210- }
211+ Argument getUrlArgument ( ) { result = this .getArgument ( 0 ) }
211212}
212213
213214/** A sanitizer for request forgery vulnerabilities. */
0 commit comments