You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by je...@apache.org on 2018/08/16 08:56:13 UTC
[incubator-dubbo] branch master updated: Qos enhancement (#2153)
This is an automated email from the ASF dual-hosted git repository.
jerrick pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git
The following commit(s) were added to refs/heads/master by this push:
new 7277f5e Qos enhancement (#2153)
7277f5e is described below
commit 7277f5ed1826e3ff926e483af466c9bef16898e2
Author: Huxing Zhang <hu...@gmail.com>
AuthorDate: Thu Aug 16 16:55:52 2018 +0800
Qos enhancement (#2153)
* Not to accept foreign ip by default.
* Log if fail to start qos server. #2046
* Fix typo. No functional change.
* Remove redundant declaration.
* Sync dubbo.xsd to compact dubbo.xsd.
* Simplify code and add comments.
* Add log message if qos is not enabled.
* Fix UT failure.
---
.../org/apache/dubbo/config/ApplicationConfig.java | 3 +
.../src/main/resources/META-INF/compat/dubbo.xsd | 353 +++++++++++----------
.../src/main/resources/META-INF/dubbo.xsd | 348 ++++++++++----------
.../dubbo/qos/protocol/QosProtocolWrapper.java | 18 +-
.../dubbo/qos/protocol/QosProtocolWrapperTest.java | 6 +-
.../registry/integration/RegistryProtocol.java | 17 +-
6 files changed, 381 insertions(+), 364 deletions(-)
diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
index a3d46a0..86d4001 100644
--- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
+++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
@@ -71,10 +71,13 @@ public class ApplicationConfig extends AbstractConfig {
// directory for saving thread dump
private String dumpDirectory;
+ // whether to enable qos or not
private Boolean qosEnable;
+ // the qos port to listen
private Integer qosPort;
+ // should we accept foreign ip or not?
private Boolean qosAcceptForeignIp;
// customized parameters
diff --git a/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/compat/dubbo.xsd b/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/compat/dubbo.xsd
index 30558cc..6206048 100644
--- a/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/compat/dubbo.xsd
+++ b/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/compat/dubbo.xsd
@@ -15,58 +15,58 @@
</xsd:annotation>
<xsd:complexType name="abstractMethodType">
- <xsd:attribute name="timeout" type="xsd:string" use="optional" default="0">
+ <xsd:attribute name="timeout" type="xsd:string" default="0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method invoke timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="retries" type="xsd:string" use="optional">
+ <xsd:attribute name="retries" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method retry times. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="actives" type="xsd:string" use="optional">
+ <xsd:attribute name="actives" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max active requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="connections" type="xsd:string" use="optional">
+ <xsd:attribute name="connections" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The exclusive connections. default share one connection. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="loadbalance" type="xsd:string" use="optional">
+ <xsd:attribute name="loadbalance" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method load balance. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="async" type="xsd:string" use="optional" default="false">
+ <xsd:attribute name="async" type="xsd:string" default="false">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method does async. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sent" type="xsd:string" use="optional">
+ <xsd:attribute name="sent" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The async method return await message sent ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="mock" type="xsd:string" use="optional">
+ <xsd:attribute name="mock" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service mock implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="merger" type="xsd:string" use="optional">
+ <xsd:attribute name="merger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The multi-group result merger ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="validation" type="xsd:string" use="optional">
+ <xsd:attribute name="validation" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service jsr303 validation, true/false. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cache" type="xsd:string" use="optional">
+ <xsd:attribute name="cache" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service cache, lru/threadlocal/jcache. ]]></xsd:documentation>
</xsd:annotation>
@@ -81,82 +81,82 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="local" type="xsd:string" use="optional">
+ <xsd:attribute name="local" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service local implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="stub" type="xsd:string" use="optional">
+ <xsd:attribute name="stub" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service local implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="proxy" type="xsd:string" use="optional">
+ <xsd:attribute name="proxy" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use proxy factory. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cluster" type="xsd:string" use="optional">
+ <xsd:attribute name="cluster" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use cluster strategy. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="filter" type="xsd:string" use="optional">
+ <xsd:attribute name="filter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The filter. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="listener" type="xsd:string" use="optional">
+ <xsd:attribute name="listener" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The listener. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="owner" type="xsd:string" use="optional">
+ <xsd:attribute name="owner" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The owner. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="layer" type="xsd:string" use="optional">
+ <xsd:attribute name="layer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ layer info. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="application" type="xsd:string" use="optional">
+ <xsd:attribute name="application" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service application. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="module" type="xsd:string" use="optional">
+ <xsd:attribute name="module" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service module. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="callbacks" type="xsd:string" use="optional">
+ <xsd:attribute name="callbacks" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The callback instance limit peer connection.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="onconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service client connected. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="ondisconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="ondisconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service client disconnected. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="scope" type="xsd:string" use="optional">
+ <xsd:attribute name="scope" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Defines the service visibility, choise:[local remote]. default is remote, which can be invoked by network。 ]]></xsd:documentation>
@@ -169,49 +169,49 @@
<xsd:complexType name="abstractReferenceType">
<xsd:complexContent>
<xsd:extension base="abstractInterfaceType">
- <xsd:attribute name="version" type="xsd:string" use="optional" default="0.0.0">
+ <xsd:attribute name="version" type="xsd:string" default="0.0.0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="check" type="xsd:string" use="optional">
+ <xsd:attribute name="check" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Check dependency providers. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="init" type="xsd:string" use="optional">
+ <xsd:attribute name="init" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Eager init reference. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="generic" type="xsd:string" use="optional">
+ <xsd:attribute name="generic" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Generic service. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="injvm" type="xsd:string" use="optional">
+ <xsd:attribute name="injvm" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[Deprecated. Replace to set scope=local ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sticky" type="xsd:string" use="optional">
+ <xsd:attribute name="sticky" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Enable/Disable cluster sticky policy.Default false ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="reconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="reconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ remoting reconnect timer. false represent close reconnect. integer represent interval(ms) .default true(2000ms).]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="lazy" type="xsd:string" use="optional">
+ <xsd:attribute name="lazy" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ lazy create connection. ]]></xsd:documentation>
</xsd:annotation>
@@ -223,86 +223,86 @@
<xsd:complexType name="abstractServiceType">
<xsd:complexContent>
<xsd:extension base="abstractInterfaceType">
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service can be register to registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional" default="0.0.0">
+ <xsd:attribute name="version" type="xsd:string" default="0.0.0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="deprecated" type="xsd:string" use="optional">
+ <xsd:attribute name="deprecated" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ whether the service is deprecated. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="delay" type="xsd:string" use="optional" default="0">
+ <xsd:attribute name="delay" type="xsd:string" default="0">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service export delay millisecond. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="export" type="xsd:string" use="optional">
+ <xsd:attribute name="export" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service is export. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="weight" type="xsd:string" use="optional">
+ <xsd:attribute name="weight" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service weight. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="document" type="xsd:string" use="optional">
+ <xsd:attribute name="document" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service document. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dynamic" type="xsd:string" use="optional">
+ <xsd:attribute name="dynamic" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ the service registered to the registry is dynamic(true) or static(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="token" type="xsd:string" use="optional">
+ <xsd:attribute name="token" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service use token. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accesslog" type="xsd:string" use="optional">
+ <xsd:attribute name="accesslog" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service use accesslog. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="executes" type="xsd:string" use="optional">
+ <xsd:attribute name="executes" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service allow execute requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="warmup" type="xsd:string" use="optional">
+ <xsd:attribute name="warmup" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The warmup time in Milliseconds. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="serialization" type="xsd:string" use="optional">
+ <xsd:attribute name="serialization" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The serialization protocol of service. ]]></xsd:documentation>
</xsd:annotation>
@@ -361,17 +361,17 @@
<xsd:documentation><![CDATA[ The application logger. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The application registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The application monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -404,17 +404,17 @@
<xsd:documentation><![CDATA[ The module organization. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The module registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The module monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -430,110 +430,110 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="address" type="xsd:string" use="optional">
+ <xsd:attribute name="address" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry address. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry default port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry lookup protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="username" type="xsd:string" use="optional">
+ <xsd:attribute name="username" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry username. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="password" type="xsd:string" use="optional">
+ <xsd:attribute name="password" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry password. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transport" type="xsd:string" use="optional">
+ <xsd:attribute name="transport" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cluster" type="xsd:string" use="optional">
+ <xsd:attribute name="cluster" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry cluster type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional">
+ <xsd:attribute name="version" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="timeout" type="xsd:string" use="optional">
+ <xsd:attribute name="timeout" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The request timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="session" type="xsd:string" use="optional">
+ <xsd:attribute name="session" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The session timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="file" type="xsd:string" use="optional">
+ <xsd:attribute name="file" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry adddress file store. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="wait" type="xsd:string" use="optional">
+ <xsd:attribute name="wait" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The wait time for shutdown. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="check" type="xsd:string" use="optional">
+ <xsd:attribute name="check" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Check registry status on stratup. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dynamic" type="xsd:string" use="optional">
+ <xsd:attribute name="dynamic" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ the service registered to this registry is dynamic(true) or static(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ register service to this registry(true) or not(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="subscribe" type="xsd:string" use="optional">
+ <xsd:attribute name="subscribe" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ subscribe service to this registry(true) or not(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -544,42 +544,42 @@
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
- <xsd:attribute name="address" type="xsd:string" use="optional">
+ <xsd:attribute name="address" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor address. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="username" type="xsd:string" use="optional">
+ <xsd:attribute name="username" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor username. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="password" type="xsd:string" use="optional">
+ <xsd:attribute name="password" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor password. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional">
+ <xsd:attribute name="version" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="interval" type="xsd:string" use="optional">
+ <xsd:attribute name="interval" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor interval. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -597,7 +597,7 @@
<xsd:documentation><![CDATA[ The parameter value. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="hide" type="xsd:boolean" use="optional">
+ <xsd:attribute name="hide" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation><![CDATA[ Hide parameter. ]]></xsd:documentation>
</xsd:annotation>
@@ -616,54 +616,54 @@
<xsd:documentation><![CDATA[ The method name (method.toString()). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="executes" type="xsd:string" use="optional">
+ <xsd:attribute name="executes" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max active requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="stat" type="xsd:string" use="optional" default="-1">
+ <xsd:attribute name="stat" type="xsd:string" default="-1">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method parameter index for statistics. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="retry" type="xsd:string" use="optional">
+ <xsd:attribute name="retry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to retries. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="reliable" type="xsd:string" use="optional" default="false">
+ <xsd:attribute name="reliable" type="xsd:string" default="false">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to napoli protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="deprecated" type="xsd:string" use="optional">
+ <xsd:attribute name="deprecated" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method deprecated. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sticky" type="xsd:string" use="optional">
+ <xsd:attribute name="sticky" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Enable/Disable cluster sticky policy.Default false ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="return" type="xsd:string" use="optional">
+ <xsd:attribute name="return" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Method result is return. default is true.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="oninvoke" type="xsd:string" use="optional">
+ <xsd:attribute name="oninvoke" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Method invoke trigger.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onreturn" type="xsd:string" use="optional">
+ <xsd:attribute name="onreturn" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Method return trigger. return attribute must be true.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onthrow" type="xsd:string" use="optional">
+ <xsd:attribute name="onthrow" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Method on error trigger.return attribute must be true.]]></xsd:documentation>
@@ -674,17 +674,17 @@
</xsd:complexType>
<xsd:complexType name="argumentType">
- <xsd:attribute name="index" type="xsd:string" use="optional">
+ <xsd:attribute name="index" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument index. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="type" type="xsd:string" use="optional">
+ <xsd:attribute name="type" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="callback" type="xsd:string" use="optional">
+ <xsd:attribute name="callback" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument is callback. ]]></xsd:documentation>
</xsd:annotation>
@@ -698,32 +698,32 @@
<xsd:element ref="reference" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Transporter layer framework: netty mina.... ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Consumer threadpool: cached, fixed, limited, eager]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="corethreads" type="xsd:string" use="optional">
+ <xsd:attribute name="corethreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool core threads size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
@@ -750,22 +750,22 @@
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="url" type="xsd:string" use="optional">
+ <xsd:attribute name="url" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Provider list url. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Protocol transport client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="consumer" type="xsd:string" use="optional">
+ <xsd:attribute name="consumer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to reference-default. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service protocol. ]]></xsd:documentation>
</xsd:annotation>
@@ -784,163 +784,168 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="name" type="xsd:string" use="optional">
+ <xsd:attribute name="name" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol name. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="host" type="xsd:string" use="optional">
+ <xsd:attribute name="host" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service host. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="iothreads" type="xsd:string" use="optional">
+ <xsd:attribute name="corethreads" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[ The thread pool core threads size. ]]></xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="iothreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The IO thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accepts" type="xsd:string" use="optional">
+ <xsd:attribute name="accepts" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The accept connection size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="codec" type="xsd:string" use="optional">
+ <xsd:attribute name="codec" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol codec. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="serialization" type="xsd:string" use="optional">
+ <xsd:attribute name="serialization" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol serialization. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="keepalive" type="xsd:boolean" use="optional">
+ <xsd:attribute name="keepalive" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol keepAlive. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="optimizer" type="xsd:string" use="optional">
+ <xsd:attribute name="optimizer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The serialization optimizer. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="extension" type="xsd:string" use="optional">
+ <xsd:attribute name="extension" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The extension for protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="charset" type="xsd:string" use="optional">
+ <xsd:attribute name="charset" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol charset. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="payload" type="xsd:string" use="optional">
+ <xsd:attribute name="payload" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max payload. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="buffer" type="xsd:string" use="optional">
+ <xsd:attribute name="buffer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The buffer size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="heartbeat" type="xsd:string" use="optional">
+ <xsd:attribute name="heartbeat" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The heartbeat interval.(ms) ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accesslog" type="xsd:string" use="optional">
+ <xsd:attribute name="accesslog" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use accesslog. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="telnet" type="xsd:string" use="optional">
+ <xsd:attribute name="telnet" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use telnet commands. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="prompt" type="xsd:string" use="optional">
+ <xsd:attribute name="prompt" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol telnet prompt. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="status" type="xsd:string" use="optional">
+ <xsd:attribute name="status" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol check status. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="exchanger" type="xsd:string" use="optional">
+ <xsd:attribute name="exchanger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol exchanger type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispather" type="xsd:string" use="optional">
+ <xsd:attribute name="dispather" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. replace to "dispatcher". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispatcher" type="xsd:string" use="optional">
+ <xsd:attribute name="dispatcher" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol dispatcher type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="networker" type="xsd:string" use="optional">
+ <xsd:attribute name="networker" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol "networker" type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The protocol context path. replace to "contextpath". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="contextpath" type="xsd:string" use="optional">
+ <xsd:attribute name="contextpath" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol context path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol can be register to registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -955,128 +960,128 @@
<xsd:element ref="service" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:choice>
- <xsd:attribute name="host" type="xsd:string" use="optional">
+ <xsd:attribute name="host" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service host. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="iothreads" type="xsd:string" use="optional">
+ <xsd:attribute name="iothreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The IO thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accepts" type="xsd:string" use="optional">
+ <xsd:attribute name="accepts" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The accept connection size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="codec" type="xsd:string" use="optional">
+ <xsd:attribute name="codec" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol codec. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="charset" type="xsd:string" use="optional">
+ <xsd:attribute name="charset" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol charset. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="payload" type="xsd:string" use="optional">
+ <xsd:attribute name="payload" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max payload. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="buffer" type="xsd:string" use="optional">
+ <xsd:attribute name="buffer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The buffer size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="exchanger" type="xsd:string" use="optional">
+ <xsd:attribute name="exchanger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol exchanger type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispather" type="xsd:string" use="optional">
+ <xsd:attribute name="dispather" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. replace to "dispatcher". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispatcher" type="xsd:string" use="optional">
+ <xsd:attribute name="dispatcher" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol dispatcher type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="networker" type="xsd:string" use="optional">
+ <xsd:attribute name="networker" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol "networker" type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="telnet" type="xsd:string" use="optional">
+ <xsd:attribute name="telnet" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use telnet commands. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="prompt" type="xsd:string" use="optional">
+ <xsd:attribute name="prompt" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol telnet prompt. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="status" type="xsd:string" use="optional">
+ <xsd:attribute name="status" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol check status. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The protocol context path. replace to "contextpath". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="contextpath" type="xsd:string" use="optional">
+ <xsd:attribute name="contextpath" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol context path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="wait" type="xsd:string" use="optional">
+ <xsd:attribute name="wait" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The provider shutdown wait time. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -1105,28 +1110,28 @@
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:attribute name="ref" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service implementation instance bean id. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="class" type="xsd:string" use="optional">
+ <xsd:attribute name="class" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service implementation class name. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="provider" type="xsd:string" use="optional">
+ <xsd:attribute name="provider" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="generic" type="xsd:string" use="optional">
+ <xsd:attribute name="generic" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Generic service. ]]></xsd:documentation>
</xsd:annotation>
@@ -1142,7 +1147,7 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="package" type="xsd:string" use="optional">
+ <xsd:attribute name="package" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The scan package. ]]></xsd:documentation>
</xsd:annotation>
@@ -1288,4 +1293,4 @@
</xsd:annotation>
</xsd:element>
-</xsd:schema>
+</xsd:schema>
\ No newline at end of file
diff --git a/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/dubbo.xsd b/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/dubbo.xsd
index adaa936..ecf7d7b 100644
--- a/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/dubbo.xsd
+++ b/dubbo-config/dubbo-config-spring/src/main/resources/META-INF/dubbo.xsd
@@ -15,58 +15,58 @@
</xsd:annotation>
<xsd:complexType name="abstractMethodType">
- <xsd:attribute name="timeout" type="xsd:string" use="optional" default="0">
+ <xsd:attribute name="timeout" type="xsd:string" default="0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method invoke timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="retries" type="xsd:string" use="optional">
+ <xsd:attribute name="retries" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method retry times. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="actives" type="xsd:string" use="optional">
+ <xsd:attribute name="actives" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max active requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="connections" type="xsd:string" use="optional">
+ <xsd:attribute name="connections" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The exclusive connections. default share one connection. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="loadbalance" type="xsd:string" use="optional">
+ <xsd:attribute name="loadbalance" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method load balance. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="async" type="xsd:string" use="optional" default="false">
+ <xsd:attribute name="async" type="xsd:string" default="false">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method does async. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sent" type="xsd:string" use="optional">
+ <xsd:attribute name="sent" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The async method return await message sent ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="mock" type="xsd:string" use="optional">
+ <xsd:attribute name="mock" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service mock implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="merger" type="xsd:string" use="optional">
+ <xsd:attribute name="merger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The multi-group result merger ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="validation" type="xsd:string" use="optional">
+ <xsd:attribute name="validation" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service jsr303 validation, true/false. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cache" type="xsd:string" use="optional">
+ <xsd:attribute name="cache" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service cache, lru/threadlocal/jcache. ]]></xsd:documentation>
</xsd:annotation>
@@ -81,82 +81,82 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="local" type="xsd:string" use="optional">
+ <xsd:attribute name="local" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service local implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="stub" type="xsd:string" use="optional">
+ <xsd:attribute name="stub" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use service local implementation. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="proxy" type="xsd:string" use="optional">
+ <xsd:attribute name="proxy" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use proxy factory. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cluster" type="xsd:string" use="optional">
+ <xsd:attribute name="cluster" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Use cluster strategy. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="filter" type="xsd:string" use="optional">
+ <xsd:attribute name="filter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The filter. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="listener" type="xsd:string" use="optional">
+ <xsd:attribute name="listener" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The listener. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="owner" type="xsd:string" use="optional">
+ <xsd:attribute name="owner" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The owner. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="layer" type="xsd:string" use="optional">
+ <xsd:attribute name="layer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ layer info. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="application" type="xsd:string" use="optional">
+ <xsd:attribute name="application" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service application. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="module" type="xsd:string" use="optional">
+ <xsd:attribute name="module" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service module. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="callbacks" type="xsd:string" use="optional">
+ <xsd:attribute name="callbacks" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The callback instance limit peer connection.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="onconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service client connected. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="ondisconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="ondisconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service client disconnected. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="scope" type="xsd:string" use="optional">
+ <xsd:attribute name="scope" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Defines the service visibility, choise:[local remote]. default is remote, which can be invoked by network。 ]]></xsd:documentation>
@@ -169,49 +169,49 @@
<xsd:complexType name="abstractReferenceType">
<xsd:complexContent>
<xsd:extension base="abstractInterfaceType">
- <xsd:attribute name="version" type="xsd:string" use="optional" default="0.0.0">
+ <xsd:attribute name="version" type="xsd:string" default="0.0.0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="check" type="xsd:string" use="optional">
+ <xsd:attribute name="check" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Check dependency providers. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="init" type="xsd:string" use="optional">
+ <xsd:attribute name="init" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Eager init reference. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="generic" type="xsd:string" use="optional">
+ <xsd:attribute name="generic" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Generic service. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="injvm" type="xsd:string" use="optional">
+ <xsd:attribute name="injvm" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[Deprecated. Replace to set scope=local ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sticky" type="xsd:string" use="optional">
+ <xsd:attribute name="sticky" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Enable/Disable cluster sticky policy.Default false ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="reconnect" type="xsd:string" use="optional">
+ <xsd:attribute name="reconnect" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ remoting reconnect timer. false represent close reconnect. integer represent interval(ms) .default true(2000ms).]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="lazy" type="xsd:string" use="optional">
+ <xsd:attribute name="lazy" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ lazy create connection. ]]></xsd:documentation>
</xsd:annotation>
@@ -223,86 +223,86 @@
<xsd:complexType name="abstractServiceType">
<xsd:complexContent>
<xsd:extension base="abstractInterfaceType">
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service can be register to registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional" default="0.0.0">
+ <xsd:attribute name="version" type="xsd:string" default="0.0.0">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="deprecated" type="xsd:string" use="optional">
+ <xsd:attribute name="deprecated" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ whether the service is deprecated. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="delay" type="xsd:string" use="optional" default="0">
+ <xsd:attribute name="delay" type="xsd:string" default="0">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service export delay millisecond. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="export" type="xsd:string" use="optional">
+ <xsd:attribute name="export" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service is export. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="weight" type="xsd:string" use="optional">
+ <xsd:attribute name="weight" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service weight. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="document" type="xsd:string" use="optional">
+ <xsd:attribute name="document" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service document. ]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dynamic" type="xsd:string" use="optional">
+ <xsd:attribute name="dynamic" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ the service registered to the registry is dynamic(true) or static(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="token" type="xsd:string" use="optional">
+ <xsd:attribute name="token" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service use token. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accesslog" type="xsd:string" use="optional">
+ <xsd:attribute name="accesslog" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service use accesslog. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="executes" type="xsd:string" use="optional">
+ <xsd:attribute name="executes" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service allow execute requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="warmup" type="xsd:string" use="optional">
+ <xsd:attribute name="warmup" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The warmup time in Milliseconds. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="serialization" type="xsd:string" use="optional">
+ <xsd:attribute name="serialization" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The serialization protocol of service. ]]></xsd:documentation>
</xsd:annotation>
@@ -361,17 +361,17 @@
<xsd:documentation><![CDATA[ The application logger. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The application registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The application monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -404,17 +404,17 @@
<xsd:documentation><![CDATA[ The module organization. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="registry" type="xsd:string" use="optional">
+ <xsd:attribute name="registry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The module registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="monitor" type="xsd:string" use="optional">
+ <xsd:attribute name="monitor" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The module monitor. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -430,110 +430,110 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="address" type="xsd:string" use="optional">
+ <xsd:attribute name="address" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry address. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry default port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry lookup protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="username" type="xsd:string" use="optional">
+ <xsd:attribute name="username" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry username. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="password" type="xsd:string" use="optional">
+ <xsd:attribute name="password" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry password. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transport" type="xsd:string" use="optional">
+ <xsd:attribute name="transport" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="cluster" type="xsd:string" use="optional">
+ <xsd:attribute name="cluster" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry cluster type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional">
+ <xsd:attribute name="version" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="timeout" type="xsd:string" use="optional">
+ <xsd:attribute name="timeout" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The request timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="session" type="xsd:string" use="optional">
+ <xsd:attribute name="session" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The session timeout. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="file" type="xsd:string" use="optional">
+ <xsd:attribute name="file" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The registry adddress file store. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="wait" type="xsd:string" use="optional">
+ <xsd:attribute name="wait" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The wait time for shutdown. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="check" type="xsd:string" use="optional">
+ <xsd:attribute name="check" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Check registry status on stratup. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dynamic" type="xsd:string" use="optional">
+ <xsd:attribute name="dynamic" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ the service registered to this registry is dynamic(true) or static(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ register service to this registry(true) or not(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="subscribe" type="xsd:string" use="optional">
+ <xsd:attribute name="subscribe" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ subscribe service to this registry(true) or not(false). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -544,42 +544,42 @@
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
- <xsd:attribute name="address" type="xsd:string" use="optional">
+ <xsd:attribute name="address" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor address. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="username" type="xsd:string" use="optional">
+ <xsd:attribute name="username" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor username. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="password" type="xsd:string" use="optional">
+ <xsd:attribute name="password" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor password. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="group" type="xsd:string" use="optional">
+ <xsd:attribute name="group" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor group. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="version" type="xsd:string" use="optional">
+ <xsd:attribute name="version" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor version. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="interval" type="xsd:string" use="optional">
+ <xsd:attribute name="interval" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The monitor interval. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -597,7 +597,7 @@
<xsd:documentation><![CDATA[ The parameter value. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="hide" type="xsd:boolean" use="optional">
+ <xsd:attribute name="hide" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation><![CDATA[ Hide parameter. ]]></xsd:documentation>
</xsd:annotation>
@@ -616,54 +616,54 @@
<xsd:documentation><![CDATA[ The method name (method.toString()). ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="executes" type="xsd:string" use="optional">
+ <xsd:attribute name="executes" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max active requests. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="stat" type="xsd:string" use="optional" default="-1">
+ <xsd:attribute name="stat" type="xsd:string" default="-1">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method parameter index for statistics. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="retry" type="xsd:string" use="optional">
+ <xsd:attribute name="retry" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to retries. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="reliable" type="xsd:string" use="optional" default="false">
+ <xsd:attribute name="reliable" type="xsd:string" default="false">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to napoli protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="deprecated" type="xsd:string" use="optional">
+ <xsd:attribute name="deprecated" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The method deprecated. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="sticky" type="xsd:string" use="optional">
+ <xsd:attribute name="sticky" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Enable/Disable cluster sticky policy.Default false ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="return" type="xsd:string" use="optional">
+ <xsd:attribute name="return" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Method result is return. default is true.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="oninvoke" type="xsd:string" use="optional">
+ <xsd:attribute name="oninvoke" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Method invoke trigger.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onreturn" type="xsd:string" use="optional">
+ <xsd:attribute name="onreturn" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Method return trigger. return attribute must be true.]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="onthrow" type="xsd:string" use="optional">
+ <xsd:attribute name="onthrow" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ Method on error trigger.return attribute must be true.]]></xsd:documentation>
@@ -674,17 +674,17 @@
</xsd:complexType>
<xsd:complexType name="argumentType">
- <xsd:attribute name="index" type="xsd:string" use="optional">
+ <xsd:attribute name="index" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument index. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="type" type="xsd:string" use="optional">
+ <xsd:attribute name="type" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="callback" type="xsd:string" use="optional">
+ <xsd:attribute name="callback" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The argument is callback. ]]></xsd:documentation>
</xsd:annotation>
@@ -698,32 +698,32 @@
<xsd:element ref="reference" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Transporter layer framework: netty mina.... ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Consumer threadpool: cached, fixed, limited, eager]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="corethreads" type="xsd:string" use="optional">
+ <xsd:attribute name="corethreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool core threads size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
@@ -750,22 +750,22 @@
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="url" type="xsd:string" use="optional">
+ <xsd:attribute name="url" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Provider list url. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Protocol transport client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="consumer" type="xsd:string" use="optional">
+ <xsd:attribute name="consumer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to reference-default. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="protocol" type="xsd:string" use="optional">
+ <xsd:attribute name="protocol" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service protocol. ]]></xsd:documentation>
</xsd:annotation>
@@ -784,168 +784,168 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="name" type="xsd:string" use="optional">
+ <xsd:attribute name="name" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol name. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="host" type="xsd:string" use="optional">
+ <xsd:attribute name="host" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service host. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="corethreads" type="xsd:string" use="optional">
+ <xsd:attribute name="corethreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool core threads size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="iothreads" type="xsd:string" use="optional">
+ <xsd:attribute name="iothreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The IO thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accepts" type="xsd:string" use="optional">
+ <xsd:attribute name="accepts" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The accept connection size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="codec" type="xsd:string" use="optional">
+ <xsd:attribute name="codec" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol codec. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="serialization" type="xsd:string" use="optional">
+ <xsd:attribute name="serialization" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol serialization. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="keepalive" type="xsd:boolean" use="optional">
+ <xsd:attribute name="keepalive" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol keepAlive. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="optimizer" type="xsd:string" use="optional">
+ <xsd:attribute name="optimizer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The serialization optimizer. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="extension" type="xsd:string" use="optional">
+ <xsd:attribute name="extension" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The extension for protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="charset" type="xsd:string" use="optional">
+ <xsd:attribute name="charset" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol charset. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="payload" type="xsd:string" use="optional">
+ <xsd:attribute name="payload" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max payload. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="buffer" type="xsd:string" use="optional">
+ <xsd:attribute name="buffer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The buffer size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="heartbeat" type="xsd:string" use="optional">
+ <xsd:attribute name="heartbeat" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The heartbeat interval.(ms) ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accesslog" type="xsd:string" use="optional">
+ <xsd:attribute name="accesslog" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use accesslog. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="telnet" type="xsd:string" use="optional">
+ <xsd:attribute name="telnet" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use telnet commands. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="prompt" type="xsd:string" use="optional">
+ <xsd:attribute name="prompt" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol telnet prompt. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="status" type="xsd:string" use="optional">
+ <xsd:attribute name="status" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol check status. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="exchanger" type="xsd:string" use="optional">
+ <xsd:attribute name="exchanger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol exchanger type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispather" type="xsd:string" use="optional">
+ <xsd:attribute name="dispather" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. replace to "dispatcher". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispatcher" type="xsd:string" use="optional">
+ <xsd:attribute name="dispatcher" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol dispatcher type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="networker" type="xsd:string" use="optional">
+ <xsd:attribute name="networker" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol "networker" type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The protocol context path. replace to "contextpath". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="contextpath" type="xsd:string" use="optional">
+ <xsd:attribute name="contextpath" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol context path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="register" type="xsd:string" use="optional">
+ <xsd:attribute name="register" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol can be register to registry. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -960,128 +960,128 @@
<xsd:element ref="service" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</xsd:choice>
- <xsd:attribute name="host" type="xsd:string" use="optional">
+ <xsd:attribute name="host" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service host. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="port" type="xsd:string" use="optional">
+ <xsd:attribute name="port" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service port. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threadpool" type="xsd:string" use="optional">
+ <xsd:attribute name="threadpool" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="threads" type="xsd:string" use="optional">
+ <xsd:attribute name="threads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="iothreads" type="xsd:string" use="optional">
+ <xsd:attribute name="iothreads" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The IO thread pool size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="queues" type="xsd:string" use="optional">
+ <xsd:attribute name="queues" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The thread pool queue size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="accepts" type="xsd:string" use="optional">
+ <xsd:attribute name="accepts" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The accept connection size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="codec" type="xsd:string" use="optional">
+ <xsd:attribute name="codec" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol codec. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="charset" type="xsd:string" use="optional">
+ <xsd:attribute name="charset" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol charset. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="payload" type="xsd:string" use="optional">
+ <xsd:attribute name="payload" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The max payload. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="buffer" type="xsd:string" use="optional">
+ <xsd:attribute name="buffer" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The buffer size. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="transporter" type="xsd:string" use="optional">
+ <xsd:attribute name="transporter" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol transporter type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="exchanger" type="xsd:string" use="optional">
+ <xsd:attribute name="exchanger" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol exchanger type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispather" type="xsd:string" use="optional">
+ <xsd:attribute name="dispather" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. replace to "dispatcher". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="dispatcher" type="xsd:string" use="optional">
+ <xsd:attribute name="dispatcher" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol dispatcher type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="networker" type="xsd:string" use="optional">
+ <xsd:attribute name="networker" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol "networker" type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="server" type="xsd:string" use="optional">
+ <xsd:attribute name="server" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol server type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="client" type="xsd:string" use="optional">
+ <xsd:attribute name="client" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol client type. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="telnet" type="xsd:string" use="optional">
+ <xsd:attribute name="telnet" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol use telnet commands. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="prompt" type="xsd:string" use="optional">
+ <xsd:attribute name="prompt" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol telnet prompt. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="status" type="xsd:string" use="optional">
+ <xsd:attribute name="status" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol check status. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The protocol context path. replace to "contextpath". ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="contextpath" type="xsd:string" use="optional">
+ <xsd:attribute name="contextpath" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The protocol context path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="wait" type="xsd:string" use="optional">
+ <xsd:attribute name="wait" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The provider shutdown wait time. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="default" type="xsd:string" use="optional">
+ <xsd:attribute name="default" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Is default. ]]></xsd:documentation>
</xsd:annotation>
@@ -1110,28 +1110,28 @@
</xsd:appinfo>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="ref" type="xsd:string" use="optional">
+ <xsd:attribute name="ref" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
<![CDATA[ The service implementation instance bean id. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="class" type="xsd:string" use="optional">
+ <xsd:attribute name="class" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service implementation class name. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="path" type="xsd:string" use="optional">
+ <xsd:attribute name="path" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The service path. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="provider" type="xsd:string" use="optional">
+ <xsd:attribute name="provider" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Deprecated. Replace to protocol. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="generic" type="xsd:string" use="optional">
+ <xsd:attribute name="generic" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ Generic service. ]]></xsd:documentation>
</xsd:annotation>
@@ -1147,7 +1147,7 @@
<xsd:documentation><![CDATA[ The unique identifier for a bean. ]]></xsd:documentation>
</xsd:annotation>
</xsd:attribute>
- <xsd:attribute name="package" type="xsd:string" use="optional">
+ <xsd:attribute name="package" type="xsd:string">
<xsd:annotation>
<xsd:documentation><![CDATA[ The scan package. ]]></xsd:documentation>
</xsd:annotation>
diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/protocol/QosProtocolWrapper.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/protocol/QosProtocolWrapper.java
index 681f522..5c83ab0 100644
--- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/protocol/QosProtocolWrapper.java
+++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/protocol/QosProtocolWrapper.java
@@ -18,6 +18,9 @@ package org.apache.dubbo.qos.protocol;
import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
+import org.apache.dubbo.common.logger.Logger;
+import org.apache.dubbo.common.logger.LoggerFactory;
+import org.apache.dubbo.qos.common.QosConstants;
import org.apache.dubbo.qos.server.Server;
import org.apache.dubbo.rpc.Exporter;
import org.apache.dubbo.rpc.Invoker;
@@ -30,7 +33,11 @@ import static org.apache.dubbo.common.Constants.ACCEPT_FOREIGN_IP;
import static org.apache.dubbo.common.Constants.QOS_ENABLE;
import static org.apache.dubbo.common.Constants.QOS_PORT;
+
public class QosProtocolWrapper implements Protocol {
+
+ private final Logger logger = LoggerFactory.getLogger(QosProtocolWrapper.class);
+
private static AtomicBoolean hasStarted = new AtomicBoolean(false);
private Protocol protocol;
@@ -76,20 +83,23 @@ public class QosProtocolWrapper implements Protocol {
}
try {
- boolean qosEnable = Boolean.parseBoolean(url.getParameter(QOS_ENABLE,"true"));
+ boolean qosEnable = url.getParameter(QOS_ENABLE,true);
if (!qosEnable) {
+ logger.info("qos won't be started because it is disabled. " +
+ "Please check dubbo.application.qos.enable is configured either in system property, " +
+ "dubbo.properties or XML/spring-boot configuration.");
return;
}
- int port = Integer.parseInt(url.getParameter(QOS_PORT,"22222"));
- boolean acceptForeignIp = Boolean.parseBoolean(url.getParameter(ACCEPT_FOREIGN_IP,"true"));
+ int port = url.getParameter(QOS_PORT, QosConstants.DEFAULT_PORT);
+ boolean acceptForeignIp = Boolean.parseBoolean(url.getParameter(ACCEPT_FOREIGN_IP,"false"));
Server server = Server.getInstance();
server.setPort(port);
server.setAcceptForeignIp(acceptForeignIp);
server.start();
} catch (Throwable throwable) {
- //throw new RpcException("fail to start qos server", throwable);
+ logger.warn("Fail to start qos server: ", throwable);
}
}
diff --git a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/protocol/QosProtocolWrapperTest.java b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/protocol/QosProtocolWrapperTest.java
index 85851cc..1ac65d4 100644
--- a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/protocol/QosProtocolWrapperTest.java
+++ b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/protocol/QosProtocolWrapperTest.java
@@ -42,9 +42,9 @@ public class QosProtocolWrapperTest {
@Before
public void setUp() throws Exception {
- when(url.getParameter(Constants.QOS_ENABLE, "true")).thenReturn("true");
- when(url.getParameter(Constants.QOS_PORT, "22222")).thenReturn("12345");
- when(url.getParameter(Constants.ACCEPT_FOREIGN_IP, "true")).thenReturn("false");
+ when(url.getParameter(Constants.QOS_ENABLE, true)).thenReturn(true);
+ when(url.getParameter(Constants.QOS_PORT, 22222)).thenReturn(12345);
+ when(url.getParameter(Constants.ACCEPT_FOREIGN_IP, true)).thenReturn(false);
when(invoker.getUrl()).thenReturn(url);
when(url.getProtocol()).thenReturn(Constants.REGISTRY_PROTOCOL);
}
diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
index b1e4c3d..6374456 100644
--- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
+++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/RegistryProtocol.java
@@ -136,26 +136,26 @@ public class RegistryProtocol implements Protocol {
//registry provider
final Registry registry = getRegistry(originInvoker);
- final URL registedProviderUrl = getRegistedProviderUrl(originInvoker);
+ final URL registeredProviderUrl = getRegisteredProviderUrl(originInvoker);
//to judge to delay publish whether or not
- boolean register = registedProviderUrl.getParameter("register", true);
+ boolean register = registeredProviderUrl.getParameter("register", true);
- ProviderConsumerRegTable.registerProvider(originInvoker, registryUrl, registedProviderUrl);
+ ProviderConsumerRegTable.registerProvider(originInvoker, registryUrl, registeredProviderUrl);
if (register) {
- register(registryUrl, registedProviderUrl);
+ register(registryUrl, registeredProviderUrl);
ProviderConsumerRegTable.getProviderWrapper(originInvoker).setReg(true);
}
// Subscribe the override data
// FIXME When the provider subscribes, it will affect the scene : a certain JVM exposes the service and call the same service. Because the subscribed is cached key with the name of the service, it causes the subscription information to cover.
- final URL overrideSubscribeUrl = getSubscribedOverrideUrl(registedProviderUrl);
+ final URL overrideSubscribeUrl = getSubscribedOverrideUrl(registeredProviderUrl);
final OverrideListener overrideSubscribeListener = new OverrideListener(overrideSubscribeUrl, originInvoker);
overrideListeners.put(overrideSubscribeUrl, overrideSubscribeListener);
registry.subscribe(overrideSubscribeUrl, overrideSubscribeListener);
//Ensure that a new exporter instance is returned every time export
- return new DestroyableExporter<T>(exporter, originInvoker, overrideSubscribeUrl, registedProviderUrl);
+ return new DestroyableExporter<T>(exporter, originInvoker, overrideSubscribeUrl, registeredProviderUrl);
}
@SuppressWarnings("unchecked")
@@ -220,10 +220,10 @@ public class RegistryProtocol implements Protocol {
* @param originInvoker
* @return
*/
- private URL getRegistedProviderUrl(final Invoker<?> originInvoker) {
+ private URL getRegisteredProviderUrl(final Invoker<?> originInvoker) {
URL providerUrl = getProviderUrl(originInvoker);
//The address you see at the registry
- final URL registedProviderUrl = providerUrl.removeParameters(getFilteredKeys(providerUrl))
+ return providerUrl.removeParameters(getFilteredKeys(providerUrl))
.removeParameter(Constants.MONITOR_KEY)
.removeParameter(Constants.BIND_IP_KEY)
.removeParameter(Constants.BIND_PORT_KEY)
@@ -232,7 +232,6 @@ public class RegistryProtocol implements Protocol {
.removeParameter(ACCEPT_FOREIGN_IP)
.removeParameter(VALIDATION_KEY)
.removeParameter(INTERFACES);
- return registedProviderUrl;
}
private URL getSubscribedOverrideUrl(URL registedProviderUrl) {