@@ -38,8 +38,6 @@ import org.slf4j.LoggerFactory
3838@SuppressWarnings(" NewApi" )
3939class TestReportGenerator (private val apiToken : String ) {
4040 private val LOG : Logger = LoggerFactory .getLogger(" firebase-test-report" )
41- private val client: HttpClient =
42- HttpClient .newBuilder().connectTimeout(Duration .ofSeconds(10 )).build()
4341
4442 fun createReport (commitCount : Int ) {
4543 val response: JsonObject =
@@ -310,7 +308,7 @@ class TestReportGenerator(private val apiToken: String) {
310308 .header(" X-GitHub-Api-Version" , GITHUB_API_VERSION )
311309 .build()
312310 try {
313- val response = client .send(request, HttpResponse .BodyHandlers .ofString())
311+ val response = CLIENT .send(request, HttpResponse .BodyHandlers .ofString())
314312 val body = response.body()
315313 if (response.statusCode() >= 300 ) {
316314 LOG .error(response.toString())
@@ -366,24 +364,12 @@ class TestReportGenerator(private val apiToken: String) {
366364 // eg `<http://www.foo.bar/>; baz="qux"; rel="next";` -> `http://www.foo.bar/`
367365 private val NEXT_LINK_REGEX =
368366 Regex (
369- " <" + // eg `<http://www.foo.bar/>`
370- " (" + // URL group
371- /* */ " [^>]*" + // Only ignoring `>`, other illegal characters assumed not present
372- " )" +
373- " >" +
374- " \\ s*" +
375- " ;" + // Link separator
376- " (" + // Ignore other parameters, eg `foo="bar";`
377- /* */ " \\ s*" +
378- /* */ " \\ w+" + // Key
379- /* */ " =" +
380- /* */ " \"\\ w*\" " + // Quoted value
381- /* */ " \\ s*" +
382- /* */ " ;" +
383- " )" +
384- " \\ s*" +
385- " rel=\" next\" "
386- // "<([^>]*)>\\s*;(\\s*\\w+=\"\\w*\"\\s*;)\\s*rel=\"next\""
367+ " <([^>]*)>" + // eg `<http://www.foo.bar/>`
368+ " \\ s*;" + // Link separator
369+ " (\\ s*\\ w+=\"\\ w*\"\\ s*;)" + // Capture other parameters, eg `foo="bar";`
370+ " \\ s*rel=\" next\" " // Matches specifically rel=next
387371 )
372+ private val CLIENT : HttpClient =
373+ HttpClient .newBuilder().connectTimeout(Duration .ofSeconds(10 )).build()
388374 }
389375}
0 commit comments