Package org.omegat.util
Class HttpConnectionUtils
- java.lang.Object
-
- org.omegat.util.HttpConnectionUtils
-
public final class HttpConnectionUtils extends java.lang.ObjectUtility collection for http connections.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classHttpConnectionUtils.FlakyDownloadExceptionDownloaded file error.static classHttpConnectionUtils.ResponseErrorHTTP response error storage.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static booleandownloadBinaryFile(java.net.URL fileURL, java.util.Map<java.lang.String,java.lang.String> headers, java.util.Set<java.lang.String> expectedMime, java.io.File saveFilePath)Downloads a binary file from a URL.static voiddownloadZipFileAndExtract(java.net.URL url, java.io.File dir, java.util.List<java.lang.String> expectedFiles)Download Zip file from remote site and extract it to specified directory.static java.lang.Stringget(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders)Get data from the remote URL.static java.lang.Stringget(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders, java.lang.String defaultOutputCharset)Get data from the remote URL.static java.lang.StringgetURL(java.net.URL url)Get resource from URL with default timeout.static java.lang.StringgetURL(java.net.URL url, int timeout)Download a file to memory.static byte[]getURLasByteArray(java.lang.String target)Obtain byte array context from remote URL.static java.lang.Stringpost(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params)Method call without additional headers for possible calls from plugins.static java.lang.Stringpost(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders)Post data to the remote URL.static java.lang.StringpostJSON(java.lang.String address, java.lang.String json, java.util.Map<java.lang.String,java.lang.String> additionalHeaders)Post JSON data to the remote URL.
-
-
-
Method Detail
-
getURL
public static java.lang.String getURL(java.net.URL url) throws java.io.IOExceptionGet resource from URL with default timeout.- Parameters:
url- resource URL.- Returns:
- string returned from server.
- Throws:
java.io.IOException- raises when connection is failed.
-
getURL
public static java.lang.String getURL(java.net.URL url, int timeout) throws java.io.IOExceptionDownload a file to memory.- Parameters:
url- resource URL to downloadtimeout- timeout to connect and read.- Returns:
- returned string
- Throws:
java.io.IOException- when connection and read method error.
-
downloadZipFileAndExtract
public static void downloadZipFileAndExtract(java.net.URL url, java.io.File dir, java.util.List<java.lang.String> expectedFiles) throws java.io.IOExceptionDownload Zip file from remote site and extract it to specified directory.- Parameters:
url- URL of zip file resource to download.dir- target directory to extractexpectedFiles- filter extract file names- Throws:
java.io.IOException- raises when extraction is failed, maybe flaky download happened.
-
downloadBinaryFile
public static boolean downloadBinaryFile(java.net.URL fileURL, java.util.Map<java.lang.String,java.lang.String> headers, java.util.Set<java.lang.String> expectedMime, java.io.File saveFilePath) throws java.io.IOException, HttpConnectionUtils.FlakyDownloadExceptionDownloads a binary file from a URL.- Parameters:
fileURL- HTTP URL of the file to be downloadedheaders- Additional HTTP headersexpectedMime- Mime type expected and check against such as ["application/octet-stream", "application/jar-archive"]. If getting type is differed, return false.saveFilePath- path of the file- Returns:
- true when succeeded, otherwise false.
- Throws:
java.io.IOException- raise when connection and file write failed.HttpConnectionUtils.FlakyDownloadException- raise when downloaded file length differs from expected content length.
-
getURLasByteArray
public static byte[] getURLasByteArray(java.lang.String target) throws java.io.IOExceptionObtain byte array context from remote URL.- Parameters:
target- String representation of well-formed URL.- Returns:
- byte array or null if status is not 200 OK
- Throws:
java.io.IOException- raise when connection failed.
-
post
public static java.lang.String post(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params) throws java.io.IOExceptionMethod call without additional headers for possible calls from plugins.- Parameters:
address- URL to postparams- post parameters in Map- Returns:
- result string returned from server.
- Throws:
java.io.IOException- raises when connection failed.
-
get
public static java.lang.String get(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders) throws java.io.IOExceptionGet data from the remote URL.- Parameters:
address- address to postparams- parametersadditionalHeaders- additional headers for request, can be null- Returns:
- server output
- Throws:
java.io.IOException
-
get
public static java.lang.String get(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders, java.lang.String defaultOutputCharset) throws java.io.IOExceptionGet data from the remote URL.- Parameters:
address- address to postparams- parametersadditionalHeaders- additional headers for request, can be nulldefaultOutputCharset- default charset used to interpret the response- Returns:
- server output
- Throws:
java.io.IOException
-
post
public static java.lang.String post(java.lang.String address, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,java.lang.String> additionalHeaders) throws java.io.IOExceptionPost data to the remote URL.- Parameters:
address- address to postparams- parametersadditionalHeaders- additional headers for request, can be null- Returns:
- Server output
- Throws:
java.io.IOException
-
postJSON
public static java.lang.String postJSON(java.lang.String address, java.lang.String json, java.util.Map<java.lang.String,java.lang.String> additionalHeaders) throws java.io.IOExceptionPost JSON data to the remote URL.- Parameters:
address- address to postjson- JSON-encoded dataadditionalHeaders- additional headers for request, can be null- Returns:
- Server output
- Throws:
java.io.IOException
-
-