package cn.lihongjie.coal.common;

import java.util.UUID;

public class Constants {

    public static final String RUN_ID = UUID.randomUUID().toString();

    public static final String CACHE_RESOURCE = "resource";
    public static final String CACHE_USER_PERMISSIONS = "userPermissions";
    public static final String CACHE_USER_RESOURCES = "userResources";
    public static final String CACHE_RESOURCE_BY_URL = "resourceByUrl";
    public static final String CACHE_PERMISSION = "permission";
    public static final String CACHE_PERMISSION_BY_TYPE = "permissionByType";
    public static final String CACHE_SYSCONFIG = "sysconfig";
    public static final String CACHE_RESOURCE_API_TREE = "resourceApiTree";
    public static final String CACHE_RESOURCE_MENU_TREE = "resourceMenuTree";
    public static final String CACHE_RESOURCE_ALL = "resourceAll";
    public static final String HTTP_HEADER_TOKEN = "X-Token";
    public static final String HTTP_HEADER_CLIENT_SIGN = "X-Client-Sign";
    public static final String HTTP_HEADER_CLIENT_RANDOM = "X-Client-Random";
    public static final String HTTP_HEADER_CLIENT_URL = "X-Client-Url";
    public static final String HTTP_HEADER_TS = "X-TS";
    public static final String RATE_LIMIT_GLOBAL_SESSION_MIN_PREFIX = "global-session-min-rl-";
    public static final String RATE_LIMIT_GLOBAL_ANONYMOUS_MIN_PREFIX = "global-anonymous-min-rl-";
    public static final String RATE_LIMIT_GLOBAL_USER_MIN_PREFIX = "global-user-min-rl-";



    public static final String RATE_LIMIT_GLOBAL_SESSION_HOUR_PREFIX = "global-session-hour-rl-";
    public static final String RATE_LIMIT_GLOBAL_ANONYMOUS_HOUR_PREFIX = "global-anonymous-hour-rl-";
    public static final String RATE_LIMIT_GLOBAL_USER_HOUR_PREFIX = "global-user-hour-rl-";



    public static final String RATE_LIMIT_GLOBAL_SESSION_DAY_PREFIX = "global-session-day-rl-";
    public static final String RATE_LIMIT_GLOBAL_ANONYMOUS_DAY_PREFIX = "global-anonymous-day-rl-";
    public static final String RATE_LIMIT_GLOBAL_USER_DAY_PREFIX = "global-user-day-rl-";


    public static final String CACHE_ADDRESS_TYPE = "addressType";
    public static final String CACHE_CLIENT_RANDOM_PREFIX = "clientRandom::";
    public static final String HTTP_HEADER_RESPONSE_TIME = "X-Response-Time";
    public static final String SYSCONFIG_REQUEST_SIGN_IGNORE_URLS = "request_sign_ignore_urls";
    public static final String HTTP_ATTR_RESOURCE = "http_attr_resource";
    public static final String CACHE_RESOURCE_BY_URL_2 = "resourceByUrl2";
    public static final String CACHE_IS_ANONYMOUS_BY_RESOURCE_ID = "isAnonymousByResourceId";
    public static final String CACHE_ORG_ADMIN_HAS_PERMISSION = "orgAdminHasPermission";
    public static final String SYSCONFIG_ENABLE_REQUEST_SUBMIT_TOKEN = "enable_request_submit_token";
    public static final String HTTP_HEADER_SUBMIT_TOKEN = "X-Submit-Token";
    public static final String CACHE_ERROR_MSG = "errorMsg";
    public static final String CACHE_ORGANIZATION_PERMISSION_IDS = "organizationPermissionIds";
    public static final String CACHE_USER_BY_ID = "userById";
    public static final String CACHE_USER_RESOURCE_IDS = "userResourceIds";
    public static String SYSCONFIG_ENABLE_CAPTCHA = "enable_captcha";
    public static String SYSCONFIG_ENABLE_REQUEST_SIGN = "enable_request_sign";
    public static String SYSCONFIG_SESSION_TIMEOUT = "session_timeout";
    public static String SYSCONFIG_SESSION_TIMEOUT_WEB = "session_timeout_web";
    public static String SYSCONFIG_SESSION_TIMEOUT_H5 = "session_timeout_h5";
    public static String SYSCONFIG_ACCOUNT_MAX_ONLINE = "account_max_online";
    public static String SYSCONFIG_RESETPWD_ENABLE = "resetpwd_enable";
    public static String SYSCONFIG_PASSWORD_DICT_DETECT = "password_dict_detect";
    public static String SYSCONFIG_PASSWORD_STRENGTH_MIN = "password_strength_min";
    public static String SYSCONFIG_RESETPWD_TIMEOUT = "resetpwd_timeout";
    public static String SYSCONFIG_RESETPWD_MAX_FAIL_COUNT = "resetpwd_max_fail_count";
    public static String SYSCONFIG_SESSION_GLOBAL_RATE_LIMIT_PER_MIN = "session_global_rate_limit_per_min";
    public static String SYSCONFIG_USER_GLOBAL_RATE_LIMIT_PER_MIN = "user_global_rate_limit_per_min";
    public static String SYSCONFIG_ANONYMOUS_GLOBAL_RATE_LIMIT_PER_MIN = "anonymous_global_rate_limit_per_min";

    public static String SYSCONFIG_SESSION_GLOBAL_RATE_LIMIT_PER_HOUR = "session_global_rate_limit_per_hour";
    public static String SYSCONFIG_USER_GLOBAL_RATE_LIMIT_PER_HOUR = "user_global_rate_limit_per_hour";
    public static String SYSCONFIG_ANONYMOUS_GLOBAL_RATE_LIMIT_PER_HOUR = "anonymous_global_rate_limit_per_hour";

    public static String SYSCONFIG_SESSION_GLOBAL_RATE_LIMIT_PER_DAY = "session_global_rate_limit_per_day";
    public static String SYSCONFIG_USER_GLOBAL_RATE_LIMIT_PER_DAY = "user_global_rate_limit_per_day";
    public static String SYSCONFIG_ANONYMOUS_GLOBAL_RATE_LIMIT_PER_DAY = "anonymous_global_rate_limit_per_day";
}
