Class HTTPConnection
- java.lang.Object
-
- org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection
-
- All Implemented Interfaces:
IHTTPConnection
public class HTTPConnection extends java.lang.Object implements IHTTPConnection
- Version:
- 1.3
-
-
Field Summary
Fields Modifier and Type Field Description private static intDEFAULT_HTTP_TIMEOUTprivate static org.xml.sax.helpers.DefaultHandlerDEFAULT_SAX_HANDLERprivate static java.util.Map<java.lang.String,java.util.List<java.lang.String>>emptyHeaderprivate byte[]myBufferprivate HTTPAuthenticationmyChallengeCredentialsprivate java.lang.StringmyCharsetprivate SVNURLmyHostprivate java.io.InputStreammyInputStreamprivate booleanmyIsProxiedprivate booleanmyIsSecuredprivate booleanmyIsSpoolAllprivate booleanmyIsSpoolResponseprivate HTTPSSLKeyManagermyKeyManagerprivate HTTPStatusmyLastStatusprivate SVNAuthenticationmyLastValidAuthprivate booleanmyLogSSLParamsprivate longmyNextRequestTimeoutprivate java.io.OutputStreammyOutputStreamprivate HTTPAuthenticationmyProxyAuthenticationprivate SVNRepositorymyRepositoryprivate intmyRequestCountprivate javax.xml.parsers.SAXParsermySAXParserprivate java.net.SocketmySocketprivate java.io.FilemySpoolDirectoryprivate javax.net.ssl.TrustManagermyTrustManagerprivate static org.xml.sax.EntityResolverNO_ENTITY_RESOLVERprivate static javax.xml.parsers.SAXParserFactoryourSAXParserFactoryprivate static intrequestAttempts
-
Constructor Summary
Constructors Constructor Description HTTPConnection(SVNRepository repository, java.lang.String charset, java.io.File spoolDirectory, boolean spoolAll)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearAuthenticationCache()private voidclearLastValidAuth()voidclose()private java.lang.StringcomposeRealm(java.lang.String realm)private voidconnect(HTTPSSLKeyManager keyManager, javax.net.ssl.TrustManager trustManager, ISVNProxyManager proxyManager)private java.io.InputStreamcreateInputStream(HTTPHeader readHeader, java.io.InputStream is)private HTTPSSLKeyManagercreateKeyManager()static javax.xml.parsers.SAXParserFactorycreateSAXParserFactory()private voidfinishResponse(HTTPRequest request)private byte[]getBuffer()SVNURLgetHost()private java.io.InputStreamgetInputStream()HTTPStatusgetLastStatus()SVNAuthenticationgetLastValidCredentials()private java.io.OutputStreamgetOutputStream()private char[]getProxyPasswordValue(ISVNProxyManager proxyManager)private static javax.xml.parsers.SAXParserFactorygetSAXParserFactory()private static booleanhasToCloseConnection(HTTPHeader header)private booleanisClearCredentialsOnClose(HTTPAuthentication auth)private SVNErrorMessagereadData(java.io.InputStream is, java.lang.String method, java.lang.String path, org.xml.sax.helpers.DefaultHandler handler)SVNErrorMessagereadData(HTTPRequest request, java.io.OutputStream dst)SVNErrorMessagereadData(HTTPRequest request, java.lang.String method, java.lang.String path, org.xml.sax.helpers.DefaultHandler handler)SVNErrorMessagereadError(HTTPRequest request, java.lang.String method, java.lang.String path)voidreadHeader(HTTPRequest request)HTTPStatusrequest(java.lang.String method, java.lang.String path, HTTPHeader header, java.io.InputStream body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler)HTTPStatusrequest(java.lang.String method, java.lang.String path, HTTPHeader header, java.io.InputStream body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler, SVNErrorMessage context)HTTPStatusrequest(java.lang.String method, java.lang.String path, HTTPHeader header, java.lang.StringBuffer body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler)HTTPStatusrequest(java.lang.String method, java.lang.String path, HTTPHeader header, java.lang.StringBuffer body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler, SVNErrorMessage context)voidsendData(byte[] body)voidsendData(java.io.InputStream source, long length)voidsetSpoolAll(boolean spoolAll)voidsetSpoolDirectory(java.io.File spoolDirectory)voidsetSpoolResponse(boolean spoolResponse)voidskipData(HTTPRequest request)
-
-
-
Field Detail
-
DEFAULT_SAX_HANDLER
private static final org.xml.sax.helpers.DefaultHandler DEFAULT_SAX_HANDLER
-
NO_ENTITY_RESOLVER
private static org.xml.sax.EntityResolver NO_ENTITY_RESOLVER
-
requestAttempts
private static final int requestAttempts
-
DEFAULT_HTTP_TIMEOUT
private static final int DEFAULT_HTTP_TIMEOUT
- See Also:
- Constant Field Values
-
ourSAXParserFactory
private static javax.xml.parsers.SAXParserFactory ourSAXParserFactory
-
emptyHeader
private static final java.util.Map<java.lang.String,java.util.List<java.lang.String>> emptyHeader
-
myBuffer
private byte[] myBuffer
-
mySAXParser
private javax.xml.parsers.SAXParser mySAXParser
-
myHost
private SVNURL myHost
-
myOutputStream
private java.io.OutputStream myOutputStream
-
myInputStream
private java.io.InputStream myInputStream
-
mySocket
private java.net.Socket mySocket
-
myRepository
private SVNRepository myRepository
-
myIsSecured
private boolean myIsSecured
-
myIsProxied
private boolean myIsProxied
-
myLogSSLParams
private boolean myLogSSLParams
-
myLastValidAuth
private SVNAuthentication myLastValidAuth
-
myChallengeCredentials
private HTTPAuthentication myChallengeCredentials
-
myProxyAuthentication
private HTTPAuthentication myProxyAuthentication
-
myIsSpoolResponse
private boolean myIsSpoolResponse
-
myTrustManager
private javax.net.ssl.TrustManager myTrustManager
-
myKeyManager
private HTTPSSLKeyManager myKeyManager
-
myCharset
private java.lang.String myCharset
-
myIsSpoolAll
private boolean myIsSpoolAll
-
mySpoolDirectory
private java.io.File mySpoolDirectory
-
myNextRequestTimeout
private long myNextRequestTimeout
-
myRequestCount
private int myRequestCount
-
myLastStatus
private HTTPStatus myLastStatus
-
-
Constructor Detail
-
HTTPConnection
public HTTPConnection(SVNRepository repository, java.lang.String charset, java.io.File spoolDirectory, boolean spoolAll) throws SVNException
- Throws:
SVNException
-
-
Method Detail
-
getLastStatus
public HTTPStatus getLastStatus()
- Specified by:
getLastStatusin interfaceIHTTPConnection
-
getHost
public SVNURL getHost()
-
connect
private void connect(HTTPSSLKeyManager keyManager, javax.net.ssl.TrustManager trustManager, ISVNProxyManager proxyManager) throws java.io.IOException, SVNException
- Throws:
java.io.IOExceptionSVNException
-
getProxyPasswordValue
private char[] getProxyPasswordValue(ISVNProxyManager proxyManager)
-
readHeader
public void readHeader(HTTPRequest request) throws java.io.IOException
- Throws:
java.io.IOException
-
readError
public SVNErrorMessage readError(HTTPRequest request, java.lang.String method, java.lang.String path)
-
sendData
public void sendData(byte[] body) throws java.io.IOException- Throws:
java.io.IOException
-
sendData
public void sendData(java.io.InputStream source, long length) throws java.io.IOException- Throws:
java.io.IOException
-
getLastValidCredentials
public SVNAuthentication getLastValidCredentials()
- Specified by:
getLastValidCredentialsin interfaceIHTTPConnection
-
clearAuthenticationCache
public void clearAuthenticationCache()
- Specified by:
clearAuthenticationCachein interfaceIHTTPConnection
-
clearLastValidAuth
private void clearLastValidAuth()
-
request
public HTTPStatus request(java.lang.String method, java.lang.String path, HTTPHeader header, java.lang.StringBuffer body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler) throws SVNException
- Specified by:
requestin interfaceIHTTPConnection- Throws:
SVNException
-
request
public HTTPStatus request(java.lang.String method, java.lang.String path, HTTPHeader header, java.lang.StringBuffer body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler, SVNErrorMessage context) throws SVNException
- Specified by:
requestin interfaceIHTTPConnection- Throws:
SVNException
-
request
public HTTPStatus request(java.lang.String method, java.lang.String path, HTTPHeader header, java.io.InputStream body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler) throws SVNException
- Specified by:
requestin interfaceIHTTPConnection- Throws:
SVNException
-
request
public HTTPStatus request(java.lang.String method, java.lang.String path, HTTPHeader header, java.io.InputStream body, int ok1, int ok2, java.io.OutputStream dst, org.xml.sax.helpers.DefaultHandler handler, SVNErrorMessage context) throws SVNException
- Specified by:
requestin interfaceIHTTPConnection- Throws:
SVNException
-
composeRealm
private java.lang.String composeRealm(java.lang.String realm)
-
isClearCredentialsOnClose
private boolean isClearCredentialsOnClose(HTTPAuthentication auth)
-
createKeyManager
private HTTPSSLKeyManager createKeyManager()
-
readData
public SVNErrorMessage readData(HTTPRequest request, java.io.OutputStream dst) throws java.io.IOException
- Throws:
java.io.IOException
-
readData
public SVNErrorMessage readData(HTTPRequest request, java.lang.String method, java.lang.String path, org.xml.sax.helpers.DefaultHandler handler) throws java.io.IOException
- Throws:
java.io.IOException
-
readData
private SVNErrorMessage readData(java.io.InputStream is, java.lang.String method, java.lang.String path, org.xml.sax.helpers.DefaultHandler handler) throws javax.xml.parsers.FactoryConfigurationError, java.io.UnsupportedEncodingException, java.io.IOException
- Throws:
javax.xml.parsers.FactoryConfigurationErrorjava.io.UnsupportedEncodingExceptionjava.io.IOException
-
skipData
public void skipData(HTTPRequest request) throws java.io.IOException
- Throws:
java.io.IOException
-
close
public void close()
- Specified by:
closein interfaceIHTTPConnection
-
getBuffer
private byte[] getBuffer()
-
getInputStream
private java.io.InputStream getInputStream() throws java.io.IOException- Throws:
java.io.IOException
-
getOutputStream
private java.io.OutputStream getOutputStream() throws java.io.IOException- Throws:
java.io.IOException
-
finishResponse
private void finishResponse(HTTPRequest request)
-
hasToCloseConnection
private static boolean hasToCloseConnection(HTTPHeader header)
-
createInputStream
private java.io.InputStream createInputStream(HTTPHeader readHeader, java.io.InputStream is) throws java.io.IOException
- Throws:
java.io.IOException
-
getSAXParserFactory
private static javax.xml.parsers.SAXParserFactory getSAXParserFactory() throws javax.xml.parsers.FactoryConfigurationError- Throws:
javax.xml.parsers.FactoryConfigurationError
-
createSAXParserFactory
public static javax.xml.parsers.SAXParserFactory createSAXParserFactory()
-
setSpoolResponse
public void setSpoolResponse(boolean spoolResponse)
- Specified by:
setSpoolResponsein interfaceIHTTPConnection
-
setSpoolAll
public void setSpoolAll(boolean spoolAll)
-
setSpoolDirectory
public void setSpoolDirectory(java.io.File spoolDirectory)
-
-