package org.wso2.carbon.device.mgt.ios.dep;

/**
 * This class contains constants related Apple DEP.
 */
public class DEPConstants {

    private DEPConstants(){
    }

    public static final String HMAC_SHA1 = "HmacSHA1";
    public static final String ENC_UTF_8 = "UTF-8";

    /*	---------------------------------------------------------------------------------------
                                    HTTP Connection information for DEP
     ---------------------------------------------------------------------------------------	*/
    public static final String USER_AGENT = "ProfileManager-1.9";
    public static final String PROTOCOL_VERSION = "2";
    public static final String HTTP_POST = "POST";
    public static final String HTTP_GET = "GET";
    public static final String HTTP_PUT = "PUT";
    public static final String HTTP_DELETE = "DELETE";
    public static final String APPLICATION_JSON_TYPE = "application/json";
    public static final String APPLICATION_JSON_CHARSET = "application/json;charset=UTF8";
    public static final int DEFAULT_RESPONSE_CODE = -1;

    /*	---------------------------------------------------------------------------------------
                                OAuth related information for DEP
    ---------------------------------------------------------------------------------------	*/
    public static final String SIGNATURE_METHOD = "HMAC-SHA1";
    public static final String OAUTH_VERSION = "1.0";
    public static final int NONCE_MULTIPLIER = 100000000;
    public static final int TIMESTAMP_DIVIDER = 1000;

    /*	---------------------------------------------------------------------------------------
                            Server Token related information for DEP
    ---------------------------------------------------------------------------------------	*/
    public static final String CONSUMER_KEY = "consumer_key";
    public static final String CONSUMER_SECRET = "consumer_secret";
    public static final String ACCESS_TOKEN = "access_token";
    public static final String ACCESS_SECRET = "access_secret";
    public static final String ACCESS_TOKEN_EXPIRY = "access_token_expiry";
    public static final String DEP_TOKEN_CONFIGURATION_NAME = "depToken";


    /*	---------------------------------------------------------------------------------------
                                    DEP related file paths
     ---------------------------------------------------------------------------------------	*/
    public static final String UPLOAD_LOCATION = "/repository/resources/security/";
    public static final String DECRYPTED_TOKEN_LOCATION = "/repository/resources/security/token.json";


    /*	---------------------------------------------------------------------------------------
                                    DEP Web Services URL
     ---------------------------------------------------------------------------------------	*/
    public static final String BASE_URL = "https://mdmenrollment.apple.com/";
    public static final String AUTH_SESSION_URL = BASE_URL + "session";
    public static final String ACCOUNT_DETAILS_URL = BASE_URL + "account";
    public static final String FETCH_DEVICES_URL = BASE_URL + "server/devices";
    public static final String SYNC_DEVICES_URL = BASE_URL + "devices/sync";
    public static final String DEVICE_DETAILS_URL = BASE_URL + "devices";
    public static final String DISOWN_DEVICES_URL = BASE_URL + "devices/disown";
    public static final String DEFINE_PROFILE_URL = BASE_URL + "profile";
    public static final String ASSIGN_PROFILE_URL = BASE_URL + "profile/devices";
    public static final String FETCH_PROFILE_URL = BASE_URL + "profile";
    public static final String REMOVE_PROFILE_URL = BASE_URL + "profile/devices";

}
