blob: 5e9ef13d659f510276bc9b384e661e5767ac608f [file] [log] [blame]
/*
* Copyright 1999-2011 Alibaba Group.
*
* 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.dubbo.common;
import java.util.regex.Pattern;
/**
* Constants
*
* @author william.liangf
*/
public class Constants {
public static final String PROVIDER = "provider";
public static final String CONSUMER = "consumer";
public static final String PROVIDERS = "providers";
public static final String CONSUMERS = "consumers";
public static final String REGISTER = "register";
public static final String UNREGISTER = "unregister";
public static final String SUBSCRIBE = "subscribe";
public static final String UNSUBSCRIBE = "unsubscribe";
public static final String VALIDATION_KEY = "validation";
public static final String CACHE_KEY = "cache";
public static final String DUBBO_PROPERTIES_KEY = "dubbo.properties.file";
public static final String DEFAULT_DUBBO_PROPERTIES = "dubbo.properties";
public static final String SENT_KEY = "sent";
public static final boolean DEFAULT_SENT = false;
public static final String REGISTRY_PROTOCOL = "registry";
public static final String $INVOKE = "$invoke";
public static final String $ECHO = "$echo";
public static final int DEFAULT_IO_THREADS = Runtime.getRuntime()
.availableProcessors() + 1;
public static final String DEFAULT_PROXY = "javassist";
public static final int DEFAULT_PAYLOAD = 8 * 1024 * 1024; // 8M
public static final String DEFAULT_CLUSTER = "failover";
public static final String DEFAULT_DIRECTORY = "dubbo";
public static final String DEFAULT_LOADBALANCE = "random";
public static final String DEFAULT_PROTOCOL = "dubbo";
public static final String DEFAULT_EXCHANGER = "header";
public static final String DEFAULT_TRANSPORTER = "netty";
public static final String DEFAULT_REMOTING_SERVER = "netty";
public static final String DEFAULT_REMOTING_CLIENT = "netty";
public static final String DEFAULT_REMOTING_CODEC = "dubbo";
public static final String DEFAULT_REMOTING_SERIALIZATION = "hessian2";
public static final String DEFAULT_HTTP_SERVER = "servlet";
public static final String DEFAULT_HTTP_CLIENT = "jdk";
public static final String DEFAULT_HTTP_SERIALIZATION = "json";
public static final String DEFAULT_CHARSET = "UTF-8";
public static final int DEFAULT_WEIGHT = 100;
public static final int DEFAULT_FORKS = 2;
public static final String DEFAULT_THREAD_NAME = "Dubbo";
public static final int DEFAULT_THREADS = 200;
public static final int DEFAULT_QUEUES = 0;
public static final int DEFAULT_THREAD_ALIVE = 60 * 1000;
public static final int DEFAULT_CONNECTIONS = 0;
public static final int DEFAULT_ACCEPTS = 0;
public static final int DEFAULT_IDLE_TIMEOUT = 600 * 1000;
public static final int DEFAULT_HEARTBEAT = 0;
public static final int DEFAULT_TIMEOUT = 5000;
public static final int DEFAULT_RETRIES = 2;
// default buffer size is 8k.
public static final int DEFAULT_BUFFER_SIZE = 8 * 1024;
public static final int MAX_BUFFER_SIZE = 16 * 1024;
public static final int MIN_BUFFER_SIZE = 1 * 1024;
public static final String REMOVE_VALUE_PREFIX = "-";
public static final String HIDE_KEY_PREFIX = ".";
public static final String DEFAULT_KEY_PREFIX = "default.";
public static final String DEFAULT_KEY = "default";
public static final String LOADBALANCE_KEY = "loadbalance";
// key for router type, for e.g., "script"/"file", corresponding to ScriptRouterFactory.NAME, FileRouterFactory.NAME
public static final String ROUTER_KEY = "router";
public static final String CLUSTER_KEY = "cluster";
public static final String REGISTRY_KEY = "registry";
public static final String MONITOR_KEY = "monitor";
public static final String DEFAULT_REGISTRY = "dubbo";
public static final String BACKUP_KEY = "backup";
public static final String DIRECTORY_KEY = "directory";
public static final String DEPRECATED_KEY = "deprecated";
public static final String ANYHOST_KEY = "anyhost";
public static final String ANYHOST = "0.0.0.0";
public static final String APPLICATION_KEY = "application";
public static final String LOCAL_KEY = "local";
public static final String STUB_KEY = "stub";
public static final String MOCK_KEY = "mock";
public static final String PROTOCOL_KEY = "protocol";
public static final String PROXY_KEY = "proxy";
public static final String WEIGHT_KEY = "weight";
public static final String FORKS_KEY = "forks";
public static final String DEFAULT_THREADPOOL = "fixed";
public static final String DEFAULT_CLIENT_THREADPOOL = "cached";
public static final String THREADPOOL_KEY = "threadpool";
public static final String THREAD_NAME_KEY = "threadname";
public static final String IO_THREADS_KEY = "iothreads";
public static final String THREADS_KEY = "threads";
public static final String QUEUES_KEY = "queues";
public static final String THREAD_ALIVE_KEY = "threadalive";
public static final String EXECUTES_KEY = "executes";
public static final String BUFFER_KEY = "buffer";
public static final String PAYLOAD_KEY = "payload";
public static final String REFERENCE_FILTER_KEY = "reference.filter";
public static final String INVOKER_LISTENER_KEY = "invoker.listener";
public static final String SERVICE_FILTER_KEY = "service.filter";
public static final String EXPORTER_LISTENER_KEY = "exporter.listener";
public static final String ACCESS_LOG_KEY = "accesslog";
public static final String ACTIVES_KEY = "actives";
public static final String CONNECTIONS_KEY = "connections";
public static final String ACCEPTS_KEY = "accepts";
public static final String IDLE_TIMEOUT_KEY = "idle.timeout";
public static final String HEARTBEAT_KEY = "heartbeat";
public static final String HEARTBEAT_TIMEOUT_KEY = "heartbeat.timeout";
public static final String CONNECT_TIMEOUT_KEY = "connect.timeout";
public static final String TIMEOUT_KEY = "timeout";
public static final String RETRIES_KEY = "retries";
public static final String PROMPT_KEY = "prompt";
public static final String DEFAULT_PROMPT = "dubbo>";
public static final String CODEC_KEY = "codec";
public static final String DOWNSTREAM_CODEC_KEY = "codec.downstream";
public static final String SERIALIZATION_KEY = "serialization";
public static final String EXCHANGER_KEY = "exchanger";
public static final String TRANSPORTER_KEY = "transporter";
public static final String SERVER_KEY = "server";
public static final String CLIENT_KEY = "client";
public static final String ASYNC_KEY = "async";
public static final String TOKEN_KEY = "token";
public static final String METHODS_KEY = "methods";
public static final String CHARSET_KEY = "charset";
public static final String RECONNECT_KEY = "reconnect";
public static final String SEND_RECONNECT_KEY = "send.reconnect";
public static final int DEFAULT_RECONNECT_PERIOD = 2000;
public static final String SHUTDOWN_TIMEOUT_KEY = "shutdown.timeout";
public static final int DEFAULT_SHUTDOWN_TIMEOUT = 1000 * 60 * 5;
public static final String TIMESTAMP_KEY = "timestamp";
public static final String CHECK_KEY = "check";
public static final String REGISTER_KEY = "register";
public static final String GROUP_KEY = "group";
public static final String PATH_KEY = "path";
public static final String INTERFACE_KEY = "interface";
public static final String GENERIC_KEY = "generic";
public static final String FILE_KEY = "file";
public static final String WAIT_KEY = "wait";
public static final String ADMIN_KEY = "admin";
public static final String VERSION_KEY = "version";
public static final String REVISION_KEY = "revision";
public static final String DUBBO_VERSION_KEY = "dubbo";
public static final String HESSIAN_VERSION_KEY = "hessian.version";
public static final String DISPATHER_KEY = "dispather";
public static final String CHANNEL_HANDLER_KEY = "channel.handler";
public static final String DEFAULT_CHANNEL_HANDLER = "default";
public static final String ANY_VALUE = "*";
public static final String COMMA_SEPARATOR = ",";
public static final Pattern COMMA_SPLIT_PATTERN = Pattern
.compile("\\s*[,]+\\s*");
public final static String PATH_SEPARATOR = "/";
public static final String REGISTRY_SEPARATOR = "|";
public static final Pattern REGISTRY_SPLIT_PATTERN = Pattern
.compile("\\s*[|]+\\s*");
public static final String SEMICOLON_SEPARATOR = ";";
public static final Pattern SEMICOLON_SPLIT_PATTERN = Pattern
.compile("\\s*[;]+\\s*");
public static final String CONNECT_QUEUE_CAPACITY = "connect.queue.capacity";
public static final String CONNECT_QUEUE_WARNING_SIZE = "connect.queue.warning.size";
public static final int DEFAULT_CONNECT_QUEUE_WARNING_SIZE = 1000;
public static final String CHANNEL_ATTRIBUTE_READONLY_KEY = "channel.readonly";
public static final String CHANNEL_READONLYEVENT_SENT_KEY = "channel.readonly.sent";
public static final String CHANNEL_SEND_READONLYEVENT_KEY = "channel.readonly.send";
public static final String SUBSCRIBE_PROTOCOL = "subscribe";
public static final String EMPTY_PROTOCOL = "empty";
public static final String ROUTE_PROTOCOL = "route";
public static final String MOCK_PROTOCOL = "mock";
public static final String RETURN_PREFIX = "return ";
public static final String THROW_PREFIX = "throw";
public static final String FAIL_PREFIX = "fail:";
public static final String FORCE_PREFIX = "force:";
public static final String MERGER_KEY = "merger";
public static final String TPS_MAX_KEY = "tps.max";
/**
* 集群时是否排除非available的invoker
*/
public static final String CLUSTER_AVAILABLE_CHECK_KEY = "cluster.availablecheck";
/**
*/
public static final boolean DEFAULT_CLUSTER_AVAILABLE_CHECK = true;
/**
* 集群时是否启用sticky策略
*/
public static final String CLUSTER_STICKY_KEY = "sticky";
/**
* sticky默认值.
*/
public static final boolean DEFAULT_CLUSTER_STICKY = false;
/**
* 创建client时,是否先要建立连接。
*/
public static final String LAZY_CONNECT_KEY = "lazy";
/**
* lazy连接的初始状态是连接状态还是非连接状态?
*/
public static final String LAZY_CONNECT_INITIAL_STATE_KEY = "connect.lazy.initial.state";
/**
* lazy连接的初始状态默认是连接状态.
*/
public static final boolean DEFAULT_LAZY_CONNECT_INITIAL_STATE = true;
/**
* 注册中心是否同步存储文件,默认异步
*/
public static final String REGISTRY_FILESAVE_SYNC_KEY = "save.file";
/**
* 注册中心失败事件重试事件
*/
public static final String REGISTRY_RETRY_PERIOD_KEY = "retry.period";
/**
* 重试周期
*/
public static final int DEFAULT_REGISTRY_RETRY_PERIOD = 5 * 1000;
/**
* 注册中心自动重连时间
*/
public static final String REGISTRY_RECONNECT_PERIOD_KEY = "reconnect.period";
public static final int DEFAULT_REGISTRY_RECONNECT_PERIOD = 3 * 1000;
public static final String SESSION_TIMEOUT_KEY = "session";
public static final int DEFAULT_SESSION_TIMEOUT = 60 * 1000;
/**
* 注册中心导出URL参数的KEY
*/
public static final String EXPORT_KEY = "export";
/**
* 注册中心引用URL参数的KEY
*/
public static final String REFER_KEY = "refer";
/**
* callback inst id
*/
public static final String CALLBACK_SERVICE_KEY = "callback.service.instid";
/**
* 每个客户端同一个接口 callback服务实例的限制
*/
public static final String CALLBACK_INSTANCES_LIMIT_KEY = "callbacks";
/**
* 每个客户端同一个接口 callback服务实例的限制
*/
public static final int DEFAULT_CALLBACK_INSTANCES = 1;
public static final String CALLBACK_SERVICE_PROXY_KEY = "callback.service.proxy";
public static final String IS_CALLBACK_SERVICE = "is_callback_service";
/**
* channel中callback的invokers
*/
public static final String CHANNEL_CALLBACK_KEY = "channel.callback.invokers.key";
@Deprecated
public static final String SHUTDOWN_WAIT_SECONDS_KEY = "dubbo.service.shutdown.wait.seconds";
public static final String SHUTDOWN_WAIT_KEY = "dubbo.service.shutdown.wait";
public static final String IS_SERVER_KEY = "isserver";
/**
* 默认值毫秒,避免重新计算.
*/
public static final int DEFAULT_SERVER_SHUTDOWN_TIMEOUT = 10000;
public static final String ON_CONNECT_KEY = "onconnect";
public static final String ON_DISCONNECT_KEY = "ondisconnect";
public static final String RETURN_KEY = "return";
public static final String ON_INVOKE_METHOD_KEY = "oninvoke.method";
public static final String ON_RETURN_METHOD_KEY = "onreturn.method";
public static final String ON_THROW_METHOD_KEY = "onthrow.method";
public static final String ON_INVOKE_INSTANCE_KEY = "oninvoke.instance";
public static final String ON_RETURN_INSTANCE_KEY = "onreturn.instance";
public static final String ON_THROW_INSTANCE_KEY = "onthrow.instance";
public static final String OVERRIDE_PROTOCOL = "override";
public static final String RULE_KEY = "rule";
public static final String TYPE_KEY = "type";
// when ROUTER_KEY's value is set to ROUTER_TYPE_CLEAR, RegistryDirectory will clean all current routers
public static final String ROUTER_TYPE_CLEAR = "clean";
public static final String DEFAULT_SCRIPT_TYPE_KEY = "javascript";
public static final String STUB_EVENT_KEY = "dubbo.stub.event";
public static final boolean DEFAULT_STUB_EVENT = false;
public static final String STUB_EVENT_METHODS_KEY = "dubbo.stub.event.methods";
//invocation attachment属性中如果有此值,则选择mock invoker
public static final String INVOCATION_NEED_MOCK = "invocation.need.mock";
/*
* private Constants(){ }
*/
}