]> source.dussan.org Git - jgit.git/commit
Introduce an abstraction for HTTP connections 90/22090/3
authorChristian Halstrick <christian.halstrick@sap.com>
Sun, 4 Aug 2013 20:49:47 +0000 (22:49 +0200)
committerChristian Halstrick <christian.halstrick@sap.com>
Tue, 18 Feb 2014 20:04:10 +0000 (21:04 +0100)
commit38c4f35d8b911426e007716697b37d746740b788
tree8c199a7fc9e2b65135cb388ddec588b212fa79fe
parentf08fde3eebc2689210292d78db785f6ec52dc8ef
Introduce an abstraction for HTTP connections

Previously all HTTP communication was done with the help of
java.net.HttpUrlConnection. In order to make JGit usable in environments
where the direct usage of such connections is not allowed but where the
environment provides other means to get network connections an
abstraction for connections is introduced. The idea is that new
implementations of this interface will be introduced which will not use
java.net.HttpUrlConnection but use e.g.
org.apache.client.http.HttpClient to provide network connections.

One example: certain cloud infrastructures don't allow that components
in the cloud communicate directly with HttpUrlConnection. Instead they
provide services where a component can ask for a connection (given a
symbolic name for the destination) and where the infrastructure returns
a preconfigured org.apache.http.client.HttpClient. In order to allow
JGit to be running in such environments we need the abstraction
introduced in this commit.

Change-Id: I3b06629f90a118bd284e55bb3f6465fe7d10463d
Signed-off-by: Christian Halstrick <christian.halstrick@sap.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
12 files changed:
org.eclipse.jgit.test/META-INF/MANIFEST.MF
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/HttpAuthTest.java
org.eclipse.jgit/.settings/.api_filters [new file with mode: 0644]
org.eclipse.jgit/META-INF/MANIFEST.MF
org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpAuthMethod.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpTransport.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportHttp.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/http/HttpConnection.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/transport/http/HttpConnectionFactory.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/transport/http/JDKHttpConnection.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/transport/http/JDKHttpConnectionFactory.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/util/HttpSupport.java