程序包 com.volcengine

类 ApiClient


  • public class ApiClient
    extends Object
    • 构造器详细资料

      • ApiClient

        public ApiClient()
    • 方法详细资料

      • getEndpoint

        public String getEndpoint()
        Get base path
        返回:
        Baes path
      • setEndpoint

        public ApiClient setEndpoint​(String endpoint)
        Set base path
        参数:
        endpoint - endpoint of the URL
        返回:
        An instance of OkHttpClient
      • getDisableSSL

        public boolean getDisableSSL()
        Get disableSSL
        返回:
        Baes path
      • setDisableSSL

        public ApiClient setDisableSSL​(boolean disableSSL)
        Set disableSSL
        参数:
        disableSSL -
        返回:
        An instance of OkHttpClient
      • getRegion

        public String getRegion()
        Get region
        返回:
        Baes path
      • setRegion

        public ApiClient setRegion​(String region)
        Set region
        参数:
        region -
        返回:
        An instance of OkHttpClient
      • getCredentials

        public Credentials getCredentials()
        Get credentials
        返回:
        Baes path
      • setCredentials

        public ApiClient setCredentials​(Credentials credentials)
        Set credentials
        参数:
        credentials -
        返回:
        An instance of OkHttpClient
      • getHttpClient

        public com.squareup.okhttp.OkHttpClient getHttpClient()
        Get HTTP client
        返回:
        An instance of OkHttpClient
      • setHttpClient

        public ApiClient setHttpClient​(com.squareup.okhttp.OkHttpClient httpClient)
        Set HTTP client
        参数:
        httpClient - An instance of OkHttpClient
        返回:
        Api Client
      • getJSON

        public JSON getJSON()
        Get JSON
        返回:
        JSON object
      • setJSON

        public ApiClient setJSON​(JSON json)
        Set JSON
        参数:
        json - JSON object
        返回:
        Api client
      • isVerifyingSsl

        public boolean isVerifyingSsl()
        True if isVerifyingSsl flag is on
        返回:
        True if isVerifySsl flag is on
      • setVerifyingSsl

        public ApiClient setVerifyingSsl​(boolean verifyingSsl)
        Configure whether to verify certificate and hostname when making https requests. Default to true. NOTE: Do NOT set to false in production code, otherwise you would face multiple types of cryptographic attacks.
        参数:
        verifyingSsl - True to verify TLS/SSL connection
        返回:
        ApiClient
      • getSslCaCert

        public InputStream getSslCaCert()
        Get SSL CA cert.
        返回:
        Input stream to the SSL CA cert
      • setSslCaCert

        public ApiClient setSslCaCert​(InputStream sslCaCert)
        Configure the CA certificate to be trusted when making https requests. Use null to reset to default.
        参数:
        sslCaCert - input stream for SSL CA cert
        返回:
        ApiClient
      • getKeyManagers

        public KeyManager[] getKeyManagers()
      • setKeyManagers

        public ApiClient setKeyManagers​(KeyManager[] managers)
        Configure client keys to use for authorization in an SSL session. Use null to reset to default.
        参数:
        managers - The KeyManagers to use
        返回:
        ApiClient
      • getDateFormat

        public DateFormat getDateFormat()
      • setOffsetDateTimeFormat

        public ApiClient setOffsetDateTimeFormat​(org.threeten.bp.format.DateTimeFormatter dateFormat)
      • setLocalDateFormat

        public ApiClient setLocalDateFormat​(org.threeten.bp.format.DateTimeFormatter dateFormat)
      • setLenientOnJson

        public ApiClient setLenientOnJson​(boolean lenientOnJson)
      • getAuthentications

        public Map<String,​Authentication> getAuthentications()
        Get authentications (key: authentication name, value: authentication).
        返回:
        Map of authentication objects
      • getAuthentication

        public Authentication getAuthentication​(String authName)
        Get authentication for the given name.
        参数:
        authName - The authentication name
        返回:
        The authentication, null if not found
      • setUserAgent

        public ApiClient setUserAgent​(String userAgent)
        Set the User-Agent header's value (by adding to the default header map).
        参数:
        userAgent - HTTP request's user agent
        返回:
        ApiClient
      • addDefaultHeader

        public ApiClient addDefaultHeader​(String key,
                                          String value)
        Add a default header.
        参数:
        key - The header's key
        value - The header's value
        返回:
        ApiClient
      • isDebugging

        public boolean isDebugging()
        Check that whether debugging is enabled for this API client.
        返回:
        True if debugging is enabled, false otherwise.
      • setDebugging

        public ApiClient setDebugging​(boolean debugging)
        Enable/disable debugging for this API client.
        参数:
        debugging - To enable (true) or disable (false) debugging
        返回:
        ApiClient
      • getTempFolderPath

        public String getTempFolderPath()
        The path of temporary folder used to store downloaded files from endpoints with file response. The default value is null, i.e. using the system's default tempopary folder.
        返回:
        Temporary folder path
        另请参阅:
        createTempFile
      • setTempFolderPath

        public ApiClient setTempFolderPath​(String tempFolderPath)
        Set the temporary folder path (for downloading files)
        参数:
        tempFolderPath - Temporary folder path
        返回:
        ApiClient
      • getConnectTimeout

        public int getConnectTimeout()
        Get connection timeout (in milliseconds).
        返回:
        Timeout in milliseconds
      • setConnectTimeout

        public ApiClient setConnectTimeout​(int connectionTimeout)
        Sets the connect timeout (in milliseconds). A value of 0 means no timeout, otherwise values must be between 1 and
        参数:
        connectionTimeout - connection timeout in milliseconds
        返回:
        Api client
      • getReadTimeout

        public int getReadTimeout()
        Get read timeout (in milliseconds).
        返回:
        Timeout in milliseconds
      • setReadTimeout

        public ApiClient setReadTimeout​(int readTimeout)
        Sets the read timeout (in milliseconds). A value of 0 means no timeout, otherwise values must be between 1 and Integer.MAX_VALUE.
        参数:
        readTimeout - read timeout in milliseconds
        返回:
        Api client
      • getWriteTimeout

        public int getWriteTimeout()
        Get write timeout (in milliseconds).
        返回:
        Timeout in milliseconds
      • setWriteTimeout

        public ApiClient setWriteTimeout​(int writeTimeout)
        Sets the write timeout (in milliseconds). A value of 0 means no timeout, otherwise values must be between 1 and Integer.MAX_VALUE.
        参数:
        writeTimeout - connection timeout in milliseconds
        返回:
        Api client
      • parameterToString

        public String parameterToString​(Object param)
        Format the given parameter object into string.
        参数:
        param - Parameter
        返回:
        String representation of the parameter
      • parameterToPair

        public List<Pair> parameterToPair​(String name,
                                          Object value)
        Formats the specified query parameter to a list containing a single Pair object.

        Note that value must not be a collection.

        参数:
        name - The name of the parameter.
        value - The value of the parameter.
        返回:
        A list containing a single Pair object.
      • parameterToPairs

        public List<Pair> parameterToPairs​(String collectionFormat,
                                           String name,
                                           Collection value)
        Formats the specified collection query parameters to a list of Pair objects.

        Note that the values of each of the returned Pair objects are percent-encoded.

        参数:
        collectionFormat - The collection format of the parameter.
        name - The name of the parameter.
        value - The value of the parameter.
        返回:
        A list of Pair objects.
      • sanitizeFilename

        public String sanitizeFilename​(String filename)
        Sanitize filename by removing path. e.g. ../../sun.gif becomes sun.gif
        参数:
        filename - The filename to be sanitized
        返回:
        The sanitized filename
      • isJsonMime

        public boolean isJsonMime​(String mime)
        Check if the given MIME is a JSON MIME. JSON MIME examples: application/json application/json; charset=UTF8 APPLICATION/JSON application/vnd.company+json "* / *" is also default to JSON
        参数:
        mime - MIME (Multipurpose Internet Mail Extensions)
        返回:
        True if the given MIME is JSON, false otherwise.
      • selectHeaderAccept

        public String selectHeaderAccept​(String[] accepts)
        Select the Accept header's value from the given accepts array: if JSON exists in the given array, use it; otherwise use all of them (joining into a string)
        参数:
        accepts - The accepts array to select from
        返回:
        The Accept header to use. If the given array is empty, null will be returned (not to set the Accept header explicitly).
      • selectHeaderContentType

        public String selectHeaderContentType​(String[] contentTypes)
        Select the Content-Type header's value from the given array: if JSON exists in the given array, use it; otherwise use the first one of the array.
        参数:
        contentTypes - The Content-Type array to select from
        返回:
        The Content-Type header to use. If the given array is empty, or matches "any", JSON will be used.
      • escapeString

        public String escapeString​(String str)
        Escape the given string to be used as URL query value.
        参数:
        str - String to be escaped
        返回:
        Escaped string
      • deserialize

        public <T> T deserialize​(com.squareup.okhttp.Response response,
                                 Type returnType,
                                 boolean... isCommon)
                          throws ApiException
        Deserialize response body to Java object, according to the return type and the Content-Type response header.
        类型参数:
        T - Type
        参数:
        response - HTTP response
        returnType - The type of the Java object
        isCommon - The flag for Universal
        返回:
        The deserialized Java object
        抛出:
        ApiException - If fail to deserialize response body, i.e. cannot read response body or the Content-Type of the response is not supported.
      • serialize

        public com.squareup.okhttp.RequestBody serialize​(Object obj,
                                                         String contentType)
                                                  throws ApiException
        Serialize the given Java object into request body according to the object's class and the request Content-Type.
        参数:
        obj - The Java object
        contentType - The request Content-Type
        返回:
        The serialized request body
        抛出:
        ApiException - If fail to serialize the given object
      • downloadFileFromResponse

        public File downloadFileFromResponse​(com.squareup.okhttp.Response response)
                                      throws ApiException
        Download file from the given response.
        参数:
        response - An instance of the Response object
        返回:
        Downloaded file
        抛出:
        ApiException - If fail to read file content from response and write to disk
      • prepareDownloadFile

        public File prepareDownloadFile​(com.squareup.okhttp.Response response)
                                 throws IOException
        Prepare file for download
        参数:
        response - An instance of the Response object
        返回:
        Prepared file for the download
        抛出:
        IOException - If fail to prepare file for download
      • execute

        public <T> ApiResponse<T> execute​(com.squareup.okhttp.Call call,
                                          Type returnType,
                                          boolean... isCommon)
                                   throws ApiException
        Execute HTTP call and deserialize the HTTP response body into the given return type.
        类型参数:
        T - The return type corresponding to (same with) returnType
        参数:
        returnType - The return type used to deserialize HTTP response body
        call - Call
        isCommon - The flag for Universal
        返回:
        ApiResponse object containing response status, headers and data, which is a Java object deserialized from response body and would be null when returnType is null.
        抛出:
        ApiException - If fail to execute the call
      • executeAsync

        public <T> void executeAsync​(com.squareup.okhttp.Call call,
                                     ApiCallback<T> callback)
        类型参数:
        T - Type
        参数:
        call - An instance of the Call object
        callback - ApiCallback<T>
      • executeAsync

        public <T> void executeAsync​(com.squareup.okhttp.Call call,
                                     Type returnType,
                                     ApiCallback<T> callback)
        Execute HTTP call asynchronously.
        类型参数:
        T - Type
        参数:
        call - The callback to be executed when the API call finishes
        returnType - Return type
        callback - ApiCallback
        另请参阅:
        execute(Call, Type, boolean...)
      • handleResponse

        public <T> T handleResponse​(com.squareup.okhttp.Response response,
                                    Type returnType,
                                    boolean... isCommon)
                             throws ApiException
        Handle the given response, return the deserialized object when the response is successful.
        类型参数:
        T - Type
        参数:
        response - Response
        returnType - Return type
        isCommon - The flag for Universal
        返回:
        Type
        抛出:
        ApiException - If the response has a unsuccessful status code or fail to deserialize the response body
      • buildCall

        public com.squareup.okhttp.Call buildCall​(String path,
                                                  String method,
                                                  List<Pair> queryParams,
                                                  List<Pair> collectionQueryParams,
                                                  Object body,
                                                  Map<String,​String> headerParams,
                                                  Map<String,​Object> formParams,
                                                  String[] authNames,
                                                  ProgressRequestBody.ProgressRequestListener progressRequestListener,
                                                  boolean... isCommon)
                                           throws ApiException
        Build HTTP call with the given options.
        参数:
        path - The sub-path of the HTTP URL
        method - The request method, one of "GET", "HEAD", "OPTIONS", "POST", "PUT", "PATCH" and "DELETE"
        queryParams - The query parameters
        collectionQueryParams - The collection query parameters
        body - The request body object
        headerParams - The header parameters
        formParams - The form parameters
        authNames - The authentications to apply
        progressRequestListener - Progress request listener
        isCommon - The flag for Universal
        返回:
        The HTTP call
        抛出:
        ApiException - If fail to serialize the request body object
      • buildRequest

        public com.squareup.okhttp.Request buildRequest​(String path,
                                                        String method,
                                                        List<Pair> queryParams,
                                                        List<Pair> collectionQueryParams,
                                                        Object body,
                                                        Map<String,​String> headerParams,
                                                        Map<String,​Object> formParams,
                                                        String[] authNames,
                                                        ProgressRequestBody.ProgressRequestListener progressRequestListener,
                                                        boolean... isCommon)
                                                 throws ApiException
        Build an HTTP request with the given options.
        参数:
        path - The sub-path of the HTTP URL
        method - The request method, one of "GET", "HEAD", "OPTIONS", "POST", "PUT", "PATCH" and "DELETE"
        queryParams - The query parameters
        collectionQueryParams - The collection query parameters
        body - The request body object
        headerParams - The header parameters
        formParams - The form parameters
        authNames - The authentications to apply
        progressRequestListener - Progress request listener
        isCommon - The flag for Universal
        返回:
        The HTTP request
        抛出:
        ApiException - If fail to serialize the request body object
      • buildUrl

        public String buildUrl​(String path,
                               List<Pair> queryParams,
                               List<Pair> collectionQueryParams)
        Build full URL by concatenating base path, the given sub path and query parameters.
        参数:
        path - The sub path
        queryParams - The query parameters
        collectionQueryParams - The collection query parameters
        返回:
        The full URL
      • processHeaderParams

        public void processHeaderParams​(Map<String,​String> headerParams,
                                        com.squareup.okhttp.Request.Builder reqBuilder)
        Set header parameters to the request builder, including default headers.
        参数:
        headerParams - Header parameters in the ofrm of Map
        reqBuilder - Reqeust.Builder
      • updateParamsForAuth

        public void updateParamsForAuth​(String[] authNames,
                                        List<Pair> queryParams,
                                        Map<String,​String> headerParams)
        Update query and header parameters based on authentication settings.
        参数:
        authNames - The authentications to apply
        queryParams - List of query parameters
        headerParams - Map of header parameters
      • buildRequestBodyFormEncoding

        public com.squareup.okhttp.RequestBody buildRequestBodyFormEncoding​(Map<String,​Object> formParams)
        Build a form-encoding request body with the given form parameters.
        参数:
        formParams - Form parameters in the form of Map
        返回:
        RequestBody
      • buildRequestBodyMultipart

        public com.squareup.okhttp.RequestBody buildRequestBodyMultipart​(Map<String,​Object> formParams)
        Build a multipart (file uploading) request body with the given form parameters, which could contain text fields and file fields.
        参数:
        formParams - Form parameters in the form of Map
        返回:
        RequestBody
      • guessContentTypeFromFile

        public String guessContentTypeFromFile​(File file)
        Guess Content-Type header from the given file (defaults to "application/octet-stream").
        参数:
        file - The given file
        返回:
        The guessed Content-Type