public class JDKHttpConnection extends java.lang.Object implements HttpConnection
HttpConnection which simply
delegates every call to a HttpURLConnection. This is the
default implementation used by JGit| Modifier and Type | Field and Description |
|---|---|
(package private) java.net.HttpURLConnection |
wrappedUrlConnection |
HTTP_11_MOVED_TEMP, HTTP_FORBIDDEN, HTTP_MOVED_PERM, HTTP_MOVED_TEMP, HTTP_NOT_FOUND, HTTP_OK, HTTP_SEE_OTHER, HTTP_UNAUTHORIZED| Modifier | Constructor and Description |
|---|---|
protected |
JDKHttpConnection(java.net.URL url)
Constructor for JDKHttpConnection.
|
protected |
JDKHttpConnection(java.net.URL url,
java.net.Proxy proxy)
Constructor for JDKHttpConnection.
|
| Modifier and Type | Method and Description |
|---|---|
void |
configure(javax.net.ssl.KeyManager[] km,
javax.net.ssl.TrustManager[] tm,
java.security.SecureRandom random)
Configure the connection so that it can be used for https communication.
|
void |
connect()
Connect
|
int |
getContentLength()
Get content length
|
java.lang.String |
getContentType()
Get content type
|
java.lang.String |
getHeaderField(java.lang.String name)
Get header field
|
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getHeaderFields()
Get list of header fields
|
java.io.InputStream |
getInputStream()
Get input stream
|
java.io.OutputStream |
getOutputStream()
Get output stream
|
java.lang.String |
getRequestMethod()
Get request method
|
int |
getResponseCode()
Get response code
|
java.lang.String |
getResponseMessage()
Get response message
|
java.net.URL |
getURL()
Get URL
|
void |
setChunkedStreamingMode(int chunklen)
Set chunked streaming mode
|
void |
setConnectTimeout(int timeout)
Set connect timeout
|
void |
setDoOutput(boolean dooutput)
Set if to do output
|
void |
setFixedLengthStreamingMode(int contentLength)
Set fixed length streaming mode
|
void |
setHostnameVerifier(javax.net.ssl.HostnameVerifier hostnameverifier)
Set the
HostnameVerifier used during https
communication |
void |
setInstanceFollowRedirects(boolean followRedirects)
Set whether or not to follow HTTP redirects.
|
void |
setReadTimeout(int timeout)
Set read timeout
|
void |
setRequestMethod(java.lang.String method)
Set request method
|
void |
setRequestProperty(java.lang.String key,
java.lang.String value)
Set request property
|
void |
setUseCaches(boolean usecaches)
Set if to use caches
|
boolean |
usingProxy()
Whether we use a proxy
|
protected JDKHttpConnection(java.net.URL url)
throws java.net.MalformedURLException,
java.io.IOException
url - a URL object.java.net.MalformedURLExceptionjava.io.IOExceptionprotected JDKHttpConnection(java.net.URL url,
java.net.Proxy proxy)
throws java.net.MalformedURLException,
java.io.IOException
url - a URL object.proxy - a Proxy object.java.net.MalformedURLExceptionjava.io.IOExceptionpublic int getResponseCode()
throws java.io.IOException
getResponseCode in interface HttpConnectionjava.io.IOExceptionHttpURLConnection.getResponseCode()public java.net.URL getURL()
getURL in interface HttpConnectionURLConnection.getURL()public java.lang.String getResponseMessage()
throws java.io.IOException
getResponseMessage in interface HttpConnectionnulljava.io.IOExceptionHttpURLConnection.getResponseMessage()public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getHeaderFields()
getHeaderFields in interface HttpConnectionURLConnection.getHeaderFields()public void setRequestProperty(java.lang.String key,
java.lang.String value)
setRequestProperty in interface HttpConnectionkey - the keyword by which the request is known (e.g., "
Accept").value - the value associated with it.URLConnection.setRequestProperty(String, String)public void setRequestMethod(java.lang.String method)
throws java.net.ProtocolException
setRequestMethod in interface HttpConnectionmethod - the HTTP methodjava.net.ProtocolException - if the method cannot be reset or if the requested method
isn't valid for HTTP.HttpURLConnection.setRequestMethod(String)public void setUseCaches(boolean usecaches)
setUseCaches in interface HttpConnectionusecaches - a boolean indicating whether or not to allow
cachingURLConnection.setUseCaches(boolean)public void setConnectTimeout(int timeout)
setConnectTimeout in interface HttpConnectiontimeout - an int that specifies the connect timeout value
in millisecondsURLConnection.setConnectTimeout(int)public void setReadTimeout(int timeout)
setReadTimeout in interface HttpConnectiontimeout - an int that specifies the timeout value to be
used in millisecondsURLConnection.setReadTimeout(int)public java.lang.String getContentType()
getContentType in interface HttpConnectionnull if not known.URLConnection.getContentType()public java.io.InputStream getInputStream()
throws java.io.IOException
getInputStream in interface HttpConnectionjava.io.IOException - if an I/O error occurs while creating the input stream.URLConnection.getInputStream()public java.lang.String getHeaderField(java.lang.String name)
getHeaderField in interface HttpConnectionname - the name of a header field.null if
there is no such field in the header.URLConnection.getHeaderField(String)public int getContentLength()
getContentLength in interface HttpConnection-1 if the content length is not known, or if
the content length is greater than Integer.MAX_VALUE.URLConnection.getContentLength()public void setInstanceFollowRedirects(boolean followRedirects)
setInstanceFollowRedirects in interface HttpConnectionfollowRedirects - a boolean indicating whether or not to follow
HTTP redirects.HttpURLConnection.setInstanceFollowRedirects(boolean)public void setDoOutput(boolean dooutput)
setDoOutput in interface HttpConnectiondooutput - the new value.URLConnection.setDoOutput(boolean)public void setFixedLengthStreamingMode(int contentLength)
setFixedLengthStreamingMode in interface HttpConnectioncontentLength - The number of bytes which will be written to the OutputStream.HttpURLConnection.setFixedLengthStreamingMode(int)public java.io.OutputStream getOutputStream()
throws java.io.IOException
getOutputStream in interface HttpConnectionjava.io.IOExceptionURLConnection.getOutputStream()public void setChunkedStreamingMode(int chunklen)
setChunkedStreamingMode in interface HttpConnectionchunklen - The number of bytes to write in each chunk. If chunklen is
less than or equal to zero, a default value will be used.HttpURLConnection.setChunkedStreamingMode(int)public java.lang.String getRequestMethod()
getRequestMethod in interface HttpConnectionHttpURLConnection.getRequestMethod()public boolean usingProxy()
usingProxy in interface HttpConnectionHttpURLConnection.usingProxy()public void connect()
throws java.io.IOException
connect in interface HttpConnectionjava.io.IOExceptionURLConnection.connect()public void setHostnameVerifier(javax.net.ssl.HostnameVerifier hostnameverifier)
HostnameVerifier used during https
communicationsetHostnameVerifier in interface HttpConnectionhostnameverifier - a HostnameVerifier object.public void configure(javax.net.ssl.KeyManager[] km,
javax.net.ssl.TrustManager[] tm,
java.security.SecureRandom random)
throws java.security.NoSuchAlgorithmException,
java.security.KeyManagementException
configure in interface HttpConnectionkm - the keymanager managing the key material used to authenticate
the local SSLSocket to its peertm - the trustmanager responsible for managing the trust material
that is used when making trust decisions, and for deciding
whether credentials presented by a peer should be accepted.random - the source of randomness for this generator or null. See
SSLContext.init(KeyManager[], TrustManager[], SecureRandom)java.security.NoSuchAlgorithmExceptionjava.security.KeyManagementException