001package com.box.sdk;
002
003/**
004 * Global settings to apply to all API requests.
005 */
006public final class BoxGlobalSettings {
007    private static int connectTimeout = 0;
008    private static int readTimeout = 0;
009    private static int maxRequestAttempts = BoxAPIConnection.DEFAULT_MAX_ATTEMPTS;
010
011    private BoxGlobalSettings() {
012    }
013
014    /**
015     * Returns the current global connect timeout.
016     * @return connect timeout
017     */
018    public static int getConnectTimeout() {
019        return connectTimeout;
020    }
021
022    /**
023     * Sets the global connect timeout.
024     * @param connectTimeout timeout in milliseconds
025     */
026    public static void setConnectTimeout(int connectTimeout) {
027        BoxGlobalSettings.connectTimeout = connectTimeout;
028    }
029
030    /**
031     * Returns the current global read timeout.
032     * @return read timeout
033     */
034    public static int getReadTimeout() {
035        return readTimeout;
036    }
037
038    /**
039     * Sets the global read timeout.
040     * @param readTimeout timeout in milliseconds
041     */
042    public static void setReadTimeout(int readTimeout) {
043        BoxGlobalSettings.readTimeout = readTimeout;
044    }
045
046    /**
047     * Returns the global maximum number of request attempts.
048     * @return max number of request attempts
049     */
050    public static int getMaxRequestAttempts() {
051        return maxRequestAttempts;
052    }
053
054    /**
055     * Sets the global default maximum number of request attempts.
056     * @param maxRequestAttempts maximum number of request attempts
057     */
058    public static void setMaxRequestAttempts(int maxRequestAttempts) {
059        BoxGlobalSettings.maxRequestAttempts = maxRequestAttempts;
060    }
061}