/*
 * Copyright 1999-2018 Alibaba Group Holding Ltd.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.alibaba.nacos.config.server.constant;

/**
 * Server Constants
 *
 * @author Nacos
 */
public class Constants {

    public static final String CLIENT_VERSION_HEADER = "Client-Version";

    public static final String CLIENT_VERSION = "3.0.0";

    public static int DATA_IN_BODY_VERSION = 204;

    public static final String DEFAULT_GROUP = "DEFAULT_GROUP";

    /**
     * server端配置文件基目录
     */
    public static final String BASE_DIR = "config-data";

    /**
     * server端配置文件备份目录
     */
    public static final String CONFIG_BAK_DIR = System.getProperty("user.home", "/home/admin") + "/nacos/bak_data";

    public static final String APPNAME = "AppName";

    public static final String UNKNOWN_APP = "UnknownApp";

    public static final String DEFAULT_DOMAINNAME = "commonconfig.config-host.taobao.com";

    public static final String DAILY_DOMAINNAME = "commonconfig.taobao.net";

    public static final String NULL = "";

    public static final String DATAID = "dataId";

    public static final String GROUP = "group";

    public static final String LAST_MODIFIED = "Last-Modified";

    public static final String ACCEPT_ENCODING = "Accept-Encoding";

    public static final String CONTENT_ENCODING = "Content-Encoding";

    public static final String PROBE_MODIFY_REQUEST = "Listening-Configs";

    public static final String PROBE_MODIFY_RESPONSE = "Probe-Modify-Response";

    public static final String PROBE_MODIFY_RESPONSE_NEW = "Probe-Modify-Response-New";

    public static final String USE_ZIP = "true";

    public static final String CONTENT_MD5 = "Content-MD5";

    public static final String CONFIG_VERSION = "Config-Version";

    public static final String IF_MODIFIED_SINCE = "If-Modified-Since";

    public static final String SPACING_INTERVAL = "client-spacing-interval";

    /**
     * 秒
     */
    public static final int ASYNC_UPDATE_ADDRESS_INTERVAL = 300;
    /**
     * 秒
     */
    public static final int POLLING_INTERVAL_TIME = 15;
    /**
     * 毫秒
     */
    public static final int ONCE_TIMEOUT = 2000;
    /**
     * 毫秒
     */
    public static final int CONN_TIMEOUT = 2000;
    /**
     * 毫秒
     */
    public static final int SO_TIMEOUT = 60000;
    /**
     * 毫秒
     */
    public static final int RECV_WAIT_TIMEOUT = ONCE_TIMEOUT * 5;

    public static final String BASE_PATH = "/v1/cs";

    public static final String OPS_CONTROLLER_PATH = BASE_PATH + "/ops";

    public static final String CAPACITY_CONTROLLER_PATH = BASE_PATH + "/capacity";

    public static final String COMMUNICATION_CONTROLLER_PATH = BASE_PATH + "/communication";

    public static final String CONFIG_CONTROLLER_PATH = BASE_PATH + "/configs";

    public static final String HEALTH_CONTROLLER_PATH = BASE_PATH + "//health";

    public static final String HISTORY_CONTROLLER_PATH = BASE_PATH + "/history";

    public static final String LISTENER_CONTROLLER_PATH = BASE_PATH + "/listener";

    public static final String NAMESPACE_CONTROLLER_PATH = BASE_PATH + "/namespaces";

    public static final String ENCODE = "UTF-8";

    public static final String MAP_FILE = "map-file.js";

    public static final int FLOW_CONTROL_THRESHOLD = 20;

    public static final int FLOW_CONTROL_SLOT = 10;

    public static final int FLOW_CONTROL_INTERVAL = 1000;

    public static final String LINE_SEPARATOR = Character.toString((char)1);

    public static final String WORD_SEPARATOR = Character.toString((char)2);

    public static final String NACOS_LINE_SEPARATOR = "\r\n";

    /**
     * 从网络获取数据的总时间, 当超过此时间, 不再从网络获取数据, 单位ms
     */
    public static final long TOTALTIME_FROM_SERVER = 10000;
    /**
     * 从网络获取数据的总时间的失效时间, 单位ms
     */
    public static final long TOTALTIME_INVALID_THRESHOLD = 60000;

    /**
     * 批量操作时, 单条数据的状态码
     */
    /**
     * 发生异常
     */
    public static final int BATCH_OP_ERROR = -1;
    public static final String BATCH_OP_ERROR_IO_MSG = "get config dump error";
    public static final String BATCH_OP_ERROR_CONFLICT_MSG = "config get conflicts";
    /**
     * 查询成功, 数据存在
     */
    public static final int BATCH_QUERY_EXISTS = 1;
    public static final String BATCH_QUERY_EXISTS_MSG = "config exits";
    /**
     * 查询成功, 数据不存在
     */
    public static final int BATCH_QUERY_NONEXISTS = 2;
    public static final String BATCH_QUERY_NONEEXISTS_MSG = "config not exits";
    /**
     * 新增成功
     */
    public static final int BATCH_ADD_SUCCESS = 3;
    /**
     * 更新成功
     */
    public static final int BATCH_UPDATE_SUCCESS = 4;

    public static final int MAX_UPDATE_FAIL_COUNT = 5;
    public static final int MAX_UPDATEALL_FAIL_COUNT = 5;
    public static final int MAX_REMOVE_FAIL_COUNT = 5;
    public static final int MAX_REMOVEALL_FAIL_COUNT = 5;
    public static final int MAX_NOTIFY_COUNT = 5;
    public static final int MAX_ADDACK_COUNT = 5;

    /**
     * 数据的初始版本号
     */
    public static final int FIRST_VERSION = 1;
    /**
     * 数据被删除的标识版本号
     */
    public static final int POISON_VERSION = -1;
    /**
     * 写磁盘文件时, 临时版本号
     */
    public static final int TEMP_VERSION = 0;
    /**
     * 获取数据的顺序：容灾文件-> 服务器 -> 本地缓存
     */
    public static final int GETCONFIG_LOCAL_SERVER_SNAPSHOT = 1;
    /**
     * 获取数据的顺序：容灾文件-> 本地缓存 -> 服务器
     */
    public static final int GETCONFIG_LOCAL_SNAPSHOT_SERVER = 2;

    public static final String CLIENT_APPNAME_HEADER = "Client-AppName";
    public static final String CLIENT_REQUEST_TS_HEADER = "Client-RequestTS";
    public static final String CLIENT_REQUEST_TOKEN_HEADER = "Client-RequestToken";
    /**
     * client, sdk请求server服务的身份
     */
    public static final String REQUEST_IDENTITY = "Request-Identity";
    /**
     * 鉴权结果信息
     */
    public static final String ACL_RESPONSE = "ACL-Response";

    public static final int ATOMIC_MAX_SIZE = 1000;
}

@@ -3385,17 +3385,16 @@
 ATH + %22/
-/
 health%22;

correct the mistake to Constants.HEALTH_CONTROLLER_PATH