package org.jenkinsci.plugins.ghprb;

import hudson.ProxyConfiguration;
import org.kohsuke.github.HttpConnector;

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpConnectorWithJenkinsProxy implements HttpConnector {
    public HttpURLConnection connect(URL url) throws IOException {
        return (HttpURLConnection) ProxyConfiguration.open(url);
    }
}

package org.jenkinsci.plugins.ghprb;

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;

import org.kohsuke.github.HttpConnector;

import hudson.ProxyConfiguration;

public class HttpConnectorWithJenkinsProxy implements HttpConnector {
    public HttpURLConnection connect(URL url) throws IOException {
        HttpURLConnection con = (HttpURLConnection) ProxyConfiguration.open(url);

        // Set default timeouts in case there are none
        if (con.getConnectTimeout() == 0) {
            con.setConnectTimeout(10000);
        }
        if (con.getReadTimeout() == 0) {
            con.setReadTimeout(10000);
        }
        return con;
    }
}

Use default timeouts for URLConnections
[JENKINS-31827] Use default timeouts for URLConnections
