├── .codecov.yml ├── .github ├── ISSUE_TEMPLATE │ └── dubbo-issue-report-template.md └── workflows │ └── build-and-test.yml ├── .gitignore ├── .mvn └── wrapper │ ├── maven-wrapper.jar │ └── maven-wrapper.properties ├── .travis.yml ├── CHANGES.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Jenkinsfile ├── LICENSE ├── NOTICE ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── SECURITY.md ├── codestyle ├── checkstyle-suppressions.xml ├── checkstyle.xml ├── dubbo_codestyle_for_idea.xml └── manage_profiles.png ├── compiler ├── pom.xml └── src │ └── main │ ├── java │ └── org │ │ └── apache │ │ └── dubbo │ │ └── gen │ │ ├── AbstractGenerator.java │ │ ├── dubbo │ │ └── DubboGenerator.java │ │ └── grpc │ │ ├── DubboGrpcGenerator.java │ │ └── reactive │ │ ├── ReactorDubboGrpcGenerator.java │ │ └── RxDubboGrpcGenerator.java │ └── resources │ ├── DubboGrpcStub.mustache │ ├── DubboStub.mustache │ ├── ReactorDubboGrpcStub.mustache │ └── RxDubboGrpcStub.mustache ├── dubbo-all └── pom.xml ├── dubbo-bom └── pom.xml ├── dubbo-build-tools ├── pom.xml └── src │ └── main │ └── resources │ └── checkstyle-header.txt ├── dubbo-cluster ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ └── cluster │ │ │ ├── CacheableRouterFactory.java │ │ │ ├── Cluster.java │ │ │ ├── ClusterInvoker.java │ │ │ ├── Configurator.java │ │ │ ├── ConfiguratorFactory.java │ │ │ ├── Constants.java │ │ │ ├── Directory.java │ │ │ ├── LoadBalance.java │ │ │ ├── Merger.java │ │ │ ├── Router.java │ │ │ ├── RouterChain.java │ │ │ ├── RouterFactory.java │ │ │ ├── RuleConverter.java │ │ │ ├── configurator │ │ │ ├── AbstractConfigurator.java │ │ │ ├── absent │ │ │ │ ├── AbsentConfigurator.java │ │ │ │ └── AbsentConfiguratorFactory.java │ │ │ ├── override │ │ │ │ ├── OverrideConfigurator.java │ │ │ │ └── OverrideConfiguratorFactory.java │ │ │ └── parser │ │ │ │ ├── ConfigParser.java │ │ │ │ └── model │ │ │ │ ├── ConfigItem.java │ │ │ │ └── ConfiguratorConfig.java │ │ │ ├── directory │ │ │ ├── AbstractDirectory.java │ │ │ └── StaticDirectory.java │ │ │ ├── governance │ │ │ ├── DefaultGovernanceRuleRepositoryImpl.java │ │ │ └── GovernanceRuleRepository.java │ │ │ ├── interceptor │ │ │ ├── ClusterInterceptor.java │ │ │ ├── ConsumerContextClusterInterceptor.java │ │ │ └── ZoneAwareClusterInterceptor.java │ │ │ ├── loadbalance │ │ │ ├── AbstractLoadBalance.java │ │ │ ├── ConsistentHashLoadBalance.java │ │ │ ├── LeastActiveLoadBalance.java │ │ │ ├── RandomLoadBalance.java │ │ │ ├── RoundRobinLoadBalance.java │ │ │ └── ShortestResponseLoadBalance.java │ │ │ ├── merger │ │ │ ├── ArrayMerger.java │ │ │ ├── BooleanArrayMerger.java │ │ │ ├── ByteArrayMerger.java │ │ │ ├── CharArrayMerger.java │ │ │ ├── DoubleArrayMerger.java │ │ │ ├── FloatArrayMerger.java │ │ │ ├── IntArrayMerger.java │ │ │ ├── ListMerger.java │ │ │ ├── LongArrayMerger.java │ │ │ ├── MapMerger.java │ │ │ ├── MergerFactory.java │ │ │ ├── SetMerger.java │ │ │ └── ShortArrayMerger.java │ │ │ ├── router │ │ │ ├── AbstractRouter.java │ │ │ ├── AbstractRouterRule.java │ │ │ ├── condition │ │ │ │ ├── ConditionRouter.java │ │ │ │ ├── ConditionRouterFactory.java │ │ │ │ └── config │ │ │ │ │ ├── AppRouter.java │ │ │ │ │ ├── AppRouterFactory.java │ │ │ │ │ ├── ListenableRouter.java │ │ │ │ │ ├── ServiceRouter.java │ │ │ │ │ ├── ServiceRouterFactory.java │ │ │ │ │ └── model │ │ │ │ │ ├── ConditionRouterRule.java │ │ │ │ │ └── ConditionRuleParser.java │ │ │ ├── file │ │ │ │ └── FileRouterFactory.java │ │ │ ├── mock │ │ │ │ ├── MockInvokersSelector.java │ │ │ │ └── MockRouterFactory.java │ │ │ ├── script │ │ │ │ ├── ScriptRouter.java │ │ │ │ └── ScriptRouterFactory.java │ │ │ └── tag │ │ │ │ ├── TagRouter.java │ │ │ │ ├── TagRouterFactory.java │ │ │ │ └── model │ │ │ │ ├── Tag.java │ │ │ │ ├── TagRouterRule.java │ │ │ │ └── TagRuleParser.java │ │ │ └── support │ │ │ ├── AbstractClusterInvoker.java │ │ │ ├── AvailableCluster.java │ │ │ ├── AvailableClusterInvoker.java │ │ │ ├── BroadcastCluster.java │ │ │ ├── BroadcastClusterInvoker.java │ │ │ ├── ClusterUtils.java │ │ │ ├── FailbackCluster.java │ │ │ ├── FailbackClusterInvoker.java │ │ │ ├── FailfastCluster.java │ │ │ ├── FailfastClusterInvoker.java │ │ │ ├── FailoverCluster.java │ │ │ ├── FailoverClusterInvoker.java │ │ │ ├── FailsafeCluster.java │ │ │ ├── FailsafeClusterInvoker.java │ │ │ ├── ForkingCluster.java │ │ │ ├── ForkingClusterInvoker.java │ │ │ ├── MergeableCluster.java │ │ │ ├── MergeableClusterInvoker.java │ │ │ ├── ProviderURLMergeProcessor.java │ │ │ ├── migration │ │ │ ├── MigrationClusterComparator.java │ │ │ ├── MigrationClusterInvoker.java │ │ │ ├── MigrationRule.java │ │ │ └── MigrationStep.java │ │ │ ├── registry │ │ │ ├── ZoneAwareCluster.java │ │ │ └── ZoneAwareClusterInvoker.java │ │ │ └── wrapper │ │ │ ├── AbstractCluster.java │ │ │ ├── MockClusterInvoker.java │ │ │ └── MockClusterWrapper.java │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ ├── org.apache.dubbo.rpc.cluster.Cluster │ │ ├── org.apache.dubbo.rpc.cluster.ConfiguratorFactory │ │ ├── org.apache.dubbo.rpc.cluster.LoadBalance │ │ ├── org.apache.dubbo.rpc.cluster.Merger │ │ ├── org.apache.dubbo.rpc.cluster.RouterFactory │ │ ├── org.apache.dubbo.rpc.cluster.governance.GovernanceRuleRepository │ │ └── org.apache.dubbo.rpc.cluster.interceptor.ClusterInterceptor │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── cluster │ │ ├── StickyTest.java │ │ ├── configurator │ │ ├── absent │ │ │ └── AbsentConfiguratorTest.java │ │ ├── consts │ │ │ └── UrlConstant.java │ │ ├── override │ │ │ └── OverrideConfiguratorTest.java │ │ └── parser │ │ │ └── ConfigParserTest.java │ │ ├── directory │ │ ├── MockDirInvocation.java │ │ └── StaticDirectoryTest.java │ │ ├── filter │ │ ├── DemoService.java │ │ ├── DemoServiceLocal.java │ │ ├── DemoServiceMock.java │ │ ├── DemoServiceStub.java │ │ └── MockService.java │ │ ├── loadbalance │ │ ├── AbstractLoadBalanceTest.java │ │ ├── ConsistentHashLoadBalanceTest.java │ │ ├── LeastActiveBalanceTest.java │ │ ├── LoadBalanceBaseTest.java │ │ ├── RandomLoadBalanceTest.java │ │ ├── RoundRobinLoadBalanceTest.java │ │ └── ShortestResponseLoadBalanceTest.java │ │ ├── merger │ │ └── ResultMergerTest.java │ │ ├── router │ │ ├── ConfigConditionRouterTest.java │ │ ├── MockInvoker.java │ │ ├── TagRouterTest.java │ │ ├── condition │ │ │ └── ConditionRouterTest.java │ │ ├── file │ │ │ └── FileRouterEngineTest.java │ │ └── script │ │ │ └── ScriptRouterTest.java │ │ └── support │ │ ├── AbstractClusterInvokerTest.java │ │ ├── ClusterUtilsTest.java │ │ ├── FailSafeClusterInvokerTest.java │ │ ├── FailbackClusterInvokerTest.java │ │ ├── FailfastClusterInvokerTest.java │ │ ├── FailoverClusterInvokerTest.java │ │ ├── ForkingClusterInvokerTest.java │ │ ├── Menu.java │ │ ├── MenuService.java │ │ ├── MergeableClusterInvokerTest.java │ │ ├── migration │ │ └── MigrationRuleTest.java │ │ └── wrapper │ │ ├── MockClusterInvokerTest.java │ │ ├── MockProviderRpcExceptionTest.java │ │ └── MyMockException.java │ └── resources │ ├── AppAnyServices.yml │ ├── AppMultiServices.yml │ ├── AppNoService.yml │ ├── ConditionRule.yml │ ├── ConsumerSpecificProviders.yml │ ├── ServiceGroupVersion.yml │ ├── ServiceMultiApps.yml │ ├── ServiceNoApp.yml │ ├── ServiceNoRule.yml │ ├── TagRule.yml │ ├── log4j.xml │ └── org │ └── apache │ └── dubbo │ └── rpc │ └── cluster │ └── router │ └── file │ ├── availablerule.javascript │ ├── methodrule.javascript │ └── notAvailablerule.javascript ├── dubbo-common ├── pom.xml └── src │ ├── main │ ├── java │ │ ├── com │ │ │ └── alibaba │ │ │ │ └── dubbo │ │ │ │ ├── common │ │ │ │ └── extension │ │ │ │ │ └── Activate.java │ │ │ │ └── config │ │ │ │ └── annotation │ │ │ │ ├── Reference.java │ │ │ │ └── Service.java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ ├── common │ │ │ ├── BaseServiceMetadata.java │ │ │ ├── ConfigurationURL.java │ │ │ ├── Experimental.java │ │ │ ├── Extension.java │ │ │ ├── Node.java │ │ │ ├── Parameters.java │ │ │ ├── Resetable.java │ │ │ ├── URL.java │ │ │ ├── URLBuilder.java │ │ │ ├── URLStrParser.java │ │ │ ├── Version.java │ │ │ ├── beanutil │ │ │ │ ├── JavaBeanAccessor.java │ │ │ │ ├── JavaBeanDescriptor.java │ │ │ │ └── JavaBeanSerializeUtil.java │ │ │ ├── bytecode │ │ │ │ ├── ClassGenerator.java │ │ │ │ ├── CustomizedLoaderClassPath.java │ │ │ │ ├── Mixin.java │ │ │ │ ├── NoSuchMethodException.java │ │ │ │ ├── NoSuchPropertyException.java │ │ │ │ ├── Proxy.java │ │ │ │ └── Wrapper.java │ │ │ ├── compiler │ │ │ │ ├── Compiler.java │ │ │ │ └── support │ │ │ │ │ ├── AbstractCompiler.java │ │ │ │ │ ├── AdaptiveCompiler.java │ │ │ │ │ ├── ClassUtils.java │ │ │ │ │ ├── CtClassBuilder.java │ │ │ │ │ ├── JavassistCompiler.java │ │ │ │ │ └── JdkCompiler.java │ │ │ ├── config │ │ │ │ ├── CompositeConfiguration.java │ │ │ │ ├── Configuration.java │ │ │ │ ├── ConfigurationUtils.java │ │ │ │ ├── Environment.java │ │ │ │ ├── EnvironmentConfiguration.java │ │ │ │ ├── InmemoryConfiguration.java │ │ │ │ ├── OrderedPropertiesProvider.java │ │ │ │ ├── PropertiesConfiguration.java │ │ │ │ ├── SystemConfiguration.java │ │ │ │ └── configcenter │ │ │ │ │ ├── AbstractDynamicConfiguration.java │ │ │ │ │ ├── AbstractDynamicConfigurationFactory.java │ │ │ │ │ ├── ConfigChangeType.java │ │ │ │ │ ├── ConfigChangedEvent.java │ │ │ │ │ ├── ConfigurationListener.java │ │ │ │ │ ├── Constants.java │ │ │ │ │ ├── DynamicConfiguration.java │ │ │ │ │ ├── DynamicConfigurationFactory.java │ │ │ │ │ ├── TreePathDynamicConfiguration.java │ │ │ │ │ ├── file │ │ │ │ │ ├── FileSystemDynamicConfiguration.java │ │ │ │ │ └── FileSystemDynamicConfigurationFactory.java │ │ │ │ │ ├── nop │ │ │ │ │ ├── NopDynamicConfiguration.java │ │ │ │ │ └── NopDynamicConfigurationFactory.java │ │ │ │ │ └── wrapper │ │ │ │ │ └── CompositeDynamicConfiguration.java │ │ │ ├── constants │ │ │ │ ├── CommonConstants.java │ │ │ │ ├── FilterConstants.java │ │ │ │ ├── QosConstants.java │ │ │ │ ├── RegistryConstants.java │ │ │ │ └── RemotingConstants.java │ │ │ ├── context │ │ │ │ ├── FrameworkExt.java │ │ │ │ ├── Lifecycle.java │ │ │ │ └── LifecycleAdapter.java │ │ │ ├── convert │ │ │ │ ├── Converter.java │ │ │ │ ├── StringConverter.java │ │ │ │ ├── StringToBooleanConverter.java │ │ │ │ ├── StringToCharArrayConverter.java │ │ │ │ ├── StringToCharacterConverter.java │ │ │ │ ├── StringToDoubleConverter.java │ │ │ │ ├── StringToFloatConverter.java │ │ │ │ ├── StringToIntegerConverter.java │ │ │ │ ├── StringToLongConverter.java │ │ │ │ ├── StringToOptionalConverter.java │ │ │ │ ├── StringToShortConverter.java │ │ │ │ ├── StringToStringConverter.java │ │ │ │ └── multiple │ │ │ │ │ ├── MultiValueConverter.java │ │ │ │ │ ├── StringToArrayConverter.java │ │ │ │ │ ├── StringToBlockingDequeConverter.java │ │ │ │ │ ├── StringToBlockingQueueConverter.java │ │ │ │ │ ├── StringToCollectionConverter.java │ │ │ │ │ ├── StringToDequeConverter.java │ │ │ │ │ ├── StringToIterableConverter.java │ │ │ │ │ ├── StringToListConverter.java │ │ │ │ │ ├── StringToMultiValueConverter.java │ │ │ │ │ ├── StringToNavigableSetConverter.java │ │ │ │ │ ├── StringToQueueConverter.java │ │ │ │ │ ├── StringToSetConverter.java │ │ │ │ │ ├── StringToSortedSetConverter.java │ │ │ │ │ └── StringToTransferQueueConverter.java │ │ │ ├── extension │ │ │ │ ├── Activate.java │ │ │ │ ├── Adaptive.java │ │ │ │ ├── AdaptiveClassCodeGenerator.java │ │ │ │ ├── DisableInject.java │ │ │ │ ├── DubboInternalLoadingStrategy.java │ │ │ │ ├── DubboLoadingStrategy.java │ │ │ │ ├── ExtensionFactory.java │ │ │ │ ├── ExtensionLoader.java │ │ │ │ ├── LoadingStrategy.java │ │ │ │ ├── SPI.java │ │ │ │ ├── ServicesLoadingStrategy.java │ │ │ │ ├── Wrapper.java │ │ │ │ ├── factory │ │ │ │ │ ├── AdaptiveExtensionFactory.java │ │ │ │ │ └── SpiExtensionFactory.java │ │ │ │ └── support │ │ │ │ │ ├── ActivateComparator.java │ │ │ │ │ └── WrapperComparator.java │ │ │ ├── function │ │ │ │ ├── Predicates.java │ │ │ │ ├── Streams.java │ │ │ │ ├── ThrowableAction.java │ │ │ │ ├── ThrowableConsumer.java │ │ │ │ └── ThrowableFunction.java │ │ │ ├── infra │ │ │ │ ├── InfraAdapter.java │ │ │ │ └── support │ │ │ │ │ ├── CmdbAdapter.java │ │ │ │ │ └── EnvironmentAdapter.java │ │ │ ├── io │ │ │ │ ├── Bytes.java │ │ │ │ ├── StreamUtils.java │ │ │ │ ├── UnsafeByteArrayInputStream.java │ │ │ │ ├── UnsafeByteArrayOutputStream.java │ │ │ │ ├── UnsafeStringReader.java │ │ │ │ └── UnsafeStringWriter.java │ │ │ ├── json │ │ │ │ ├── GenericJSONConverter.java │ │ │ │ ├── J2oVisitor.java │ │ │ │ ├── JSON.java │ │ │ │ ├── JSONArray.java │ │ │ │ ├── JSONConverter.java │ │ │ │ ├── JSONNode.java │ │ │ │ ├── JSONObject.java │ │ │ │ ├── JSONReader.java │ │ │ │ ├── JSONToken.java │ │ │ │ ├── JSONVisitor.java │ │ │ │ ├── JSONWriter.java │ │ │ │ ├── ParseException.java │ │ │ │ └── Yylex.java │ │ │ ├── lang │ │ │ │ ├── Prioritized.java │ │ │ │ ├── ShutdownHookCallback.java │ │ │ │ └── ShutdownHookCallbacks.java │ │ │ ├── logger │ │ │ │ ├── Level.java │ │ │ │ ├── Logger.java │ │ │ │ ├── LoggerAdapter.java │ │ │ │ ├── LoggerFactory.java │ │ │ │ ├── jcl │ │ │ │ │ ├── JclLogger.java │ │ │ │ │ └── JclLoggerAdapter.java │ │ │ │ ├── jdk │ │ │ │ │ ├── JdkLogger.java │ │ │ │ │ └── JdkLoggerAdapter.java │ │ │ │ ├── log4j │ │ │ │ │ ├── Log4jLogger.java │ │ │ │ │ └── Log4jLoggerAdapter.java │ │ │ │ ├── log4j2 │ │ │ │ │ ├── Log4j2Logger.java │ │ │ │ │ └── Log4j2LoggerAdapter.java │ │ │ │ ├── slf4j │ │ │ │ │ ├── Slf4jLogger.java │ │ │ │ │ └── Slf4jLoggerAdapter.java │ │ │ │ └── support │ │ │ │ │ └── FailsafeLogger.java │ │ │ ├── status │ │ │ │ ├── Status.java │ │ │ │ ├── StatusChecker.java │ │ │ │ └── support │ │ │ │ │ ├── LoadStatusChecker.java │ │ │ │ │ ├── MemoryStatusChecker.java │ │ │ │ │ └── StatusUtils.java │ │ │ ├── store │ │ │ │ ├── DataStore.java │ │ │ │ └── support │ │ │ │ │ └── SimpleDataStore.java │ │ │ ├── threadlocal │ │ │ │ ├── InternalThread.java │ │ │ │ ├── InternalThreadLocal.java │ │ │ │ ├── InternalThreadLocalMap.java │ │ │ │ └── NamedInternalThreadFactory.java │ │ │ ├── threadpool │ │ │ │ ├── ThreadPool.java │ │ │ │ ├── ThreadlessExecutor.java │ │ │ │ ├── concurrent │ │ │ │ │ └── ScheduledCompletableFuture.java │ │ │ │ ├── event │ │ │ │ │ └── ThreadPoolExhaustedEvent.java │ │ │ │ ├── manager │ │ │ │ │ ├── DefaultExecutorRepository.java │ │ │ │ │ ├── ExecutorRepository.java │ │ │ │ │ └── Ring.java │ │ │ │ └── support │ │ │ │ │ ├── AbortPolicyWithReport.java │ │ │ │ │ ├── cached │ │ │ │ │ └── CachedThreadPool.java │ │ │ │ │ ├── eager │ │ │ │ │ ├── EagerThreadPool.java │ │ │ │ │ ├── EagerThreadPoolExecutor.java │ │ │ │ │ └── TaskQueue.java │ │ │ │ │ ├── fixed │ │ │ │ │ └── FixedThreadPool.java │ │ │ │ │ └── limited │ │ │ │ │ └── LimitedThreadPool.java │ │ │ ├── timer │ │ │ │ ├── HashedWheelTimer.java │ │ │ │ ├── Timeout.java │ │ │ │ ├── Timer.java │ │ │ │ └── TimerTask.java │ │ │ └── utils │ │ │ │ ├── AnnotationUtils.java │ │ │ │ ├── ArrayUtils.java │ │ │ │ ├── Assert.java │ │ │ │ ├── AtomicPositiveInteger.java │ │ │ │ ├── CIDRUtils.java │ │ │ │ ├── CharSequenceComparator.java │ │ │ │ ├── ClassHelper.java │ │ │ │ ├── ClassUtils.java │ │ │ │ ├── CollectionUtils.java │ │ │ │ ├── CompatibleTypeUtils.java │ │ │ │ ├── ConcurrentHashSet.java │ │ │ │ ├── ConfigUtils.java │ │ │ │ ├── DefaultPage.java │ │ │ │ ├── DubboAppender.java │ │ │ │ ├── ExecutorUtil.java │ │ │ │ ├── FieldUtils.java │ │ │ │ ├── Holder.java │ │ │ │ ├── IOUtils.java │ │ │ │ ├── JVMUtil.java │ │ │ │ ├── LFUCache.java │ │ │ │ ├── LRUCache.java │ │ │ │ ├── Log.java │ │ │ │ ├── LogHelper.java │ │ │ │ ├── LogUtil.java │ │ │ │ ├── MemberUtils.java │ │ │ │ ├── MethodComparator.java │ │ │ │ ├── MethodUtils.java │ │ │ │ ├── NamedThreadFactory.java │ │ │ │ ├── NetUtils.java │ │ │ │ ├── Page.java │ │ │ │ ├── PathUtils.java │ │ │ │ ├── PojoUtils.java │ │ │ │ ├── ReflectUtils.java │ │ │ │ ├── ServiceAnnotationResolver.java │ │ │ │ ├── Stack.java │ │ │ │ ├── StringConstantFieldValuePredicate.java │ │ │ │ ├── StringUtils.java │ │ │ │ ├── TypeUtils.java │ │ │ │ ├── UrlUtils.java │ │ │ │ └── Utf8Utils.java │ │ │ ├── config │ │ │ ├── AbstractConfig.java │ │ │ ├── AbstractInterfaceConfig.java │ │ │ ├── AbstractMethodConfig.java │ │ │ ├── AbstractReferenceConfig.java │ │ │ ├── AbstractServiceConfig.java │ │ │ ├── ApplicationConfig.java │ │ │ ├── ArgumentConfig.java │ │ │ ├── ConfigCenterConfig.java │ │ │ ├── Constants.java │ │ │ ├── ConsumerConfig.java │ │ │ ├── MetadataReportConfig.java │ │ │ ├── MethodConfig.java │ │ │ ├── MetricsConfig.java │ │ │ ├── ModuleConfig.java │ │ │ ├── MonitorConfig.java │ │ │ ├── ProtocolConfig.java │ │ │ ├── ProviderConfig.java │ │ │ ├── ReferenceConfigBase.java │ │ │ ├── RegistryConfig.java │ │ │ ├── ServiceConfigBase.java │ │ │ ├── SslConfig.java │ │ │ ├── annotation │ │ │ │ ├── Argument.java │ │ │ │ ├── DubboReference.java │ │ │ │ ├── DubboService.java │ │ │ │ ├── Method.java │ │ │ │ ├── Reference.java │ │ │ │ └── Service.java │ │ │ ├── context │ │ │ │ ├── ConfigConfigurationAdapter.java │ │ │ │ └── ConfigManager.java │ │ │ └── support │ │ │ │ └── Parameter.java │ │ │ ├── event │ │ │ ├── AbstractEventDispatcher.java │ │ │ ├── ConditionalEventListener.java │ │ │ ├── DirectEventDispatcher.java │ │ │ ├── Event.java │ │ │ ├── EventDispatcher.java │ │ │ ├── EventListener.java │ │ │ ├── GenericEvent.java │ │ │ ├── GenericEventListener.java │ │ │ ├── Listenable.java │ │ │ └── ParallelEventDispatcher.java │ │ │ └── rpc │ │ │ ├── model │ │ │ ├── ApplicationInitListener.java │ │ │ ├── ApplicationModel.java │ │ │ ├── AsyncMethodInfo.java │ │ │ ├── BuiltinServiceDetector.java │ │ │ ├── ConsumerMethodModel.java │ │ │ ├── ConsumerModel.java │ │ │ ├── MethodDescriptor.java │ │ │ ├── ProviderMethodModel.java │ │ │ ├── ProviderModel.java │ │ │ ├── ServiceDescriptor.java │ │ │ ├── ServiceMetadata.java │ │ │ └── ServiceRepository.java │ │ │ ├── service │ │ │ ├── Destroyable.java │ │ │ ├── EchoService.java │ │ │ ├── EchoServiceDetector.java │ │ │ ├── GenericException.java │ │ │ ├── GenericService.java │ │ │ └── GenericServiceDetector.java │ │ │ └── support │ │ │ ├── GroupServiceKeyCache.java │ │ │ └── ProtocolUtils.java │ └── resources │ │ └── META-INF │ │ ├── dubbo │ │ └── internal │ │ │ ├── org.apache.dubbo.common.compiler.Compiler │ │ │ ├── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ │ ├── org.apache.dubbo.common.context.FrameworkExt │ │ │ ├── org.apache.dubbo.common.convert.Converter │ │ │ ├── org.apache.dubbo.common.convert.multiple.MultiValueConverter │ │ │ ├── org.apache.dubbo.common.extension.ExtensionFactory │ │ │ ├── org.apache.dubbo.common.infra.InfraAdapter │ │ │ ├── org.apache.dubbo.common.logger.LoggerAdapter │ │ │ ├── org.apache.dubbo.common.status.StatusChecker │ │ │ ├── org.apache.dubbo.common.store.DataStore │ │ │ ├── org.apache.dubbo.common.threadpool.ThreadPool │ │ │ ├── org.apache.dubbo.common.threadpool.manager.ExecutorRepository │ │ │ ├── org.apache.dubbo.event.EventDispatcher │ │ │ └── org.apache.dubbo.rpc.model.BuiltinServiceDetector │ │ └── services │ │ └── org.apache.dubbo.common.extension.LoadingStrategy │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── dubbo │ │ ├── common │ │ ├── BaseServiceMetadataTest.java │ │ ├── URLBuilderTest.java │ │ ├── URLStrParserTest.java │ │ ├── URLTest.java │ │ ├── beanutil │ │ │ ├── Bean.java │ │ │ ├── JavaBeanAccessorTest.java │ │ │ └── JavaBeanSerializeUtilTest.java │ │ ├── bytecode │ │ │ ├── ClassGeneratorTest.java │ │ │ ├── MixinTest.java │ │ │ ├── ProxyTest.java │ │ │ └── WrapperTest.java │ │ ├── compiler │ │ │ └── support │ │ │ │ ├── AdaptiveCompilerTest.java │ │ │ │ ├── ClassUtilsTest.java │ │ │ │ ├── HelloService.java │ │ │ │ ├── HelloServiceImpl0.java │ │ │ │ ├── JavaCodeTest.java │ │ │ │ ├── JavassistCompilerTest.java │ │ │ │ ├── JdkCompilerTest.java │ │ │ │ └── internal │ │ │ │ └── HelloServiceInternalImpl.java │ │ ├── concurrent │ │ │ └── CompletableFutureTaskTest.java │ │ ├── config │ │ │ ├── CompositeConfigurationTest.java │ │ │ ├── ConfigurationUtilsTest.java │ │ │ ├── EnvironmentConfigurationTest.java │ │ │ ├── EnvironmentTest.java │ │ │ ├── InmemoryConfigurationTest.java │ │ │ ├── MockOrderedPropertiesProvider1.java │ │ │ ├── MockOrderedPropertiesProvider2.java │ │ │ ├── PropertiesConfigurationTest.java │ │ │ ├── SystemConfigurationTest.java │ │ │ └── configcenter │ │ │ │ ├── AbstractDynamicConfigurationFactoryTest.java │ │ │ │ ├── AbstractDynamicConfigurationTest.java │ │ │ │ ├── ConfigChangeTypeTest.java │ │ │ │ ├── ConfigChangedEventTest.java │ │ │ │ ├── DynamicConfigurationFactoryTest.java │ │ │ │ └── file │ │ │ │ ├── FileSystemDynamicConfigurationFactoryTest.java │ │ │ │ └── FileSystemDynamicConfigurationTest.java │ │ ├── constants │ │ │ └── CommonConstantsTest.java │ │ ├── convert │ │ │ ├── ConverterTest.java │ │ │ ├── StringToBooleanConverterTest.java │ │ │ ├── StringToCharArrayConverterTest.java │ │ │ ├── StringToCharacterConverterTest.java │ │ │ ├── StringToDoubleConverterTest.java │ │ │ ├── StringToFloatConverterTest.java │ │ │ ├── StringToIntegerConverterTest.java │ │ │ ├── StringToLongConverterTest.java │ │ │ ├── StringToOptionalConverterTest.java │ │ │ ├── StringToShortConverterTest.java │ │ │ ├── StringToStringConverterTest.java │ │ │ └── multiple │ │ │ │ ├── MultiValueConverterTest.java │ │ │ │ ├── StringToArrayConverterTest.java │ │ │ │ ├── StringToBlockingDequeConverterTest.java │ │ │ │ ├── StringToBlockingQueueConverterTest.java │ │ │ │ ├── StringToCollectionConverterTest.java │ │ │ │ ├── StringToDequeConverterTest.java │ │ │ │ ├── StringToListConverterTest.java │ │ │ │ ├── StringToNavigableSetConverterTest.java │ │ │ │ ├── StringToQueueConverterTest.java │ │ │ │ ├── StringToSetConverterTest.java │ │ │ │ ├── StringToSortedSetConverterTest.java │ │ │ │ └── StringToTransferQueueConverterTest.java │ │ ├── extension │ │ │ ├── AdaptiveClassCodeGeneratorTest.java │ │ │ ├── DubboExternalLoadingStrategy.java │ │ │ ├── ExtensionLoaderTest.java │ │ │ ├── ExtensionLoader_Adaptive_Test.java │ │ │ ├── ExtensionLoader_Adaptive_UseJdkCompiler_Test.java │ │ │ ├── ExtensionLoader_Compatible_Test.java │ │ │ ├── NoSpiExt.java │ │ │ ├── activate │ │ │ │ ├── ActivateExt1.java │ │ │ │ └── impl │ │ │ │ │ ├── ActivateExt1Impl1.java │ │ │ │ │ ├── GroupActivateExtImpl.java │ │ │ │ │ ├── OldActivateExt1Impl2.java │ │ │ │ │ ├── OldActivateExt1Impl3.java │ │ │ │ │ ├── OrderActivateExtImpl1.java │ │ │ │ │ ├── OrderActivateExtImpl2.java │ │ │ │ │ └── ValueActivateExtImpl.java │ │ │ ├── adaptive │ │ │ │ ├── HasAdaptiveExt.java │ │ │ │ └── impl │ │ │ │ │ ├── HasAdaptiveExtImpl1.java │ │ │ │ │ └── HasAdaptiveExt_ManualAdaptive.java │ │ │ ├── compatible │ │ │ │ ├── CompatibleExt.java │ │ │ │ └── impl │ │ │ │ │ ├── CompatibleExtImpl1.java │ │ │ │ │ └── CompatibleExtImpl2.java │ │ │ ├── convert │ │ │ │ ├── String2BooleanConverter.java │ │ │ │ ├── String2DoubleConverter.java │ │ │ │ └── String2IntegerConverter.java │ │ │ ├── ext1 │ │ │ │ ├── SimpleExt.java │ │ │ │ └── impl │ │ │ │ │ ├── SimpleExtImpl1.java │ │ │ │ │ ├── SimpleExtImpl2.java │ │ │ │ │ └── SimpleExtImpl3.java │ │ │ ├── ext10_multi_names │ │ │ │ ├── Ext10MultiNames.java │ │ │ │ └── impl │ │ │ │ │ └── Ext10MultiNamesImpl.java │ │ │ ├── ext2 │ │ │ │ ├── Ext2.java │ │ │ │ ├── UrlHolder.java │ │ │ │ └── impl │ │ │ │ │ ├── Ext2Impl1.java │ │ │ │ │ ├── Ext2Impl2.java │ │ │ │ │ └── Ext2Impl3.java │ │ │ ├── ext3 │ │ │ │ ├── UseProtocolKeyExt.java │ │ │ │ └── impl │ │ │ │ │ ├── UseProtocolKeyExtImpl1.java │ │ │ │ │ ├── UseProtocolKeyExtImpl2.java │ │ │ │ │ └── UseProtocolKeyExtImpl3.java │ │ │ ├── ext4 │ │ │ │ ├── NoUrlParamExt.java │ │ │ │ └── impl │ │ │ │ │ ├── Ext4Impl1.java │ │ │ │ │ └── Ext4Impl2.java │ │ │ ├── ext5 │ │ │ │ ├── NoAdaptiveMethodExt.java │ │ │ │ └── impl │ │ │ │ │ ├── Ext5Impl1.java │ │ │ │ │ └── Ext5Impl2.java │ │ │ ├── ext6_inject │ │ │ │ ├── Dao.java │ │ │ │ ├── Ext6.java │ │ │ │ └── impl │ │ │ │ │ ├── DaoImpl.java │ │ │ │ │ ├── Ext6Impl1.java │ │ │ │ │ └── Ext6Impl2.java │ │ │ ├── ext6_wrap │ │ │ │ ├── WrappedExt.java │ │ │ │ └── impl │ │ │ │ │ ├── Ext5Impl1.java │ │ │ │ │ ├── Ext5Impl2.java │ │ │ │ │ ├── Ext5Wrapper1.java │ │ │ │ │ └── Ext5Wrapper2.java │ │ │ ├── ext7 │ │ │ │ ├── InitErrorExt.java │ │ │ │ └── impl │ │ │ │ │ ├── Ext7Impl.java │ │ │ │ │ └── Ext7InitErrorImpl.java │ │ │ ├── ext8_add │ │ │ │ ├── AddExt1.java │ │ │ │ ├── AddExt2.java │ │ │ │ ├── AddExt3.java │ │ │ │ ├── AddExt4.java │ │ │ │ └── impl │ │ │ │ │ ├── AddExt1Impl1.java │ │ │ │ │ ├── AddExt1_ManualAdaptive.java │ │ │ │ │ ├── AddExt1_ManualAdd1.java │ │ │ │ │ ├── AddExt1_ManualAdd2.java │ │ │ │ │ ├── AddExt2Impl1.java │ │ │ │ │ ├── AddExt2_ManualAdaptive.java │ │ │ │ │ ├── AddExt3_ManualAdaptive.java │ │ │ │ │ └── AddExt4_ManualAdaptive.java │ │ │ ├── ext9_empty │ │ │ │ ├── Ext9Empty.java │ │ │ │ └── impl │ │ │ │ │ └── Ext9EmptyImpl.java │ │ │ ├── injection │ │ │ │ ├── InjectExt.java │ │ │ │ └── impl │ │ │ │ │ └── InjectExtImpl.java │ │ │ └── support │ │ │ │ ├── ActivateComparatorTest.java │ │ │ │ ├── Filter0.java │ │ │ │ ├── Filter1.java │ │ │ │ ├── Filter2.java │ │ │ │ ├── Filter3.java │ │ │ │ ├── Filter4.java │ │ │ │ ├── OldFilter0.java │ │ │ │ └── OldFilter5.java │ │ ├── function │ │ │ ├── PredicatesTest.java │ │ │ ├── StreamsTest.java │ │ │ ├── ThrowableActionTest.java │ │ │ ├── ThrowableConsumerTest.java │ │ │ └── ThrowableFunctionTest.java │ │ ├── io │ │ │ ├── BytesTest.java │ │ │ ├── StreamUtilsTest.java │ │ │ ├── UnsafeByteArrayInputStreamTest.java │ │ │ ├── UnsafeByteArrayOutputStreamTest.java │ │ │ ├── UnsafeStringReaderTest.java │ │ │ └── UnsafeStringWriterTest.java │ │ ├── json │ │ │ ├── JSONReaderTest.java │ │ │ ├── JSONTest.java │ │ │ ├── JSONWriterTest.java │ │ │ └── MyException.java │ │ ├── lang │ │ │ ├── DefaultShutdownHookCallback.java │ │ │ ├── PrioritizedTest.java │ │ │ └── ShutdownHookCallbacksTest.java │ │ ├── logger │ │ │ ├── LoggerAdapterTest.java │ │ │ ├── LoggerFactoryTest.java │ │ │ ├── LoggerTest.java │ │ │ ├── slf4j │ │ │ │ └── Slf4jLoggerTest.java │ │ │ └── support │ │ │ │ └── FailsafeLoggerTest.java │ │ ├── model │ │ │ ├── Person.java │ │ │ ├── SerializablePerson.java │ │ │ ├── User.java │ │ │ ├── media │ │ │ │ ├── Image.java │ │ │ │ └── Media.java │ │ │ └── person │ │ │ │ ├── BigPerson.java │ │ │ │ ├── FullAddress.java │ │ │ │ ├── PersonInfo.java │ │ │ │ ├── PersonStatus.java │ │ │ │ └── Phone.java │ │ ├── status │ │ │ ├── StatusTest.java │ │ │ └── support │ │ │ │ ├── LoadStatusCheckerTest.java │ │ │ │ ├── MemoryStatusCheckerTest.java │ │ │ │ └── StatusUtilsTest.java │ │ ├── store │ │ │ └── support │ │ │ │ └── SimpleDataStoreTest.java │ │ ├── threadlocal │ │ │ ├── InternalThreadLocalTest.java │ │ │ └── NamedInternalThreadFactoryTest.java │ │ ├── threadpool │ │ │ ├── ThreadlessExecutorTest.java │ │ │ ├── event │ │ │ │ ├── ThreadPoolExhaustedEventListenerTest.java │ │ │ │ └── ThreadPoolExhaustedEventTest.java │ │ │ ├── manager │ │ │ │ └── ExecutorRepositoryTest.java │ │ │ └── support │ │ │ │ ├── AbortPolicyWithReportTest.java │ │ │ │ ├── cached │ │ │ │ └── CachedThreadPoolTest.java │ │ │ │ ├── eager │ │ │ │ ├── EagerThreadPoolExecutorTest.java │ │ │ │ ├── EagerThreadPoolTest.java │ │ │ │ └── TaskQueueTest.java │ │ │ │ ├── fixed │ │ │ │ └── FixedThreadPoolTest.java │ │ │ │ └── limited │ │ │ │ └── LimitedThreadPoolTest.java │ │ ├── timer │ │ │ └── HashedWheelTimerTest.java │ │ ├── utils │ │ │ ├── AnnotationUtilsTest.java │ │ │ ├── ArrayUtilsTest.java │ │ │ ├── AssertTest.java │ │ │ ├── AtomicPositiveIntegerTest.java │ │ │ ├── CIDRUtilsTest.java │ │ │ ├── ClassUtilsTest.java │ │ │ ├── CollectionUtilsTest.java │ │ │ ├── CompatibleTypeUtilsTest.java │ │ │ ├── ConfigUtilsTest.java │ │ │ ├── DefaultCharSequence.java │ │ │ ├── DefaultPageTest.java │ │ │ ├── DubboAppenderTest.java │ │ │ ├── ExecutorUtilTest.java │ │ │ ├── FieldUtilsTest.java │ │ │ ├── HolderTest.java │ │ │ ├── IOUtilsTest.java │ │ │ ├── JVMUtilTest.java │ │ │ ├── LFUCacheTest.java │ │ │ ├── LRUCacheTest.java │ │ │ ├── LogHelperTest.java │ │ │ ├── LogTest.java │ │ │ ├── LogUtilTest.java │ │ │ ├── MemberUtilsTest.java │ │ │ ├── MethodUtilsTest.java │ │ │ ├── MyEnum.java │ │ │ ├── NamedThreadFactoryTest.java │ │ │ ├── NetUtilsTest.java │ │ │ ├── ParametersTest.java │ │ │ ├── PojoUtilsTest.java │ │ │ ├── ReflectUtilsTest.java │ │ │ ├── StackTest.java │ │ │ ├── StringConstantFieldValuePredicateTest.java │ │ │ ├── StringUtilsTest.java │ │ │ └── UrlUtilsTest.java │ │ └── version │ │ │ └── VersionTest.java │ │ ├── config │ │ └── context │ │ │ └── ConfigManagerTest.java │ │ ├── descriptor │ │ ├── DescriptorService.java │ │ └── MethodDescritorTest.java │ │ ├── event │ │ ├── AbstractEventListener.java │ │ ├── ConditionalEventListenerTest.java │ │ ├── DirectEventDispatcherTest.java │ │ ├── EchoEvent.java │ │ ├── EchoEventListener.java │ │ ├── EchoEventListener2.java │ │ ├── EventDispatcherTest.java │ │ ├── EventListenerTest.java │ │ ├── GenericEventListenerTest.java │ │ ├── GenericEventTest.java │ │ └── ParallelEventDispatcherTest.java │ │ └── rpc │ │ ├── model │ │ ├── Person.java │ │ ├── SerializablePerson.java │ │ ├── User.java │ │ ├── media │ │ │ ├── Image.java │ │ │ └── Media.java │ │ └── person │ │ │ ├── BigPerson.java │ │ │ ├── FullAddress.java │ │ │ ├── PersonInfo.java │ │ │ ├── PersonStatus.java │ │ │ └── Phone.java │ │ └── support │ │ └── ProtocolUtilsTest.java │ └── resources │ ├── META-INF │ ├── dubbo │ │ ├── external │ │ │ └── org.apache.dubbo.common.convert.Converter │ │ ├── internal │ │ │ ├── org.apache.dubbo.common.config.OrderedPropertiesProvider │ │ │ ├── org.apache.dubbo.common.extension.activate.ActivateExt1 │ │ │ ├── org.apache.dubbo.common.extension.adaptive.HasAdaptiveExt │ │ │ ├── org.apache.dubbo.common.extension.compatible.CompatibleExt │ │ │ ├── org.apache.dubbo.common.extension.ext1.SimpleExt │ │ │ ├── org.apache.dubbo.common.extension.ext10_multi_names.Ext10MultiNames │ │ │ ├── org.apache.dubbo.common.extension.ext2.Ext2 │ │ │ ├── org.apache.dubbo.common.extension.ext3.UseProtocolKeyExt │ │ │ ├── org.apache.dubbo.common.extension.ext4.NoUrlParamExt │ │ │ ├── org.apache.dubbo.common.extension.ext5.NoAdaptiveMethodExt │ │ │ ├── org.apache.dubbo.common.extension.ext6_inject.Ext6 │ │ │ ├── org.apache.dubbo.common.extension.ext6_wrap.WrappedExt │ │ │ ├── org.apache.dubbo.common.extension.ext7.InitErrorExt │ │ │ ├── org.apache.dubbo.common.extension.ext8_add.AddExt1 │ │ │ ├── org.apache.dubbo.common.extension.ext9_empty.Ext9Empty │ │ │ ├── org.apache.dubbo.common.extension.injection.InjectExt │ │ │ ├── org.apache.dubbo.common.extension.support.Filter0 │ │ │ ├── org.apache.dubbo.common.lang.ShutdownHookCallback │ │ │ ├── org.apache.dubbo.common.logger.LoggerAdapter │ │ │ ├── org.apache.dubbo.common.status.StatusChecker │ │ │ └── org.apache.dubbo.event.EventListener │ │ └── org.apache.dubbo.common.convert.Converter │ └── services │ │ ├── java.lang.CharSequence │ │ ├── org.apache.dubbo.common.extension.LoadingStrategy │ │ └── org.apache.dubbo.common.extension.activate.ActivateExt1 │ ├── StreamUtilsTest.txt │ ├── dubbo.properties │ ├── json.flex │ ├── log4j.xml │ ├── md5.testfile.txt │ ├── org │ └── apache │ │ └── dubbo │ │ └── common │ │ ├── extension │ │ └── adaptive │ │ │ └── HasAdaptiveExt$Adaptive │ │ └── serialize │ │ └── dubbo │ │ └── SimpleDO.fc │ ├── parameters.properties │ └── properties.load ├── dubbo-compatible ├── README.md ├── pom.xml └── src │ ├── main │ └── java │ │ └── com │ │ └── alibaba │ │ └── dubbo │ │ ├── cache │ │ ├── Cache.java │ │ ├── CacheFactory.java │ │ └── support │ │ │ └── AbstractCacheFactory.java │ │ ├── common │ │ ├── Constants.java │ │ ├── URL.java │ │ ├── compiler │ │ │ └── Compiler.java │ │ ├── extension │ │ │ └── ExtensionFactory.java │ │ ├── logger │ │ │ └── LoggerAdapter.java │ │ ├── serialize │ │ │ ├── ObjectInput.java │ │ │ ├── ObjectOutput.java │ │ │ └── Serialization.java │ │ ├── status │ │ │ ├── Status.java │ │ │ └── StatusChecker.java │ │ ├── store │ │ │ └── DataStore.java │ │ ├── threadpool │ │ │ └── ThreadPool.java │ │ └── utils │ │ │ └── UrlUtils.java │ │ ├── config │ │ ├── ApplicationConfig.java │ │ ├── ArgumentConfig.java │ │ ├── ConsumerConfig.java │ │ ├── MethodConfig.java │ │ ├── ModuleConfig.java │ │ ├── MonitorConfig.java │ │ ├── ProtocolConfig.java │ │ ├── ProviderConfig.java │ │ ├── ReferenceConfig.java │ │ ├── RegistryConfig.java │ │ ├── ServiceConfig.java │ │ └── spring │ │ │ └── context │ │ │ └── annotation │ │ │ └── EnableDubbo.java │ │ ├── container │ │ └── Container.java │ │ ├── monitor │ │ ├── Monitor.java │ │ └── MonitorFactory.java │ │ ├── qos │ │ └── command │ │ │ ├── BaseCommand.java │ │ │ └── CommandContext.java │ │ ├── registry │ │ ├── NotifyListener.java │ │ ├── Registry.java │ │ ├── RegistryFactory.java │ │ └── support │ │ │ ├── AbstractRegistry.java │ │ │ ├── AbstractRegistryFactory.java │ │ │ └── FailbackRegistry.java │ │ ├── remoting │ │ ├── Channel.java │ │ ├── ChannelHandler.java │ │ ├── Codec.java │ │ ├── Codec2.java │ │ ├── Dispatcher.java │ │ ├── RemotingException.java │ │ ├── Server.java │ │ ├── Transporter.java │ │ ├── exchange │ │ │ ├── Exchanger.java │ │ │ ├── ResponseCallback.java │ │ │ └── ResponseFuture.java │ │ ├── http │ │ │ └── HttpBinder.java │ │ ├── p2p │ │ │ └── Networker.java │ │ ├── telnet │ │ │ └── TelnetHandler.java │ │ └── zookeeper │ │ │ └── ZookeeperTransporter.java │ │ ├── rpc │ │ ├── Exporter.java │ │ ├── Filter.java │ │ ├── Invocation.java │ │ ├── Invoker.java │ │ ├── InvokerListener.java │ │ ├── Protocol.java │ │ ├── ProxyFactory.java │ │ ├── Result.java │ │ ├── RpcContext.java │ │ ├── RpcException.java │ │ ├── RpcInvocation.java │ │ ├── cluster │ │ │ ├── Cluster.java │ │ │ ├── ConfiguratorFactory.java │ │ │ ├── Directory.java │ │ │ ├── LoadBalance.java │ │ │ ├── Merger.java │ │ │ ├── Router.java │ │ │ ├── RouterFactory.java │ │ │ ├── RuleConverter.java │ │ │ └── loadbalance │ │ │ │ └── AbstractLoadBalance.java │ │ ├── protocol │ │ │ ├── dubbo │ │ │ │ └── FutureAdapter.java │ │ │ ├── rest │ │ │ │ └── support │ │ │ │ │ └── ContentType.java │ │ │ └── thrift │ │ │ │ └── ClassNameGenerator.java │ │ └── support │ │ │ └── RpcUtils.java │ │ └── validation │ │ ├── Validation.java │ │ └── Validator.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── dubbo │ │ ├── cache │ │ ├── CacheTest.java │ │ ├── MyCache.java │ │ └── MyCacheFactory.java │ │ ├── common │ │ └── extension │ │ │ ├── ExtensionTest.java │ │ │ ├── MockDispatcher.java │ │ │ └── MyExtensionFactory.java │ │ ├── config │ │ ├── ApplicationConfigTest.java │ │ ├── ArgumentConfigTest.java │ │ ├── ConfigTest.java │ │ ├── ConsumerConfigTest.java │ │ ├── MethodConfigTest.java │ │ ├── ModuleConfigTest.java │ │ ├── ProtocolConfigTest.java │ │ ├── ProviderConfigTest.java │ │ ├── ReferenceConfigTest.java │ │ └── RegistryConfigTest.java │ │ ├── echo │ │ └── EchoServiceTest.java │ │ ├── filter │ │ ├── FilterTest.java │ │ ├── LegacyInvocation.java │ │ ├── LegacyInvoker.java │ │ └── MyFilter.java │ │ ├── generic │ │ └── GenericServiceTest.java │ │ ├── rpc │ │ ├── RpcContextTest.java │ │ └── cluster │ │ │ ├── CompatibleRouter.java │ │ │ ├── CompatibleRouter2.java │ │ │ ├── NewRouter.java │ │ │ └── RouterTest.java │ │ ├── serialization │ │ ├── MyObjectInput.java │ │ ├── MyObjectOutput.java │ │ ├── MySerialization.java │ │ └── SerializationTest.java │ │ └── service │ │ ├── ComplexObject.java │ │ ├── CustomArgument.java │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── MockInvocation.java │ │ ├── Person.java │ │ └── Type.java │ └── resources │ └── META-INF │ └── services │ ├── com.alibaba.dubbo.common.extension.ExtensionFactory │ └── org.apache.dubbo.remoting.Dispatcher ├── dubbo-config ├── dubbo-config-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── config │ │ │ │ ├── ConfigInitializer.java │ │ │ │ ├── ConfigPostProcessor.java │ │ │ │ ├── DubboShutdownHook.java │ │ │ │ ├── ReferenceConfig.java │ │ │ │ ├── ServiceConfig.java │ │ │ │ ├── bootstrap │ │ │ │ ├── DubboBootstrap.java │ │ │ │ └── builders │ │ │ │ │ ├── AbstractBuilder.java │ │ │ │ │ ├── AbstractInterfaceBuilder.java │ │ │ │ │ ├── AbstractMethodBuilder.java │ │ │ │ │ ├── AbstractReferenceBuilder.java │ │ │ │ │ ├── AbstractServiceBuilder.java │ │ │ │ │ ├── ApplicationBuilder.java │ │ │ │ │ ├── ArgumentBuilder.java │ │ │ │ │ ├── ConfigCenterBuilder.java │ │ │ │ │ ├── ConsumerBuilder.java │ │ │ │ │ ├── MetadataReportBuilder.java │ │ │ │ │ ├── MethodBuilder.java │ │ │ │ │ ├── ModuleBuilder.java │ │ │ │ │ ├── MonitorBuilder.java │ │ │ │ │ ├── ProtocolBuilder.java │ │ │ │ │ ├── ProviderBuilder.java │ │ │ │ │ ├── ReferenceBuilder.java │ │ │ │ │ ├── RegistryBuilder.java │ │ │ │ │ ├── ServiceBuilder.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── event │ │ │ │ ├── DubboServiceDestroyedEvent.java │ │ │ │ ├── DubboShutdownHookRegisteredEvent.java │ │ │ │ ├── DubboShutdownHookUnregisteredEvent.java │ │ │ │ ├── ReferenceConfigDestroyedEvent.java │ │ │ │ ├── ReferenceConfigInitializedEvent.java │ │ │ │ ├── ServiceConfigExportedEvent.java │ │ │ │ ├── ServiceConfigUnexportedEvent.java │ │ │ │ └── listener │ │ │ │ │ └── LoggingEventListener.java │ │ │ │ ├── invoker │ │ │ │ └── DelegateProviderMetaDataInvoker.java │ │ │ │ ├── metadata │ │ │ │ ├── ConfigurableMetadataServiceExporter.java │ │ │ │ └── ServiceInstancePortCustomizer.java │ │ │ │ └── utils │ │ │ │ ├── ConfigValidationUtils.java │ │ │ │ └── ReferenceConfigCache.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.event.EventListener │ │ │ ├── org.apache.dubbo.metadata.MetadataServiceExporter │ │ │ └── org.apache.dubbo.registry.client.ServiceInstanceCustomizer │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ ├── config │ │ │ ├── AbstractConfigTest.java │ │ │ ├── AbstractInterfaceConfigTest.java │ │ │ ├── AbstractMethodConfigTest.java │ │ │ ├── AbstractReferenceConfigTest.java │ │ │ ├── AbstractServiceConfigTest.java │ │ │ ├── ApplicationConfigTest.java │ │ │ ├── ArgumentConfigTest.java │ │ │ ├── ConfigCenterConfigTest.java │ │ │ ├── ConsumerConfigTest.java │ │ │ ├── MethodConfigTest.java │ │ │ ├── ModuleConfigTest.java │ │ │ ├── MonitorConfigTest.java │ │ │ ├── ProtocolConfigTest.java │ │ │ ├── ProviderConfigTest.java │ │ │ ├── ReferenceConfigTest.java │ │ │ ├── RegistryConfigTest.java │ │ │ ├── ServiceConfigTest.java │ │ │ ├── api │ │ │ │ ├── Box.java │ │ │ │ ├── DemoException.java │ │ │ │ ├── DemoService.java │ │ │ │ ├── Greeting.java │ │ │ │ └── User.java │ │ │ ├── bootstrap │ │ │ │ ├── ConsulDubboServiceConsumerBootstrap.java │ │ │ │ ├── ConsulDubboServiceProviderBootstrap.java │ │ │ │ ├── DubboBootstrapTest.java │ │ │ │ ├── DubboServiceConsumerBootstrap.java │ │ │ │ ├── DubboServiceProviderBootstrap.java │ │ │ │ ├── DubboServiceProviderMinimumBootstrap.java │ │ │ │ ├── EchoService.java │ │ │ │ ├── EchoServiceImpl.java │ │ │ │ ├── EtcdDubboServiceConsumerBootstrap.java │ │ │ │ ├── EtcdDubboServiceProviderBootstrap.java │ │ │ │ ├── NacosDubboServiceConsumerBootstrap.java │ │ │ │ ├── NacosDubboServiceProviderBootstrap.java │ │ │ │ ├── ZookeeperDubboServiceConsumerBootstrap.java │ │ │ │ ├── ZookeeperDubboServiceProviderBootstrap.java │ │ │ │ ├── builders │ │ │ │ │ ├── AbstractBuilderTest.java │ │ │ │ │ ├── AbstractInterfaceBuilderTest.java │ │ │ │ │ ├── AbstractMethodBuilderTest.java │ │ │ │ │ ├── AbstractReferenceBuilderTest.java │ │ │ │ │ ├── AbstractServiceBuilderTest.java │ │ │ │ │ ├── ApplicationBuilderTest.java │ │ │ │ │ ├── ArgumentBuilderTest.java │ │ │ │ │ ├── ConfigCenterBuilderTest.java │ │ │ │ │ ├── ConsumerBuilderTest.java │ │ │ │ │ ├── MetadataReportBuilderTest.java │ │ │ │ │ ├── MethodBuilderTest.java │ │ │ │ │ ├── ModuleBuilderTest.java │ │ │ │ │ ├── MonitorBuilderTest.java │ │ │ │ │ ├── ProtocolBuilderTest.java │ │ │ │ │ ├── ProviderBuilderTest.java │ │ │ │ │ ├── ReferenceBuilderTest.java │ │ │ │ │ ├── RegistryBuilderTest.java │ │ │ │ │ └── ServiceBuilderTest.java │ │ │ │ ├── compatible │ │ │ │ │ └── DubboInterfaceConsumerBootstrap.java │ │ │ │ └── rest │ │ │ │ │ ├── User.java │ │ │ │ │ ├── UserService.java │ │ │ │ │ └── UserServiceImpl.java │ │ │ ├── cache │ │ │ │ ├── CacheService.java │ │ │ │ ├── CacheServiceImpl.java │ │ │ │ └── CacheTest.java │ │ │ ├── consumer │ │ │ │ ├── DemoActionByAnnotation.java │ │ │ │ ├── DemoActionBySetter.java │ │ │ │ └── DemoInterceptor.java │ │ │ ├── event │ │ │ │ └── listener │ │ │ │ │ └── PublishingServiceDefinitionListenerTest.java │ │ │ ├── invoker │ │ │ │ └── DelegateProviderMetaDataInvokerTest.java │ │ │ ├── mock │ │ │ │ ├── GreetingLocal1.java │ │ │ │ ├── GreetingLocal2.java │ │ │ │ ├── GreetingLocal3.java │ │ │ │ ├── GreetingMock1.java │ │ │ │ ├── GreetingMock2.java │ │ │ │ ├── MockCluster.java │ │ │ │ ├── MockCodec.java │ │ │ │ ├── MockDispatcher.java │ │ │ │ ├── MockExchanger.java │ │ │ │ ├── MockExporterListener.java │ │ │ │ ├── MockFilter.java │ │ │ │ ├── MockInvokerListener.java │ │ │ │ ├── MockLoadBalance.java │ │ │ │ ├── MockProtocol.java │ │ │ │ ├── MockProtocol2.java │ │ │ │ ├── MockProxyFactory.java │ │ │ │ ├── MockRegistry.java │ │ │ │ ├── MockRegistryFactory.java │ │ │ │ ├── MockRegistryFactory2.java │ │ │ │ ├── MockServiceDiscovery.java │ │ │ │ ├── MockStatusChecker.java │ │ │ │ ├── MockTelnetHandler.java │ │ │ │ ├── MockThreadPool.java │ │ │ │ ├── MockTransporter.java │ │ │ │ └── TestProxyFactory.java │ │ │ ├── provider │ │ │ │ └── impl │ │ │ │ │ └── DemoServiceImpl.java │ │ │ ├── url │ │ │ │ ├── ExporterSideConfigUrlTest.java │ │ │ │ ├── InvokerSideConfigUrlTest.java │ │ │ │ ├── RpcConfigGetSetProxy.java │ │ │ │ └── UrlTestBase.java │ │ │ └── utils │ │ │ │ ├── MockReferenceConfig.java │ │ │ │ ├── ReferenceConfigCacheTest.java │ │ │ │ ├── XxxMockReferenceConfig.java │ │ │ │ └── service │ │ │ │ ├── FooService.java │ │ │ │ ├── FooServiceImpl.java │ │ │ │ ├── XxxService.java │ │ │ │ └── XxxServiceImpl.java │ │ │ └── metadata │ │ │ └── MetadataServiceExporterTest.java │ │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ ├── org.apache.dubbo.common.status.StatusChecker │ │ │ ├── org.apache.dubbo.common.threadpool.ThreadPool │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ ├── org.apache.dubbo.remoting.Codec │ │ │ ├── org.apache.dubbo.remoting.Dispatcher │ │ │ ├── org.apache.dubbo.remoting.Transporter │ │ │ ├── org.apache.dubbo.remoting.exchange.Exchanger │ │ │ ├── org.apache.dubbo.remoting.telnet.TelnetHandler │ │ │ ├── org.apache.dubbo.rpc.ExporterListener │ │ │ ├── org.apache.dubbo.rpc.Filter │ │ │ ├── org.apache.dubbo.rpc.InvokerListener │ │ │ ├── org.apache.dubbo.rpc.Protocol │ │ │ ├── org.apache.dubbo.rpc.ProxyFactory │ │ │ ├── org.apache.dubbo.rpc.cluster.Cluster │ │ │ └── org.apache.dubbo.rpc.cluster.LoadBalance │ │ ├── dubbo.properties │ │ └── log4j.xml ├── dubbo-config-spring │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── config │ │ │ │ └── spring │ │ │ │ ├── ConfigCenterBean.java │ │ │ │ ├── ReferenceBean.java │ │ │ │ ├── ServiceBean.java │ │ │ │ ├── beans │ │ │ │ └── factory │ │ │ │ │ ├── annotation │ │ │ │ │ ├── AbstractAnnotationConfigBeanBuilder.java │ │ │ │ │ ├── AnnotatedInterfaceConfigBeanBuilder.java │ │ │ │ │ ├── AnnotationPropertyValuesAdapter.java │ │ │ │ │ ├── DubboConfigAliasPostProcessor.java │ │ │ │ │ ├── ReferenceAnnotationBeanPostProcessor.java │ │ │ │ │ ├── ReferenceBeanBuilder.java │ │ │ │ │ ├── ServiceAnnotationBeanPostProcessor.java │ │ │ │ │ ├── ServiceBeanNameBuilder.java │ │ │ │ │ └── ServiceClassPostProcessor.java │ │ │ │ │ └── config │ │ │ │ │ ├── ConfigurableSourceBeanMetadataElement.java │ │ │ │ │ ├── DubboConfigDefaultPropertyValueBeanPostProcessor.java │ │ │ │ │ └── DubboConfigEarlyInitializationPostProcessor.java │ │ │ │ ├── context │ │ │ │ ├── DubboApplicationListenerRegistrar.java │ │ │ │ ├── DubboBootstrapApplicationListener.java │ │ │ │ ├── DubboLifecycleComponentApplicationListener.java │ │ │ │ ├── annotation │ │ │ │ │ ├── DubboClassPathBeanDefinitionScanner.java │ │ │ │ │ ├── DubboComponentScan.java │ │ │ │ │ ├── DubboComponentScanRegistrar.java │ │ │ │ │ ├── DubboConfigConfiguration.java │ │ │ │ │ ├── DubboConfigConfigurationRegistrar.java │ │ │ │ │ ├── DubboLifecycleComponentRegistrar.java │ │ │ │ │ ├── EnableDubbo.java │ │ │ │ │ ├── EnableDubboConfig.java │ │ │ │ │ └── EnableDubboLifecycle.java │ │ │ │ ├── config │ │ │ │ │ ├── DubboConfigBeanCustomizer.java │ │ │ │ │ └── NamePropertyDefaultValueDubboConfigBeanCustomizer.java │ │ │ │ ├── event │ │ │ │ │ └── ServiceBeanExportedEvent.java │ │ │ │ └── properties │ │ │ │ │ ├── AbstractDubboConfigBinder.java │ │ │ │ │ ├── DefaultDubboConfigBinder.java │ │ │ │ │ └── DubboConfigBinder.java │ │ │ │ ├── extension │ │ │ │ └── SpringExtensionFactory.java │ │ │ │ ├── schema │ │ │ │ ├── AnnotationBeanDefinitionParser.java │ │ │ │ ├── DubboBeanDefinitionParser.java │ │ │ │ └── DubboNamespaceHandler.java │ │ │ │ ├── status │ │ │ │ ├── DataSourceStatusChecker.java │ │ │ │ └── SpringStatusChecker.java │ │ │ │ └── util │ │ │ │ ├── DubboAnnotationUtils.java │ │ │ │ └── DubboBeanUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ ├── compat │ │ │ └── dubbo.xsd │ │ │ ├── dubbo.xsd │ │ │ ├── dubbo │ │ │ └── internal │ │ │ │ ├── org.apache.dubbo.common.extension.ExtensionFactory │ │ │ │ └── org.apache.dubbo.common.status.StatusChecker │ │ │ ├── spring.handlers │ │ │ └── spring.schemas │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── config │ │ │ └── spring │ │ │ ├── AbstractRegistryService.java │ │ │ ├── ConfigTest.java │ │ │ ├── GenericDemoService.java │ │ │ ├── ServiceBeanTest.java │ │ │ ├── SimpleRegistryExporter.java │ │ │ ├── SimpleRegistryService.java │ │ │ ├── action │ │ │ ├── DemoActionByAnnotation.java │ │ │ ├── DemoActionBySetter.java │ │ │ └── DemoInterceptor.java │ │ │ ├── annotation │ │ │ ├── consumer │ │ │ │ └── AnnotationAction.java │ │ │ ├── merged │ │ │ │ ├── MergedReference.java │ │ │ │ └── MergedService.java │ │ │ └── provider │ │ │ │ └── AnnotationServiceImpl.java │ │ │ ├── api │ │ │ ├── Box.java │ │ │ ├── DemoService.java │ │ │ ├── DemoServiceSon.java │ │ │ └── HelloService.java │ │ │ ├── beans │ │ │ └── factory │ │ │ │ ├── annotation │ │ │ │ ├── AnnotationPropertyValuesAdapterTest.java │ │ │ │ ├── DubboReferenceGenericTest.java │ │ │ │ ├── MergedAnnotationTest.java │ │ │ │ ├── ReferenceAnnotationBeanPostProcessorTest.java │ │ │ │ ├── ReferenceBeanBuilderTest.java │ │ │ │ ├── ServiceAnnotationBeanPostProcessorTest.java │ │ │ │ ├── ServiceAnnotationTestConfiguration.java │ │ │ │ ├── ServiceAnnotationTestConfiguration2.java │ │ │ │ ├── ServiceBeanNameBuilderTest.java │ │ │ │ └── ServiceClassPostProcessorTest.java │ │ │ │ └── config │ │ │ │ ├── MultipleServicesWithMethodConfigsTest.java │ │ │ │ ├── YamlPropertySourceFactory.java │ │ │ │ └── YamlPropertySourceFactoryTest.java │ │ │ ├── context │ │ │ ├── annotation │ │ │ │ ├── DubboComponentScanRegistrarTest.java │ │ │ │ ├── DubboConfigConfigurationTest.java │ │ │ │ ├── EnableDubboConfigTest.java │ │ │ │ ├── EnableDubboTest.java │ │ │ │ ├── consumer │ │ │ │ │ ├── ConsumerConfiguration.java │ │ │ │ │ └── test │ │ │ │ │ │ └── TestConsumerConfiguration.java │ │ │ │ └── provider │ │ │ │ │ ├── DefaultHelloService.java │ │ │ │ │ ├── DemoServiceImpl.java │ │ │ │ │ ├── HelloServiceImpl.java │ │ │ │ │ └── ProviderConfiguration.java │ │ │ └── properties │ │ │ │ └── DefaultDubboConfigBinderTest.java │ │ │ ├── extension │ │ │ ├── BeanForContext2.java │ │ │ └── SpringExtensionFactoryTest.java │ │ │ ├── filter │ │ │ ├── MockDao.java │ │ │ ├── MockDaoImpl.java │ │ │ └── MockFilter.java │ │ │ ├── impl │ │ │ ├── DemoServiceImpl.java │ │ │ ├── DemoServiceImpl_LongWaiting.java │ │ │ ├── DemoServiceSonImpl.java │ │ │ ├── HelloServiceImpl.java │ │ │ ├── UnserializableBox.java │ │ │ └── UnserializableBoxDemoServiceImpl.java │ │ │ ├── issues │ │ │ └── Issue6252Test.java │ │ │ ├── registry │ │ │ ├── MockRegistry.java │ │ │ ├── MockRegistryFactory.java │ │ │ ├── MockServiceDiscovery.java │ │ │ └── nacos │ │ │ │ ├── demo │ │ │ │ ├── consumer │ │ │ │ │ ├── DemoServiceConsumerBootstrap.java │ │ │ │ │ └── DemoServiceConsumerXmlBootstrap.java │ │ │ │ ├── provider │ │ │ │ │ ├── DemoServiceProviderBootstrap.java │ │ │ │ │ └── DemoServiceProviderXmlBootstrap.java │ │ │ │ └── service │ │ │ │ │ ├── DefaultService.java │ │ │ │ │ └── DemoService.java │ │ │ │ └── nacos │ │ │ │ └── NacosServiceNameTest.java │ │ │ ├── samples │ │ │ ├── ZookeeperDubboSpringConsumerBootstrap.java │ │ │ ├── ZookeeperDubboSpringConsumerXmlBootstrap.java │ │ │ └── ZookeeperDubboSpringProviderBootstrap.java │ │ │ ├── schema │ │ │ ├── DubboNamespaceHandlerTest.java │ │ │ ├── GenericServiceTest.java │ │ │ └── MyGenericService.java │ │ │ └── status │ │ │ ├── DataSourceStatusCheckerTest.java │ │ │ └── SpringStatusCheckerTest.java │ │ └── resources │ │ ├── META-INF │ │ ├── config.properties │ │ ├── default.properties │ │ ├── demo-provider.properties │ │ ├── dubbb-consumer.properties │ │ ├── dubbb-provider.properties │ │ ├── dubbo-consumer.properties │ │ ├── dubbo-provider.properties │ │ ├── dubbo.yml │ │ ├── dubbo │ │ │ └── internal │ │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ │ └── org.apache.dubbo.rpc.Filter │ │ ├── issue-6252-test.properties │ │ ├── service-introspection │ │ │ ├── zookeeper-dubbb-consumer.properties │ │ │ ├── zookeeper-dubbb-provider.properties │ │ │ └── zookeeper-dubbo-consumer.xml │ │ └── spring │ │ │ ├── dubbo-annotation-consumer.xml │ │ │ ├── dubbo-annotation-provider.xml │ │ │ ├── dubbo-consumer.xml │ │ │ ├── dubbo-generic-consumer.xml │ │ │ ├── dubbo-nacos-consumer-context.xml │ │ │ ├── dubbo-nacos-provider-context.xml │ │ │ ├── dubbo-provider.xml │ │ │ └── multiple-services-with-methods.xml │ │ ├── applicationContext.xml │ │ ├── dubbo-binder.properties │ │ ├── log4j.xml │ │ ├── nacos-consumer-config.properties │ │ ├── nacos-provider-config.properties │ │ ├── org │ │ └── apache │ │ │ └── dubbo │ │ │ └── config │ │ │ └── spring │ │ │ ├── annotation-consumer.xml │ │ │ ├── annotation-provider.xml │ │ │ ├── annotation-version-consumer.xml │ │ │ ├── annotation-version-provider.xml │ │ │ ├── aop-autowire-byname.xml │ │ │ ├── aop-autowire-bytype.xml │ │ │ ├── consumer-notification.xml │ │ │ ├── customize-parameter.xml │ │ │ ├── delay-fixed-time.xml │ │ │ ├── delay-on-initialized.xml │ │ │ ├── demo-provider-UnserializableBox.xml │ │ │ ├── demo-provider-long-waiting.xml │ │ │ ├── demo-provider-no-methods-interface.xml │ │ │ ├── demo-provider-properties.xml │ │ │ ├── demo-provider.xml │ │ │ ├── generic-export.xml │ │ │ ├── init-reference-getUrls.xml │ │ │ ├── init-reference-retry-false.xml │ │ │ ├── init-reference.xml │ │ │ ├── multi-monitor.xml │ │ │ ├── multi-protocol-default.xml │ │ │ ├── multi-protocol-error.xml │ │ │ ├── multi-protocol-register.xml │ │ │ ├── multi-protocol.xml │ │ │ ├── multi-registry.xml │ │ │ ├── override-multi-protocol.xml │ │ │ ├── override-protocol.xml │ │ │ ├── provider-multi.xml │ │ │ ├── provider-nested-service.xml │ │ │ ├── provider-with-module.xml │ │ │ ├── provider-with-monitor.xml │ │ │ ├── service-class.xml │ │ │ ├── spring-extension-inject.xml │ │ │ ├── system-properties-override-default.xml │ │ │ ├── system-properties-override.xml │ │ │ └── xml-override-properties.xml │ │ └── webapps │ │ ├── test │ │ └── WEB-INF │ │ │ └── web.xml │ │ ├── test2 │ │ └── WEB-INF │ │ │ └── web.xml │ │ └── test3 │ │ └── WEB-INF │ │ └── web.xml └── pom.xml ├── dubbo-configcenter ├── dubbo-configcenter-apollo │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── configcenter │ │ │ │ └── support │ │ │ │ └── apollo │ │ │ │ ├── ApolloDynamicConfiguration.java │ │ │ │ └── ApolloDynamicConfigurationFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── configcenter │ │ │ └── support │ │ │ └── apollo │ │ │ └── ApolloDynamicConfigurationTest.java │ │ └── resources │ │ ├── META-INF │ │ └── app.properties │ │ └── mockdata-dubbo.properties ├── dubbo-configcenter-consul │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── configcenter │ │ │ │ └── consul │ │ │ │ ├── ConsulDynamicConfiguration.java │ │ │ │ └── ConsulDynamicConfigurationFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── configcenter │ │ └── consul │ │ └── ConsulDynamicConfigurationTest.java ├── dubbo-configcenter-etcd │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── configcenter │ │ │ │ └── support │ │ │ │ └── etcd │ │ │ │ ├── EtcdDynamicConfiguration.java │ │ │ │ └── EtcdDynamicConfigurationFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── configcenter │ │ └── support │ │ └── etcd │ │ └── EtcdDynamicConfigurationTest.java ├── dubbo-configcenter-nacos │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── configcenter │ │ │ │ └── support │ │ │ │ └── nacos │ │ │ │ ├── NacosDynamicConfiguration.java │ │ │ │ └── NacosDynamicConfigurationFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── configcenter │ │ └── support │ │ └── nacos │ │ └── NacosDynamicConfigurationTest.java ├── dubbo-configcenter-zookeeper │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── configcenter │ │ │ │ └── support │ │ │ │ └── zookeeper │ │ │ │ ├── CacheListener.java │ │ │ │ ├── ZookeeperDynamicConfiguration.java │ │ │ │ └── ZookeeperDynamicConfigurationFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── configcenter │ │ └── support │ │ └── zookeeper │ │ └── ZookeeperDynamicConfigurationTest.java └── pom.xml ├── dubbo-container ├── dubbo-container-api │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── container │ │ │ ├── Container.java │ │ │ └── Main.java │ │ └── resources │ │ └── META-INF │ │ └── assembly │ │ └── bin │ │ ├── dump.sh │ │ ├── restart.sh │ │ ├── server.sh │ │ ├── start.bat │ │ ├── start.sh │ │ └── stop.sh ├── dubbo-container-log4j │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── container │ │ │ │ └── log4j │ │ │ │ └── Log4jContainer.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.container.Container │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── container │ │ └── log4j │ │ └── Log4jContainerTest.java ├── dubbo-container-logback │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── container │ │ │ │ └── logback │ │ │ │ └── LogbackContainer.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.container.Container │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── container │ │ └── logback │ │ └── LogbackContainerTest.java ├── dubbo-container-spring │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── container │ │ │ │ └── spring │ │ │ │ └── SpringContainer.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.container.Container │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── container │ │ │ └── spring │ │ │ └── SpringContainerTest.java │ │ └── resources │ │ ├── META-INF │ │ └── spring │ │ │ └── test.xml │ │ └── log4j.xml └── pom.xml ├── dubbo-demo ├── README.md ├── dubbo-demo-annotation │ ├── dubbo-demo-annotation-consumer │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── consumer │ │ │ │ ├── Application.java │ │ │ │ └── comp │ │ │ │ └── DemoServiceComponent.java │ │ │ └── resources │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ └── dubbo-consumer.properties │ ├── dubbo-demo-annotation-provider │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── provider │ │ │ │ ├── Application.java │ │ │ │ └── DemoServiceImpl.java │ │ │ └── resources │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ └── dubbo-provider.properties │ └── pom.xml ├── dubbo-demo-api │ ├── dubbo-demo-api-consumer │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── consumer │ │ │ │ └── Application.java │ │ │ └── resources │ │ │ └── log4j.properties │ ├── dubbo-demo-api-provider │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── provider │ │ │ │ ├── Application.java │ │ │ │ └── DemoServiceImpl.java │ │ │ └── resources │ │ │ └── log4j.properties │ └── pom.xml ├── dubbo-demo-interface │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── demo │ │ ├── DemoService.java │ │ └── GreetingService.java ├── dubbo-demo-service │ ├── dubbo-demo-service-consumer │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── consumer │ │ │ │ ├── ApplicationConsumer.java │ │ │ │ ├── RandomMigrationAddressComparator.java │ │ │ │ └── TestFailoverCondition.java │ │ │ └── resources │ │ │ ├── META-INF │ │ │ └── dubbo │ │ │ │ └── internal │ │ │ │ ├── org.apache.dubbo.metadata.store.failover.FailoverCondition │ │ │ │ └── org.apache.dubbo.rpc.cluster.support.migration.MigrationClusterComparator │ │ │ ├── dubbo.properties │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ ├── dubbo-consumer-multiple.xml │ │ │ ├── dubbo-consumer-sofaregistry.xml │ │ │ ├── dubbo-consumer-zk-apollo.xml │ │ │ ├── dubbo-consumer-zk-sofaregistry.xml │ │ │ └── dubbo-consumer-zk.xml │ ├── dubbo-demo-service-provider │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── provider │ │ │ │ ├── ApplicationProvider.java │ │ │ │ ├── DemoServiceImpl.java │ │ │ │ ├── GreetingServiceImpl.java │ │ │ │ ├── ServiceDemoMetadataParamsFilter.java │ │ │ │ └── TestFailoverCondition.java │ │ │ └── resources │ │ │ ├── META-INF │ │ │ └── dubbo │ │ │ │ └── internal │ │ │ │ ├── org.apache.dubbo.metadata.MetadataParamsFilter │ │ │ │ └── org.apache.dubbo.metadata.store.failover.FailoverCondition │ │ │ ├── dubbo.properties │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ ├── dubbo-provider-multiple.xml │ │ │ ├── dubbo-provider-sofaregistry.xml │ │ │ ├── dubbo-provider-zk-apollo.xml │ │ │ ├── dubbo-provider-zk-sofaregistry.xml │ │ │ └── dubbo-provider-zk.xml │ ├── dubbo-demo-service-provider2 │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── provider │ │ │ │ ├── ApplicationProvider2.java │ │ │ │ └── GreetingServiceImpl.java │ │ │ └── resources │ │ │ ├── dubbo.properties │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ └── dubbo-provider-zk.xml │ └── pom.xml ├── dubbo-demo-xml │ ├── dubbo-demo-xml-consumer │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── consumer │ │ │ │ └── Application.java │ │ │ └── resources │ │ │ ├── dubbo.properties │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ └── dubbo-consumer.xml │ ├── dubbo-demo-xml-provider │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── demo │ │ │ │ └── provider │ │ │ │ ├── Application.java │ │ │ │ ├── DemoServiceImpl.java │ │ │ │ └── GreetingServiceImpl.java │ │ │ └── resources │ │ │ ├── dubbo.properties │ │ │ ├── log4j.properties │ │ │ └── spring │ │ │ └── dubbo-provider.xml │ └── pom.xml └── pom.xml ├── dubbo-dependencies-bom └── pom.xml ├── dubbo-dependencies ├── dubbo-dependencies-zookeeper │ └── pom.xml └── pom.xml ├── dubbo-distribution ├── pom.xml └── src │ └── assembly │ ├── bin-release.xml │ └── source-release.xml ├── dubbo-filter ├── dubbo-filter-cache │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── cache │ │ │ │ ├── Cache.java │ │ │ │ ├── CacheFactory.java │ │ │ │ ├── filter │ │ │ │ └── CacheFilter.java │ │ │ │ └── support │ │ │ │ ├── AbstractCacheFactory.java │ │ │ │ ├── expiring │ │ │ │ ├── ExpiringCache.java │ │ │ │ ├── ExpiringCacheFactory.java │ │ │ │ └── ExpiringMap.java │ │ │ │ ├── jcache │ │ │ │ ├── JCache.java │ │ │ │ └── JCacheFactory.java │ │ │ │ ├── lfu │ │ │ │ ├── LfuCache.java │ │ │ │ └── LfuCacheFactory.java │ │ │ │ ├── lru │ │ │ │ ├── LruCache.java │ │ │ │ └── LruCacheFactory.java │ │ │ │ └── threadlocal │ │ │ │ ├── ThreadLocalCache.java │ │ │ │ └── ThreadLocalCacheFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.cache.CacheFactory │ │ │ └── org.apache.dubbo.rpc.Filter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── cache │ │ ├── filter │ │ └── CacheFilterTest.java │ │ └── support │ │ ├── AbstractCacheFactoryTest.java │ │ ├── expiring │ │ └── ExpiringCacheFactoryTest.java │ │ ├── jcache │ │ └── JCacheFactoryTest.java │ │ ├── lru │ │ └── LruCacheFactoryTest.java │ │ └── threadlocal │ │ └── ThreadLocalCacheFactoryTest.java ├── dubbo-filter-validation │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── validation │ │ │ │ ├── MethodValidated.java │ │ │ │ ├── Validation.java │ │ │ │ ├── Validator.java │ │ │ │ ├── filter │ │ │ │ └── ValidationFilter.java │ │ │ │ └── support │ │ │ │ ├── AbstractValidation.java │ │ │ │ └── jvalidation │ │ │ │ ├── JValidation.java │ │ │ │ └── JValidator.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.rpc.Filter │ │ │ └── org.apache.dubbo.validation.Validation │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── validation │ │ ├── filter │ │ └── ValidationFilterTest.java │ │ └── support │ │ └── jvalidation │ │ ├── JValidationTest.java │ │ ├── JValidatorTest.java │ │ └── mock │ │ ├── JValidatorTestTarget.java │ │ └── ValidationParameter.java └── pom.xml ├── dubbo-metadata ├── dubbo-metadata-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ ├── DefaultMetadataParamsFilter.java │ │ │ │ ├── DynamicConfigurationServiceNameMapping.java │ │ │ │ ├── MappingChangedEvent.java │ │ │ │ ├── MappingListener.java │ │ │ │ ├── MetadataChangeListener.java │ │ │ │ ├── MetadataConstants.java │ │ │ │ ├── MetadataInfo.java │ │ │ │ ├── MetadataParamsFilter.java │ │ │ │ ├── MetadataService.java │ │ │ │ ├── MetadataServiceExporter.java │ │ │ │ ├── MetadataServiceType.java │ │ │ │ ├── RevisionResolver.java │ │ │ │ ├── ServiceNameMapping.java │ │ │ │ ├── WritableMetadataService.java │ │ │ │ ├── definition │ │ │ │ ├── MethodDefinitionBuilder.java │ │ │ │ ├── ServiceDefinitionBuilder.java │ │ │ │ ├── TypeDefinitionBuilder.java │ │ │ │ ├── builder │ │ │ │ │ ├── ArrayTypeBuilder.java │ │ │ │ │ ├── CollectionTypeBuilder.java │ │ │ │ │ ├── DefaultTypeBuilder.java │ │ │ │ │ ├── EnumTypeBuilder.java │ │ │ │ │ ├── MapTypeBuilder.java │ │ │ │ │ └── TypeBuilder.java │ │ │ │ ├── model │ │ │ │ │ ├── FullServiceDefinition.java │ │ │ │ │ ├── MethodDefinition.java │ │ │ │ │ ├── ServiceDefinition.java │ │ │ │ │ └── TypeDefinition.java │ │ │ │ └── util │ │ │ │ │ ├── ClassUtils.java │ │ │ │ │ └── JaketConfigurationUtils.java │ │ │ │ ├── report │ │ │ │ ├── MetadataReport.java │ │ │ │ ├── MetadataReportFactory.java │ │ │ │ ├── MetadataReportInstance.java │ │ │ │ ├── identifier │ │ │ │ │ ├── BaseApplicationMetadataIdentifier.java │ │ │ │ │ ├── BaseMetadataIdentifier.java │ │ │ │ │ ├── BaseServiceMetadataIdentifier.java │ │ │ │ │ ├── KeyTypeEnum.java │ │ │ │ │ ├── MetadataIdentifier.java │ │ │ │ │ ├── ServiceMetadataIdentifier.java │ │ │ │ │ └── SubscriberMetadataIdentifier.java │ │ │ │ └── support │ │ │ │ │ ├── AbstractMetadataReport.java │ │ │ │ │ ├── AbstractMetadataReportFactory.java │ │ │ │ │ └── Constants.java │ │ │ │ ├── rest │ │ │ │ ├── AbstractAnnotatedMethodParameterProcessor.java │ │ │ │ ├── AbstractServiceRestMetadataResolver.java │ │ │ │ ├── AnnotatedMethodParameterProcessor.java │ │ │ │ ├── ClassPathServiceRestMetadataReader.java │ │ │ │ ├── DefaultServiceRestMetadataResolver.java │ │ │ │ ├── RequestMetadata.java │ │ │ │ ├── RestMetadataConstants.java │ │ │ │ ├── RestMethodMetadata.java │ │ │ │ ├── ServiceRestMetadata.java │ │ │ │ ├── ServiceRestMetadataReader.java │ │ │ │ ├── ServiceRestMetadataResolver.java │ │ │ │ ├── jaxrs │ │ │ │ │ ├── DefaultValueParameterProcessor.java │ │ │ │ │ ├── FormParamParameterProcessor.java │ │ │ │ │ ├── HeaderParamParameterProcessor.java │ │ │ │ │ ├── JAXRSServiceRestMetadataResolver.java │ │ │ │ │ ├── MatrixParamParameterProcessor.java │ │ │ │ │ ├── ParamAnnotationParameterProcessor.java │ │ │ │ │ └── QueryParamParameterProcessor.java │ │ │ │ └── springmvc │ │ │ │ │ ├── AbstractRequestAnnotationParameterProcessor.java │ │ │ │ │ ├── RequestHeaderParameterProcessor.java │ │ │ │ │ ├── RequestParamParameterProcessor.java │ │ │ │ │ └── SpringMvcServiceRestMetadataResolver.java │ │ │ │ └── store │ │ │ │ └── AbstractAbstractWritableMetadataService.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.metadata.MetadataParamsFilter │ │ │ ├── org.apache.dubbo.metadata.ServiceNameMapping │ │ │ ├── org.apache.dubbo.metadata.definition.builder.TypeBuilder │ │ │ ├── org.apache.dubbo.metadata.rest.AnnotatedMethodParameterProcessor │ │ │ └── org.apache.dubbo.metadata.rest.ServiceRestMetadataResolver │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── metadata │ │ │ ├── DemoService.java │ │ │ ├── MetadataInfoTest.java │ │ │ ├── MetadataServiceTypeTest.java │ │ │ ├── ServiceNameMappingTest.java │ │ │ ├── definition │ │ │ ├── MetadataTest.java │ │ │ ├── MetadataUtils.java │ │ │ ├── ServiceDefinitionBuilderTest.java │ │ │ ├── Test3TypeBuilder.java │ │ │ ├── TestTypeBuilder.java │ │ │ ├── TypeDefinitionBuilderTest.java │ │ │ ├── common │ │ │ │ ├── ClassExtendsMap.java │ │ │ │ ├── ColorEnum.java │ │ │ │ ├── OuterClass.java │ │ │ │ ├── ResultWithRawCollections.java │ │ │ │ └── TestService.java │ │ │ └── service │ │ │ │ ├── ComplexObject.java │ │ │ │ └── DemoService.java │ │ │ ├── report │ │ │ ├── identifier │ │ │ │ ├── KeyTypeEnumTest.java │ │ │ │ └── MetadataIdentifierTest.java │ │ │ └── support │ │ │ │ ├── AbstractMetadataReportFactoryTest.java │ │ │ │ └── AbstractMetadataReportTest.java │ │ │ ├── rest │ │ │ ├── DefaultRestService.java │ │ │ ├── RestService.java │ │ │ ├── SpringRestService.java │ │ │ ├── StandardRestService.java │ │ │ ├── User.java │ │ │ ├── jaxrs │ │ │ │ └── JAXRSServiceRestMetadataResolverTest.java │ │ │ └── springmvc │ │ │ │ └── SpringMvcServiceRestMetadataResolverTest.java │ │ │ ├── store │ │ │ ├── InterfaceNameTestService.java │ │ │ ├── InterfaceNameTestService2.java │ │ │ └── RetryTestService.java │ │ │ └── test │ │ │ ├── JTestMetadataReport4Test.java │ │ │ └── JTestMetadataReportFactory4Test.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ ├── internal │ │ ├── org.apache.dubbo.metadata.definition.builder.TypeBuilder │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ ├── jax-rs-service-rest-metadata.json │ │ ├── service-name-mapping.properties │ │ └── spring-mvc-servoce-rest-metadata.json ├── dubbo-metadata-definition-protobuf │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── definition │ │ │ │ └── protobuf │ │ │ │ └── ProtobufTypeBuilder.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.definition.builder.TypeBuilder │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ └── definition │ │ └── protobuf │ │ ├── ProtobufTypeBuilderTest.java │ │ └── model │ │ ├── GooglePB.java │ │ └── ServiceInterface.java ├── dubbo-metadata-processor │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── annotation │ │ │ │ └── processing │ │ │ │ ├── AbstractServiceAnnotationProcessor.java │ │ │ │ ├── ClassPathMetadataStorage.java │ │ │ │ ├── ServiceDefinitionMetadataAnnotationProcessor.java │ │ │ │ ├── builder │ │ │ │ ├── ArrayTypeDefinitionBuilder.java │ │ │ │ ├── CollectionTypeDefinitionBuilder.java │ │ │ │ ├── DeclaredTypeDefinitionBuilder.java │ │ │ │ ├── EnumTypeDefinitionBuilder.java │ │ │ │ ├── GeneralTypeDefinitionBuilder.java │ │ │ │ ├── MapTypeDefinitionBuilder.java │ │ │ │ ├── MethodDefinitionBuilder.java │ │ │ │ ├── PrimitiveTypeDefinitionBuilder.java │ │ │ │ ├── ServiceDefinitionBuilder.java │ │ │ │ ├── SimpleTypeDefinitionBuilder.java │ │ │ │ └── TypeDefinitionBuilder.java │ │ │ │ ├── rest │ │ │ │ ├── AbstractAnnotatedMethodParameterProcessor.java │ │ │ │ ├── AbstractServiceRestMetadataResolver.java │ │ │ │ ├── AnnotatedMethodParameterProcessor.java │ │ │ │ ├── DefaultServiceRestMetadataResolver.java │ │ │ │ ├── ServiceRestMetadataAnnotationProcessor.java │ │ │ │ ├── ServiceRestMetadataResolver.java │ │ │ │ ├── ServiceRestMetadataStorage.java │ │ │ │ ├── jaxrs │ │ │ │ │ ├── DefaultValueParameterProcessor.java │ │ │ │ │ ├── FormParamParameterProcessor.java │ │ │ │ │ ├── HeaderParamParameterProcessor.java │ │ │ │ │ ├── JAXRSServiceRestMetadataResolver.java │ │ │ │ │ ├── MatrixParamParameterProcessor.java │ │ │ │ │ ├── ParamAnnotationParameterProcessor.java │ │ │ │ │ └── QueryParamParameterProcessor.java │ │ │ │ └── springmvc │ │ │ │ │ ├── AbstractRequestAnnotationParameterProcessor.java │ │ │ │ │ ├── RequestHeaderParameterProcessor.java │ │ │ │ │ ├── RequestParamParameterProcessor.java │ │ │ │ │ └── SpringMvcServiceRestMetadataResolver.java │ │ │ │ └── util │ │ │ │ ├── AnnotationUtils.java │ │ │ │ ├── ExecutableElementComparator.java │ │ │ │ ├── FieldUtils.java │ │ │ │ ├── LoggerUtils.java │ │ │ │ ├── MemberUtils.java │ │ │ │ ├── MethodUtils.java │ │ │ │ ├── ServiceAnnotationUtils.java │ │ │ │ └── TypeUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ ├── dubbo │ │ │ └── internal │ │ │ │ ├── org.apache.dubbo.metadata.annotation.processing.builder.TypeDefinitionBuilder │ │ │ │ ├── org.apache.dubbo.metadata.annotation.processing.rest.AnnotatedMethodParameterProcessor │ │ │ │ └── org.apache.dubbo.metadata.annotation.processing.rest.ServiceRestMetadataResolver │ │ │ └── services │ │ │ └── javax.annotation.processing.Processor │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ ├── annotation │ │ └── processing │ │ │ ├── AbstractAnnotationProcessingTest.java │ │ │ ├── AnnotationProcessingTestProcessor.java │ │ │ ├── CompilerInvocationInterceptor.java │ │ │ ├── builder │ │ │ ├── ArrayTypeDefinitionBuilderTest.java │ │ │ ├── CollectionTypeDefinitionBuilderTest.java │ │ │ ├── EnumTypeDefinitionBuilderTest.java │ │ │ ├── GeneralTypeDefinitionBuilderTest.java │ │ │ ├── MapTypeDefinitionBuilderTest.java │ │ │ ├── PrimitiveTypeDefinitionBuilderTest.java │ │ │ ├── ServiceDefinitionBuilderTest.java │ │ │ └── SimpleTypeDefinitionBuilderTest.java │ │ │ ├── model │ │ │ ├── ArrayTypeModel.java │ │ │ ├── CollectionTypeModel.java │ │ │ ├── Color.java │ │ │ ├── MapTypeModel.java │ │ │ ├── Model.java │ │ │ ├── PrimitiveTypeModel.java │ │ │ └── SimpleTypeModel.java │ │ │ ├── rest │ │ │ └── AnnotatedMethodParameterProcessorTest.java │ │ │ └── util │ │ │ ├── AnnotationUtilsTest.java │ │ │ ├── FieldUtilsTest.java │ │ │ ├── LoggerUtilsTest.java │ │ │ ├── MemberUtilsTest.java │ │ │ ├── MethodUtilsTest.java │ │ │ ├── ServiceAnnotationUtilsTest.java │ │ │ └── TypeUtilsTest.java │ │ ├── rest │ │ ├── DefaultRestService.java │ │ ├── RestService.java │ │ ├── SpringRestService.java │ │ ├── StandardRestService.java │ │ └── User.java │ │ └── tools │ │ ├── Ancestor.java │ │ ├── Compiler.java │ │ ├── CompilerTest.java │ │ ├── DefaultRestServiceTest.java │ │ ├── DefaultTestService.java │ │ ├── GenericTestService.java │ │ ├── Parent.java │ │ ├── RestServiceTest.java │ │ ├── SpringRestServiceTest.java │ │ ├── StandardRestServiceTest.java │ │ ├── TestProcessor.java │ │ ├── TestService.java │ │ └── TestServiceImpl.java ├── dubbo-metadata-report-consul │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── metadata │ │ │ └── store │ │ │ └── consul │ │ │ ├── ConsulMetadataReport.java │ │ │ └── ConsulMetadataReportFactory.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory ├── dubbo-metadata-report-etcd │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── store │ │ │ │ └── etcd │ │ │ │ ├── EtcdMetadataReport.java │ │ │ │ └── EtcdMetadataReportFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ └── store │ │ └── etcd │ │ ├── EtcdMetadata4TstService.java │ │ └── EtcdMetadataReportTest.java ├── dubbo-metadata-report-failover │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── store │ │ │ │ └── failover │ │ │ │ ├── FailoverCondition.java │ │ │ │ ├── FailoverMetadataReport.java │ │ │ │ ├── FailoverMetadataReportFactory.java │ │ │ │ └── StrategyMetadataReport.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── metadata │ │ │ └── store │ │ │ └── failover │ │ │ ├── FailoverMetadataReportTest.java │ │ │ ├── MockAllFailoverCondition.java │ │ │ ├── MockLocalFailoverCondition.java │ │ │ ├── MockMetadataReport.java │ │ │ └── MockMetadataReportFactory.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ ├── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── org.apache.dubbo.metadata.store.failover.FailoverCondition ├── dubbo-metadata-report-nacos │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── store │ │ │ │ └── nacos │ │ │ │ ├── NacosMetadataReport.java │ │ │ │ └── NacosMetadataReportFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ └── store │ │ └── nacos │ │ └── NacosMetadata4TstService.java ├── dubbo-metadata-report-redis │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── store │ │ │ │ └── redis │ │ │ │ ├── RedisMetadataReport.java │ │ │ │ └── RedisMetadataReportFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ └── store │ │ └── redis │ │ ├── RedisMetadata4TstService.java │ │ └── RedisMetadataReportTest.java ├── dubbo-metadata-report-zookeeper │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── metadata │ │ │ │ └── store │ │ │ │ └── zookeeper │ │ │ │ ├── ZookeeperMetadataReport.java │ │ │ │ └── ZookeeperMetadataReportFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.metadata.report.MetadataReportFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── metadata │ │ └── store │ │ └── zookeeper │ │ ├── ZookeeperMetadataReport4TstService.java │ │ └── ZookeeperMetadataReportTest.java └── pom.xml ├── dubbo-monitor ├── dubbo-monitor-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── monitor │ │ │ │ ├── Constants.java │ │ │ │ ├── MetricsService.java │ │ │ │ ├── Monitor.java │ │ │ │ ├── MonitorFactory.java │ │ │ │ ├── MonitorService.java │ │ │ │ └── support │ │ │ │ ├── AbstractMonitorFactory.java │ │ │ │ ├── MetricsServiceDetector.java │ │ │ │ ├── MonitorFilter.java │ │ │ │ └── MonitorServiceDetector.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.rpc.Filter │ │ │ └── org.apache.dubbo.rpc.model.BuiltinServiceDetector │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── monitor │ │ └── support │ │ ├── AbstractMonitorFactoryTest.java │ │ └── MonitorFilterTest.java ├── dubbo-monitor-default │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── monitor │ │ │ │ └── dubbo │ │ │ │ ├── DubboMonitor.java │ │ │ │ ├── DubboMonitorFactory.java │ │ │ │ ├── MetricsFilter.java │ │ │ │ └── Statistics.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.monitor.MonitorFactory │ │ │ └── org.apache.dubbo.rpc.Filter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── monitor │ │ └── dubbo │ │ ├── AppResponseBuilder.java │ │ ├── DubboMonitorFactoryTest.java │ │ ├── DubboMonitorTest.java │ │ ├── MetricsFilterTest.java │ │ ├── MockMonitorService.java │ │ ├── StatisticsTest.java │ │ └── service │ │ └── DemoService.java └── pom.xml ├── dubbo-plugin ├── dubbo-auth │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── auth │ │ │ │ ├── AccessKeyAuthenticator.java │ │ │ │ ├── Constants.java │ │ │ │ ├── DefaultAccessKeyStorage.java │ │ │ │ ├── exception │ │ │ │ ├── AccessKeyNotFoundException.java │ │ │ │ └── RpcAuthenticationException.java │ │ │ │ ├── filter │ │ │ │ ├── ConsumerSignFilter.java │ │ │ │ └── ProviderAuthFilter.java │ │ │ │ ├── model │ │ │ │ └── AccessKeyPair.java │ │ │ │ ├── spi │ │ │ │ ├── AccessKeyStorage.java │ │ │ │ └── Authenticator.java │ │ │ │ └── utils │ │ │ │ └── SignatureUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.auth.spi.AccessKeyStorage │ │ │ ├── org.apache.dubbo.auth.spi.Authenticator │ │ │ └── org.apache.dubbo.rpc.Filter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── auth │ │ ├── AccessKeyAuthenticatorTest.java │ │ ├── DefaultAccessKeyStorageTest.java │ │ ├── filter │ │ ├── ConsumerSignFilterTest.java │ │ └── ProviderAuthFilterTest.java │ │ └── utils │ │ └── SignatureUtilsTest.java ├── dubbo-qos │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── qos │ │ │ │ ├── command │ │ │ │ ├── BaseCommand.java │ │ │ │ ├── CommandContext.java │ │ │ │ ├── CommandContextFactory.java │ │ │ │ ├── CommandExecutor.java │ │ │ │ ├── DefaultCommandExecutor.java │ │ │ │ ├── NoSuchCommandException.java │ │ │ │ ├── annotation │ │ │ │ │ └── Cmd.java │ │ │ │ ├── decoder │ │ │ │ │ ├── HttpCommandDecoder.java │ │ │ │ │ └── TelnetCommandDecoder.java │ │ │ │ ├── impl │ │ │ │ │ ├── Help.java │ │ │ │ │ ├── Ls.java │ │ │ │ │ ├── Offline.java │ │ │ │ │ ├── Online.java │ │ │ │ │ ├── PublishMetadata.java │ │ │ │ │ ├── Quit.java │ │ │ │ │ ├── Ready.java │ │ │ │ │ └── Version.java │ │ │ │ └── util │ │ │ │ │ ├── CommandHelper.java │ │ │ │ │ └── ServiceCheckUtils.java │ │ │ │ ├── common │ │ │ │ └── QosConstants.java │ │ │ │ ├── legacy │ │ │ │ ├── ChangeTelnetHandler.java │ │ │ │ ├── CountTelnetHandler.java │ │ │ │ ├── CurrentTelnetHandler.java │ │ │ │ ├── InvokeTelnetHandler.java │ │ │ │ ├── ListTelnetHandler.java │ │ │ │ ├── LogTelnetHandler.java │ │ │ │ ├── PortTelnetHandler.java │ │ │ │ ├── SelectTelnetHandler.java │ │ │ │ ├── ShutdownTelnetHandler.java │ │ │ │ └── TraceTelnetHandler.java │ │ │ │ ├── protocol │ │ │ │ └── QosProtocolWrapper.java │ │ │ │ ├── server │ │ │ │ ├── DubboLogo.java │ │ │ │ ├── Server.java │ │ │ │ └── handler │ │ │ │ │ ├── HttpProcessHandler.java │ │ │ │ │ ├── LocalHostPermitHandler.java │ │ │ │ │ ├── QosProcessHandler.java │ │ │ │ │ └── TelnetProcessHandler.java │ │ │ │ └── textui │ │ │ │ ├── TComponent.java │ │ │ │ ├── TKv.java │ │ │ │ ├── TLadder.java │ │ │ │ ├── TTable.java │ │ │ │ └── TTree.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.qos.command.BaseCommand │ │ │ ├── org.apache.dubbo.remoting.telnet.TelnetHandler │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── qos │ │ │ ├── command │ │ │ ├── CommandContextFactoryTest.java │ │ │ ├── CommandContextTest.java │ │ │ ├── DefaultCommandExecutorTest.java │ │ │ ├── GreetingCommand.java │ │ │ ├── decoder │ │ │ │ ├── HttpCommandDecoderTest.java │ │ │ │ └── TelnetCommandDecoderTest.java │ │ │ ├── impl │ │ │ │ ├── HelpTest.java │ │ │ │ ├── LsTest.java │ │ │ │ ├── OfflineTest.java │ │ │ │ ├── OnlineTest.java │ │ │ │ ├── QuitTest.java │ │ │ │ ├── TestInterface.java │ │ │ │ ├── TestInterface2.java │ │ │ │ └── TestRegistryFactory.java │ │ │ └── util │ │ │ │ └── CommandHelperTest.java │ │ │ ├── legacy │ │ │ ├── ChangeTelnetHandlerTest.java │ │ │ ├── CurrentTelnetHandlerTest.java │ │ │ ├── InvokerTelnetHandlerTest.java │ │ │ ├── ListTelnetHandlerTest.java │ │ │ ├── LogTelnetHandlerTest.java │ │ │ ├── PortTelnetHandlerTest.java │ │ │ ├── ProtocolUtils.java │ │ │ ├── SelectTelnetHandlerTest.java │ │ │ ├── ShutdownTelnetHandlerTest.java │ │ │ └── service │ │ │ │ ├── CustomArgument.java │ │ │ │ ├── DemoService.java │ │ │ │ ├── DemoServiceImpl.java │ │ │ │ ├── Man.java │ │ │ │ ├── NonSerialized.java │ │ │ │ ├── Person.java │ │ │ │ ├── Type.java │ │ │ │ └── generic │ │ │ │ ├── DemoException.java │ │ │ │ ├── DemoService.java │ │ │ │ ├── DemoServiceImpl.java │ │ │ │ ├── GenericServiceTest.java │ │ │ │ └── User.java │ │ │ ├── protocol │ │ │ └── QosProtocolWrapperTest.java │ │ │ ├── server │ │ │ └── handler │ │ │ │ ├── HttpProcessHandlerTest.java │ │ │ │ ├── LocalHostPermitHandlerTest.java │ │ │ │ ├── QosProcessHandlerTest.java │ │ │ │ └── TelnetProcessHandlerTest.java │ │ │ └── textui │ │ │ ├── TKvTest.java │ │ │ ├── TLadderTest.java │ │ │ ├── TTableTest.java │ │ │ └── TTreeTest.java │ │ └── resources │ │ └── META-INF │ │ └── services │ │ ├── org.apache.dubbo.qos.command.BaseCommand │ │ └── org.apache.dubbo.registry.RegistryFactory └── pom.xml ├── dubbo-registry ├── dubbo-registry-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ ├── AddressListener.java │ │ │ │ ├── Constants.java │ │ │ │ ├── ListenerRegistryWrapper.java │ │ │ │ ├── NotifyListener.java │ │ │ │ ├── Registry.java │ │ │ │ ├── RegistryFactory.java │ │ │ │ ├── RegistryFactoryWrapper.java │ │ │ │ ├── RegistryService.java │ │ │ │ ├── RegistryServiceListener.java │ │ │ │ ├── client │ │ │ │ ├── AbstractServiceDiscovery.java │ │ │ │ ├── AbstractServiceDiscoveryFactory.java │ │ │ │ ├── DefaultRegistryClusterIdentifier.java │ │ │ │ ├── DefaultServiceDiscoveryFactory.java │ │ │ │ ├── DefaultServiceInstance.java │ │ │ │ ├── EventPublishingServiceDiscovery.java │ │ │ │ ├── FileSystemServiceDiscovery.java │ │ │ │ ├── InstanceAddressURL.java │ │ │ │ ├── RegistryClusterIdentifier.java │ │ │ │ ├── ServiceDiscovery.java │ │ │ │ ├── ServiceDiscoveryFactory.java │ │ │ │ ├── ServiceDiscoveryRegistry.java │ │ │ │ ├── ServiceDiscoveryRegistryDirectory.java │ │ │ │ ├── ServiceDiscoveryRegistryFactory.java │ │ │ │ ├── ServiceInstance.java │ │ │ │ ├── ServiceInstanceCustomizer.java │ │ │ │ ├── event │ │ │ │ │ ├── ServiceDiscoveryDestroyedEvent.java │ │ │ │ │ ├── ServiceDiscoveryDestroyingEvent.java │ │ │ │ │ ├── ServiceDiscoveryEvent.java │ │ │ │ │ ├── ServiceDiscoveryExceptionEvent.java │ │ │ │ │ ├── ServiceDiscoveryInitializedEvent.java │ │ │ │ │ ├── ServiceDiscoveryInitializingEvent.java │ │ │ │ │ ├── ServiceInstanceEvent.java │ │ │ │ │ ├── ServiceInstancePreRegisteredEvent.java │ │ │ │ │ ├── ServiceInstancePreUnregisteredEvent.java │ │ │ │ │ ├── ServiceInstanceRegisteredEvent.java │ │ │ │ │ ├── ServiceInstanceUnregisteredEvent.java │ │ │ │ │ ├── ServiceInstancesChangedEvent.java │ │ │ │ │ └── listener │ │ │ │ │ │ ├── LoggingEventListener.java │ │ │ │ │ │ └── ServiceInstancesChangedListener.java │ │ │ │ ├── metadata │ │ │ │ │ ├── MetadataServiceNameMapping.java │ │ │ │ │ ├── MetadataServiceURLBuilder.java │ │ │ │ │ ├── MetadataServiceURLParamsMetadataCustomizer.java │ │ │ │ │ ├── MetadataUtils.java │ │ │ │ │ ├── ProtocolPortsMetadataCustomizer.java │ │ │ │ │ ├── RestProtocolSubscribedURLsSynthesizer.java │ │ │ │ │ ├── ServiceInstanceMetadataCustomizer.java │ │ │ │ │ ├── ServiceInstanceMetadataUtils.java │ │ │ │ │ ├── SpringCloudMetadataServiceURLBuilder.java │ │ │ │ │ ├── StandardMetadataServiceURLBuilder.java │ │ │ │ │ ├── SubscribedURLsSynthesizer.java │ │ │ │ │ └── store │ │ │ │ │ │ ├── InMemoryWritableMetadataService.java │ │ │ │ │ │ └── RemoteMetadataServiceImpl.java │ │ │ │ ├── migration │ │ │ │ │ ├── DefaultMigrationAddressComparator.java │ │ │ │ │ ├── InvokersChangedListener.java │ │ │ │ │ ├── MigrationAddressComparator.java │ │ │ │ │ ├── MigrationInvoker.java │ │ │ │ │ ├── MigrationRuleHandler.java │ │ │ │ │ ├── MigrationRuleListener.java │ │ │ │ │ └── ServiceDiscoveryMigrationInvoker.java │ │ │ │ ├── package-info.java │ │ │ │ └── selector │ │ │ │ │ ├── RandomServiceInstanceSelector.java │ │ │ │ │ └── ServiceInstanceSelector.java │ │ │ │ ├── integration │ │ │ │ ├── AbstractConfiguratorListener.java │ │ │ │ ├── DynamicDirectory.java │ │ │ │ ├── InterfaceCompatibleRegistryProtocol.java │ │ │ │ ├── InvokersChangedListener.java │ │ │ │ ├── RegistryDirectory.java │ │ │ │ ├── RegistryProtocol.java │ │ │ │ └── RegistryProtocolListener.java │ │ │ │ ├── retry │ │ │ │ ├── AbstractRetryTask.java │ │ │ │ ├── FailedRegisteredTask.java │ │ │ │ ├── FailedSubscribedTask.java │ │ │ │ ├── FailedUnregisteredTask.java │ │ │ │ ├── FailedUnsubscribedTask.java │ │ │ │ └── ReExportTask.java │ │ │ │ ├── status │ │ │ │ └── RegistryStatusChecker.java │ │ │ │ └── support │ │ │ │ ├── AbstractRegistry.java │ │ │ │ ├── AbstractRegistryFactory.java │ │ │ │ ├── FailbackRegistry.java │ │ │ │ └── SkipFailbackWrapperException.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.common.status.StatusChecker │ │ │ ├── org.apache.dubbo.event.EventListener │ │ │ ├── org.apache.dubbo.metadata.ServiceNameMapping │ │ │ ├── org.apache.dubbo.metadata.WritableMetadataService │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.RegistryClusterIdentifier │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceInstanceCustomizer │ │ │ ├── org.apache.dubbo.registry.client.metadata.MetadataServiceURLBuilder │ │ │ ├── org.apache.dubbo.registry.client.metadata.SubscribedURLsSynthesizer │ │ │ ├── org.apache.dubbo.registry.client.migration.MigrationAddressComparator │ │ │ ├── org.apache.dubbo.registry.client.selector.ServiceInstanceSelector │ │ │ ├── org.apache.dubbo.registry.integration.RegistryProtocolListener │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── registry │ │ │ ├── PerformanceRegistryTest.java │ │ │ ├── PerformanceUtils.java │ │ │ ├── RegistryFactoryWrapperTest.java │ │ │ ├── RegistryServiceListener1.java │ │ │ ├── RegistryServiceListener2.java │ │ │ ├── SimpleRegistryFactory.java │ │ │ ├── ZKTools.java │ │ │ ├── client │ │ │ ├── DefaultServiceInstanceTest.java │ │ │ ├── EventPublishingServiceDiscoveryTest.java │ │ │ ├── FileSystemServiceDiscoveryTest.java │ │ │ ├── InMemoryServiceDiscovery.java │ │ │ ├── ServiceDiscoveryTest.java │ │ │ ├── ServieDiscoveryRegistryTest.java │ │ │ ├── event │ │ │ │ └── listener │ │ │ │ │ ├── LoggingEventListenerTest.java │ │ │ │ │ └── ServiceInstancesChangedListenerTest.java │ │ │ ├── fastjson │ │ │ │ └── DefaultServiceInstanceDeserializerTest.java │ │ │ └── metadata │ │ │ │ ├── MetadataServiceURLBuilderTest.java │ │ │ │ ├── ServiceInstanceMetadataUtilsTest.java │ │ │ │ └── SpringCloudMetadataServiceURLBuilderTest.java │ │ │ └── support │ │ │ ├── AbstractRegistryFactoryTest.java │ │ │ ├── AbstractRegistryTest.java │ │ │ ├── FailbackRegistryTest.java │ │ │ └── ServiceOrientedRegistryTest.java │ │ └── resources │ │ ├── META-INF │ │ ├── dubbo │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.RegistryServiceListener │ │ │ └── org.apache.dubbo.registry.client.metadata.proxy.MetadataServiceProxyFactory │ │ └── services │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscovery │ │ └── log4j.xml ├── dubbo-registry-consul │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── consul │ │ │ │ ├── AbstractConsulRegistry.java │ │ │ │ ├── ConsulParameter.java │ │ │ │ ├── ConsulRegistry.java │ │ │ │ ├── ConsulRegistryFactory.java │ │ │ │ ├── ConsulServiceDiscovery.java │ │ │ │ ├── ConsulServiceDiscoveryFactory.java │ │ │ │ ├── ConsulServiceDiscoveryFactory.java~HEAD │ │ │ │ └── ConsulServiceDiscoveryFactory.java~dubbo-master │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── consul │ │ ├── ConsulRegistryTest.java │ │ └── ConsulServiceDiscoveryTest.java ├── dubbo-registry-default │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── dubbo │ │ │ │ ├── DubboRegistry.java │ │ │ │ └── DubboRegistryFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.registry.RegistryFactory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── registry │ │ │ └── dubbo │ │ │ ├── AbstractRegistryService.java │ │ │ ├── DemoService.java │ │ │ ├── DemoServiceImpl.java │ │ │ ├── DubboRegistryTest.java │ │ │ ├── MockChannel.java │ │ │ ├── MockedClient.java │ │ │ ├── RegistryDirectoryTest.java │ │ │ ├── RegistryProtocolTest.java │ │ │ ├── RegistryStatusCheckerTest.java │ │ │ ├── SimpleRegistryExporter.java │ │ │ └── SimpleRegistryService.java │ │ └── resources │ │ └── log4j.xml ├── dubbo-registry-etcd3 │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── etcd │ │ │ │ ├── EtcdRegistry.java │ │ │ │ ├── EtcdRegistryFactory.java │ │ │ │ └── EtcdServiceDiscovery.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscovery │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── etcd │ │ ├── EtcdRegistryTest.java │ │ └── EtcdServiceDiscoveryTest.java ├── dubbo-registry-eureka │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── eureka │ │ │ │ ├── ConfigurableEurekaInstanceConfig.java │ │ │ │ ├── EurekaServiceDiscovery.java │ │ │ │ └── package-info.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscovery │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── eureka │ │ └── EurekaServiceDiscoveryTest.java ├── dubbo-registry-multicast │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── multicast │ │ │ │ ├── MulticastRegistry.java │ │ │ │ ├── MulticastRegistryFactory.java │ │ │ │ └── MulticastServiceDiscovery.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── multicast │ │ ├── MulticastRegistryFactoryTest.java │ │ └── MulticastRegistryTest.java ├── dubbo-registry-multiple │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── multiple │ │ │ │ ├── MultipleRegistry.java │ │ │ │ ├── MultipleRegistryFactory.java │ │ │ │ ├── MultipleRegistryServiceDiscovery.java │ │ │ │ └── MultipleRegistryServiceDiscoveryFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── multiple │ │ ├── MultipleRegistry2S2RTest.java │ │ └── MultipleRegistryTestUtil.java ├── dubbo-registry-nacos │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── registry │ │ │ └── nacos │ │ │ ├── NacosRegistry.java │ │ │ ├── NacosRegistryFactory.java │ │ │ ├── NacosServiceDiscovery.java │ │ │ ├── NacosServiceDiscoveryFactory.java │ │ │ ├── NacosServiceName.java │ │ │ └── util │ │ │ ├── NacosInstanceManageUtil.java │ │ │ └── NacosNamingServiceUtils.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory ├── dubbo-registry-redis │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── redis │ │ │ │ ├── RedisRegistry.java │ │ │ │ └── RedisRegistryFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.registry.RegistryFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── redis │ │ └── RedisRegistryTest.java ├── dubbo-registry-sofa │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── sofa │ │ │ │ ├── SofaRegistry.java │ │ │ │ ├── SofaRegistryConstants.java │ │ │ │ ├── SofaRegistryFactory.java │ │ │ │ ├── SofaRegistryInstance.java │ │ │ │ ├── SofaRegistryServiceDiscovery.java │ │ │ │ └── SofaRegistryServiceDiscoveryFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── registry │ │ │ └── sofa │ │ │ ├── HelloService.java │ │ │ └── HelloServiceImpl.java │ │ └── resources │ │ └── log4j.properties ├── dubbo-registry-zookeeper │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── registry │ │ │ │ └── zookeeper │ │ │ │ ├── ZookeeperInstance.java │ │ │ │ ├── ZookeeperRegistry.java │ │ │ │ ├── ZookeeperRegistryFactory.java │ │ │ │ ├── ZookeeperServiceDiscovery.java │ │ │ │ ├── ZookeeperServiceDiscoveryChangeWatcher.java │ │ │ │ ├── ZookeeperServiceDiscoveryFactory.java │ │ │ │ └── util │ │ │ │ ├── CuratorFrameworkParams.java │ │ │ │ └── CuratorFrameworkUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.registry.RegistryFactory │ │ │ ├── org.apache.dubbo.registry.client.ServiceDiscovery │ │ │ └── org.apache.dubbo.registry.client.ServiceDiscoveryFactory │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── registry │ │ └── zookeeper │ │ ├── ZookeeperRegistryTest.java │ │ └── ZookeeperServiceDiscoveryTest.java └── pom.xml ├── dubbo-remoting ├── dubbo-remoting-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ ├── Channel.java │ │ │ │ ├── ChannelHandler.java │ │ │ │ ├── Client.java │ │ │ │ ├── Codec.java │ │ │ │ ├── Codec2.java │ │ │ │ ├── Constants.java │ │ │ │ ├── Decodeable.java │ │ │ │ ├── Dispatcher.java │ │ │ │ ├── Endpoint.java │ │ │ │ ├── ExecutionException.java │ │ │ │ ├── IdleSensible.java │ │ │ │ ├── RemotingException.java │ │ │ │ ├── RemotingServer.java │ │ │ │ ├── TimeoutException.java │ │ │ │ ├── Transporter.java │ │ │ │ ├── Transporters.java │ │ │ │ ├── buffer │ │ │ │ ├── AbstractChannelBuffer.java │ │ │ │ ├── ByteBufferBackedChannelBuffer.java │ │ │ │ ├── ChannelBuffer.java │ │ │ │ ├── ChannelBufferFactory.java │ │ │ │ ├── ChannelBufferInputStream.java │ │ │ │ ├── ChannelBufferOutputStream.java │ │ │ │ ├── ChannelBuffers.java │ │ │ │ ├── DirectChannelBufferFactory.java │ │ │ │ ├── DynamicChannelBuffer.java │ │ │ │ ├── HeapChannelBuffer.java │ │ │ │ └── HeapChannelBufferFactory.java │ │ │ │ ├── exchange │ │ │ │ ├── ExchangeChannel.java │ │ │ │ ├── ExchangeClient.java │ │ │ │ ├── ExchangeHandler.java │ │ │ │ ├── ExchangeServer.java │ │ │ │ ├── Exchanger.java │ │ │ │ ├── Exchangers.java │ │ │ │ ├── Request.java │ │ │ │ ├── Response.java │ │ │ │ ├── codec │ │ │ │ │ └── ExchangeCodec.java │ │ │ │ └── support │ │ │ │ │ ├── DefaultFuture.java │ │ │ │ │ ├── ExchangeHandlerAdapter.java │ │ │ │ │ ├── ExchangeHandlerDispatcher.java │ │ │ │ │ ├── ExchangeServerDelegate.java │ │ │ │ │ ├── MultiMessage.java │ │ │ │ │ ├── Replier.java │ │ │ │ │ ├── ReplierDispatcher.java │ │ │ │ │ └── header │ │ │ │ │ ├── AbstractTimerTask.java │ │ │ │ │ ├── CloseTimerTask.java │ │ │ │ │ ├── HeaderExchangeChannel.java │ │ │ │ │ ├── HeaderExchangeClient.java │ │ │ │ │ ├── HeaderExchangeHandler.java │ │ │ │ │ ├── HeaderExchangeServer.java │ │ │ │ │ ├── HeaderExchanger.java │ │ │ │ │ ├── HeartbeatHandler.java │ │ │ │ │ ├── HeartbeatTimerTask.java │ │ │ │ │ └── ReconnectTimerTask.java │ │ │ │ ├── telnet │ │ │ │ ├── TelnetHandler.java │ │ │ │ ├── codec │ │ │ │ │ └── TelnetCodec.java │ │ │ │ └── support │ │ │ │ │ ├── Help.java │ │ │ │ │ ├── TelnetHandlerAdapter.java │ │ │ │ │ ├── TelnetUtils.java │ │ │ │ │ └── command │ │ │ │ │ ├── ClearTelnetHandler.java │ │ │ │ │ ├── ExitTelnetHandler.java │ │ │ │ │ ├── HelpTelnetHandler.java │ │ │ │ │ ├── LogTelnetHandler.java │ │ │ │ │ └── StatusTelnetHandler.java │ │ │ │ ├── transport │ │ │ │ ├── AbstractChannel.java │ │ │ │ ├── AbstractChannelHandlerDelegate.java │ │ │ │ ├── AbstractClient.java │ │ │ │ ├── AbstractCodec.java │ │ │ │ ├── AbstractEndpoint.java │ │ │ │ ├── AbstractPeer.java │ │ │ │ ├── AbstractServer.java │ │ │ │ ├── ChannelDelegate.java │ │ │ │ ├── ChannelHandlerAdapter.java │ │ │ │ ├── ChannelHandlerDelegate.java │ │ │ │ ├── ChannelHandlerDispatcher.java │ │ │ │ ├── ClientDelegate.java │ │ │ │ ├── CodecSupport.java │ │ │ │ ├── DecodeHandler.java │ │ │ │ ├── ExceedPayloadLimitException.java │ │ │ │ ├── MultiMessageHandler.java │ │ │ │ ├── ServerDelegate.java │ │ │ │ ├── codec │ │ │ │ │ ├── CodecAdapter.java │ │ │ │ │ └── TransportCodec.java │ │ │ │ └── dispatcher │ │ │ │ │ ├── ChannelEventRunnable.java │ │ │ │ │ ├── ChannelHandlers.java │ │ │ │ │ ├── WrappedChannelHandler.java │ │ │ │ │ ├── all │ │ │ │ │ ├── AllChannelHandler.java │ │ │ │ │ └── AllDispatcher.java │ │ │ │ │ ├── connection │ │ │ │ │ ├── ConnectionOrderedChannelHandler.java │ │ │ │ │ └── ConnectionOrderedDispatcher.java │ │ │ │ │ ├── direct │ │ │ │ │ ├── DirectChannelHandler.java │ │ │ │ │ └── DirectDispatcher.java │ │ │ │ │ ├── execution │ │ │ │ │ ├── ExecutionChannelHandler.java │ │ │ │ │ └── ExecutionDispatcher.java │ │ │ │ │ └── message │ │ │ │ │ ├── MessageOnlyChannelHandler.java │ │ │ │ │ └── MessageOnlyDispatcher.java │ │ │ │ └── utils │ │ │ │ ├── PayloadDropper.java │ │ │ │ └── UrlUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.remoting.Codec2 │ │ │ ├── org.apache.dubbo.remoting.Dispatcher │ │ │ ├── org.apache.dubbo.remoting.exchange.Exchanger │ │ │ └── org.apache.dubbo.remoting.telnet.TelnetHandler │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── remoting │ │ │ ├── ChanelHandlerTest.java │ │ │ ├── MockTransporter.java │ │ │ ├── PerformanceClientCloseTest.java │ │ │ ├── PerformanceClientFixedTest.java │ │ │ ├── PerformanceClientMain.java │ │ │ ├── PerformanceClientTest.java │ │ │ ├── PerformanceServerMain.java │ │ │ ├── PerformanceServerTest.java │ │ │ ├── PerformanceUtils.java │ │ │ ├── TelnetServer.java │ │ │ ├── TransportersTest.java │ │ │ ├── buffer │ │ │ ├── AbstractChannelBufferTest.java │ │ │ ├── ByteBufferBackedChannelBufferTest.java │ │ │ ├── ChannelBufferStreamTest.java │ │ │ ├── DirectChannelBufferTest.java │ │ │ ├── DynamicChannelBufferTest.java │ │ │ └── HeapChannelBufferTest.java │ │ │ ├── codec │ │ │ ├── AbstractMockChannel.java │ │ │ ├── ExchangeCodecTest.java │ │ │ └── TelnetCodecTest.java │ │ │ ├── exchange │ │ │ ├── ExchangersTest.java │ │ │ ├── MockExchanger.java │ │ │ └── support │ │ │ │ ├── DefaultFutureTest.java │ │ │ │ └── header │ │ │ │ ├── HeaderExchangeChannelTest.java │ │ │ │ ├── HeartBeatTaskTest.java │ │ │ │ └── MockChannel.java │ │ │ ├── handler │ │ │ ├── ConnectChannelHandlerTest.java │ │ │ ├── HeaderExchangeHandlerTest.java │ │ │ ├── MockedChannel.java │ │ │ ├── MockedChannelHandler.java │ │ │ └── WrappedChannelHandlerTest.java │ │ │ ├── telnet │ │ │ ├── TelnetUtilsTest.java │ │ │ └── support │ │ │ │ ├── ClearTelnetHandlerTest.java │ │ │ │ ├── ExitTelnetHandlerTest.java │ │ │ │ ├── HelpTelnetHandlerTest.java │ │ │ │ └── StatusTelnetHandlerTest.java │ │ │ ├── transport │ │ │ ├── AbstractCodecTest.java │ │ │ └── codec │ │ │ │ ├── CodecAdapterTest.java │ │ │ │ ├── DeprecatedExchangeCodec.java │ │ │ │ └── DeprecatedTelnetCodec.java │ │ │ └── utils │ │ │ ├── PayloadDropperTest.java │ │ │ └── UrlUtilsTest.java │ │ └── resources │ │ ├── META-INF │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.remoting.Transporter │ │ │ └── org.apache.dubbo.remoting.exchange.Exchanger │ │ └── log4j.xml ├── dubbo-remoting-etcd3 │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── etcd │ │ │ │ ├── AbstractRetryPolicy.java │ │ │ │ ├── ChildListener.java │ │ │ │ ├── Constants.java │ │ │ │ ├── EtcdClient.java │ │ │ │ ├── EtcdTransporter.java │ │ │ │ ├── RetryPolicy.java │ │ │ │ ├── StateListener.java │ │ │ │ ├── jetcd │ │ │ │ ├── ConnectionStateListener.java │ │ │ │ ├── JEtcdClient.java │ │ │ │ ├── JEtcdClientWrapper.java │ │ │ │ ├── JEtcdTransporter.java │ │ │ │ ├── RetryLoops.java │ │ │ │ └── RetryNTimes.java │ │ │ │ ├── option │ │ │ │ └── OptionUtil.java │ │ │ │ └── support │ │ │ │ └── AbstractEtcdClient.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.etcd.EtcdTransporter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── etcd │ │ └── jetcd │ │ ├── JEtcdClientTest.java │ │ ├── JEtcdClientWrapperTest.java │ │ └── LeaseTest.java ├── dubbo-remoting-grizzly │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── transport │ │ │ │ └── grizzly │ │ │ │ ├── GrizzlyChannel.java │ │ │ │ ├── GrizzlyClient.java │ │ │ │ ├── GrizzlyCodecAdapter.java │ │ │ │ ├── GrizzlyHandler.java │ │ │ │ ├── GrizzlyServer.java │ │ │ │ └── GrizzlyTransporter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.Transporter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── transport │ │ └── grizzly │ │ └── GrizzlyTransporterTest.java ├── dubbo-remoting-http │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── http │ │ │ │ ├── HttpBinder.java │ │ │ │ ├── HttpHandler.java │ │ │ │ ├── HttpServer.java │ │ │ │ ├── jetty │ │ │ │ ├── JettyHttpBinder.java │ │ │ │ └── JettyHttpServer.java │ │ │ │ ├── servlet │ │ │ │ ├── BootstrapListener.java │ │ │ │ ├── DispatcherServlet.java │ │ │ │ ├── ServletHttpBinder.java │ │ │ │ ├── ServletHttpServer.java │ │ │ │ └── ServletManager.java │ │ │ │ ├── support │ │ │ │ └── AbstractHttpServer.java │ │ │ │ └── tomcat │ │ │ │ ├── TomcatHttpBinder.java │ │ │ │ └── TomcatHttpServer.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.http.HttpBinder │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── http │ │ ├── jetty │ │ └── JettyHttpBinderTest.java │ │ └── tomcat │ │ └── TomcatHttpBinderTest.java ├── dubbo-remoting-mina │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── transport │ │ │ │ └── mina │ │ │ │ ├── MinaChannel.java │ │ │ │ ├── MinaClient.java │ │ │ │ ├── MinaCodecAdapter.java │ │ │ │ ├── MinaHandler.java │ │ │ │ ├── MinaServer.java │ │ │ │ └── MinaTransporter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.Transporter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── remoting │ │ └── transport │ │ └── mina │ │ ├── ClientToServerTest.java │ │ ├── ClientsTest.java │ │ ├── Hello.java │ │ ├── MinaClientToServerTest.java │ │ ├── World.java │ │ └── WorldHandler.java ├── dubbo-remoting-netty │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── transport │ │ │ │ └── netty │ │ │ │ ├── NettyBackedChannelBuffer.java │ │ │ │ ├── NettyBackedChannelBufferFactory.java │ │ │ │ ├── NettyChannel.java │ │ │ │ ├── NettyClient.java │ │ │ │ ├── NettyCodecAdapter.java │ │ │ │ ├── NettyHandler.java │ │ │ │ ├── NettyHelper.java │ │ │ │ ├── NettyServer.java │ │ │ │ └── NettyTransporter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.Transporter │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── remoting │ │ │ ├── exchange │ │ │ └── support │ │ │ │ └── header │ │ │ │ └── HeartbeatHandlerTest.java │ │ │ └── transport │ │ │ ├── dispatcher │ │ │ └── FakeChannelHandlers.java │ │ │ └── netty │ │ │ ├── ClientReconnectTest.java │ │ │ ├── ClientToServerTest.java │ │ │ ├── ClientsTest.java │ │ │ ├── Hello.java │ │ │ ├── NettyClientTest.java │ │ │ ├── NettyClientToServerTest.java │ │ │ ├── NettyStringTest.java │ │ │ ├── TelnetClientHandler.java │ │ │ ├── TelnetServerHandler.java │ │ │ ├── ThreadNameTest.java │ │ │ ├── World.java │ │ │ └── WorldHandler.java │ │ └── resources │ │ └── log4j.xml ├── dubbo-remoting-netty4 │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── transport │ │ │ │ └── netty4 │ │ │ │ ├── NettyBackedChannelBuffer.java │ │ │ │ ├── NettyChannel.java │ │ │ │ ├── NettyClient.java │ │ │ │ ├── NettyClientHandler.java │ │ │ │ ├── NettyCodecAdapter.java │ │ │ │ ├── NettyEventLoopFactory.java │ │ │ │ ├── NettyServer.java │ │ │ │ ├── NettyServerHandler.java │ │ │ │ ├── NettyTransporter.java │ │ │ │ ├── SslContexts.java │ │ │ │ ├── SslHandlerInitializer.java │ │ │ │ └── logging │ │ │ │ ├── FormattingTuple.java │ │ │ │ └── MessageFormatter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.Transporter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── transport │ │ └── netty4 │ │ ├── ClientReconnectTest.java │ │ ├── ClientToServerTest.java │ │ ├── ClientsTest.java │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── Hello.java │ │ ├── MockResult.java │ │ ├── NettyClientToServerTest.java │ │ ├── NettyTransporterTest.java │ │ ├── ReplierDispatcherTest.java │ │ ├── RpcMessage.java │ │ ├── RpcMessageHandler.java │ │ ├── World.java │ │ └── WorldHandler.java ├── dubbo-remoting-p2p │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── p2p │ │ │ │ ├── Group.java │ │ │ │ ├── Networker.java │ │ │ │ ├── Networkers.java │ │ │ │ ├── Peer.java │ │ │ │ ├── exchange │ │ │ │ ├── ExchangeGroup.java │ │ │ │ ├── ExchangeNetworker.java │ │ │ │ ├── ExchangeNetworkers.java │ │ │ │ ├── ExchangePeer.java │ │ │ │ └── support │ │ │ │ │ ├── AbstractExchangeGroup.java │ │ │ │ │ ├── ExchangeServerPeer.java │ │ │ │ │ ├── FileExchangeGroup.java │ │ │ │ │ ├── FileExchangeNetworker.java │ │ │ │ │ ├── MulticastExchangeGroup.java │ │ │ │ │ └── MulticastExchangeNetworker.java │ │ │ │ └── support │ │ │ │ ├── AbstractGroup.java │ │ │ │ ├── FileGroup.java │ │ │ │ ├── FileNetworker.java │ │ │ │ ├── MulticastGroup.java │ │ │ │ ├── MulticastNetworker.java │ │ │ │ └── ServerPeer.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.p2p.Networker │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── p2p │ │ ├── exchange │ │ └── support │ │ │ └── MulticastExchangeNetworkerTest.java │ │ └── support │ │ ├── FileNetworkerTest.java │ │ └── MulticastNetworkerTest.java ├── dubbo-remoting-redis │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── redis │ │ ├── RedisClient.java │ │ ├── jedis │ │ ├── ClusterRedisClient.java │ │ ├── MonoRedisClient.java │ │ └── SentinelRedisClient.java │ │ └── support │ │ └── AbstractRedisClient.java ├── dubbo-remoting-zookeeper │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── remoting │ │ │ │ └── zookeeper │ │ │ │ ├── ChildListener.java │ │ │ │ ├── DataListener.java │ │ │ │ ├── EventType.java │ │ │ │ ├── StateListener.java │ │ │ │ ├── ZookeeperClient.java │ │ │ │ ├── ZookeeperTransporter.java │ │ │ │ ├── curator │ │ │ │ ├── CuratorZookeeperClient.java │ │ │ │ └── CuratorZookeeperTransporter.java │ │ │ │ └── support │ │ │ │ ├── AbstractZookeeperClient.java │ │ │ │ └── AbstractZookeeperTransporter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.zookeeper.ZookeeperTransporter │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── remoting │ │ └── zookeeper │ │ ├── curator │ │ ├── CuratorZookeeperClientTest.java │ │ └── CuratorZookeeperTransporterTest.java │ │ └── support │ │ └── AbstractZookeeperTransporterTest.java └── pom.xml ├── dubbo-rpc ├── dubbo-rpc-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ ├── com │ │ │ │ └── alibaba │ │ │ │ │ └── dubbo │ │ │ │ │ └── rpc │ │ │ │ │ └── service │ │ │ │ │ ├── EchoService.java │ │ │ │ │ ├── GenericException.java │ │ │ │ │ └── GenericService.java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ ├── AppResponse.java │ │ │ │ ├── AsyncContext.java │ │ │ │ ├── AsyncContextImpl.java │ │ │ │ ├── AsyncRpcResult.java │ │ │ │ ├── AttachmentsAdapter.java │ │ │ │ ├── Constants.java │ │ │ │ ├── Exporter.java │ │ │ │ ├── ExporterListener.java │ │ │ │ ├── Filter.java │ │ │ │ ├── FutureContext.java │ │ │ │ ├── Invocation.java │ │ │ │ ├── InvokeMode.java │ │ │ │ ├── Invoker.java │ │ │ │ ├── InvokerListener.java │ │ │ │ ├── ListenableFilter.java │ │ │ │ ├── Protocol.java │ │ │ │ ├── ProtocolServer.java │ │ │ │ ├── ProxyFactory.java │ │ │ │ ├── Result.java │ │ │ │ ├── RpcConstants.java │ │ │ │ ├── RpcContext.java │ │ │ │ ├── RpcException.java │ │ │ │ ├── RpcInvocation.java │ │ │ │ ├── RpcStatus.java │ │ │ │ ├── TimeoutCountDown.java │ │ │ │ ├── ZoneDetector.java │ │ │ │ ├── filter │ │ │ │ ├── AccessLogFilter.java │ │ │ │ ├── ActiveLimitFilter.java │ │ │ │ ├── ClassLoaderFilter.java │ │ │ │ ├── CompatibleFilter.java │ │ │ │ ├── ConsumerContextFilter.java │ │ │ │ ├── ContextFilter.java │ │ │ │ ├── DeprecatedFilter.java │ │ │ │ ├── EchoFilter.java │ │ │ │ ├── ExceptionFilter.java │ │ │ │ ├── ExecuteLimitFilter.java │ │ │ │ ├── GenericFilter.java │ │ │ │ ├── GenericImplFilter.java │ │ │ │ ├── TimeoutFilter.java │ │ │ │ ├── TokenFilter.java │ │ │ │ ├── TpsLimitFilter.java │ │ │ │ └── tps │ │ │ │ │ ├── DefaultTPSLimiter.java │ │ │ │ │ ├── StatItem.java │ │ │ │ │ └── TPSLimiter.java │ │ │ │ ├── listener │ │ │ │ ├── DeprecatedInvokerListener.java │ │ │ │ ├── ExporterListenerAdapter.java │ │ │ │ ├── InvokerListenerAdapter.java │ │ │ │ ├── ListenerExporterWrapper.java │ │ │ │ └── ListenerInvokerWrapper.java │ │ │ │ ├── protocol │ │ │ │ ├── AbstractExporter.java │ │ │ │ ├── AbstractInvoker.java │ │ │ │ ├── AbstractProtocol.java │ │ │ │ ├── AbstractProxyProtocol.java │ │ │ │ ├── AsyncToSyncInvoker.java │ │ │ │ ├── InvokerWrapper.java │ │ │ │ ├── ProtocolFilterWrapper.java │ │ │ │ ├── ProtocolListenerWrapper.java │ │ │ │ └── dubbo │ │ │ │ │ ├── FutureAdapter.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── proxy │ │ │ │ ├── AbstractProxyFactory.java │ │ │ │ ├── AbstractProxyInvoker.java │ │ │ │ ├── InvokerInvocationHandler.java │ │ │ │ ├── javassist │ │ │ │ │ └── JavassistProxyFactory.java │ │ │ │ ├── jdk │ │ │ │ │ └── JdkProxyFactory.java │ │ │ │ └── wrapper │ │ │ │ │ └── StubProxyFactoryWrapper.java │ │ │ │ └── support │ │ │ │ ├── AccessLogData.java │ │ │ │ ├── MockInvoker.java │ │ │ │ ├── MockProtocol.java │ │ │ │ └── RpcUtils.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.rpc.Filter │ │ │ ├── org.apache.dubbo.rpc.InvokerListener │ │ │ ├── org.apache.dubbo.rpc.Protocol │ │ │ └── org.apache.dubbo.rpc.ProxyFactory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ ├── AppResponseTest.java │ │ │ ├── CustomArgument.java │ │ │ ├── DemoRequest.java │ │ │ ├── FutureContextTest.java │ │ │ ├── RpcContextTest.java │ │ │ ├── RpcInvocationTest.java │ │ │ ├── filter │ │ │ ├── AccessLogFilterTest.java │ │ │ ├── ActiveLimitFilterTest.java │ │ │ ├── ClassLoaderFilterTest.java │ │ │ ├── CompatibleFilterFilterTest.java │ │ │ ├── ContextFilterTest.java │ │ │ ├── DeprecatedFilterTest.java │ │ │ ├── EchoFilterTest.java │ │ │ ├── ExceptionFilterTest.java │ │ │ ├── ExecuteLimitFilterTest.java │ │ │ ├── GenericFilterTest.java │ │ │ ├── GenericImplFilterTest.java │ │ │ ├── TimeoutFilterTest.java │ │ │ ├── TokenFilterTest.java │ │ │ └── tps │ │ │ │ ├── DefaultTPSLimiterTest.java │ │ │ │ ├── StatItemTest.java │ │ │ │ └── TpsLimitFilterTest.java │ │ │ ├── proxy │ │ │ ├── AbstractProxyTest.java │ │ │ ├── DemoRequest.java │ │ │ ├── DemoService.java │ │ │ ├── DemoServiceImpl.java │ │ │ ├── InvokerInvocationHandlerTest.java │ │ │ ├── RemoteService.java │ │ │ ├── RemoteServiceImpl.java │ │ │ ├── Type.java │ │ │ ├── javassist │ │ │ │ └── JavassistProxyFactoryTest.java │ │ │ └── jdk │ │ │ │ └── JdkProxyFactoryTest.java │ │ │ └── support │ │ │ ├── BlockMyInvoker.java │ │ │ ├── DemoService.java │ │ │ ├── DemoServiceImpl.java │ │ │ ├── IEcho.java │ │ │ ├── LocalException.java │ │ │ ├── MockInvocation.java │ │ │ ├── MockInvokerTest.java │ │ │ ├── MyInvoker.java │ │ │ ├── Person.java │ │ │ ├── RpcUtilsTest.java │ │ │ ├── RuntimeExceptionInvoker.java │ │ │ └── Type.java │ │ └── resources │ │ └── log4j.xml ├── dubbo-rpc-dubbo │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── dubbo │ │ │ │ ├── CallbackServiceCodec.java │ │ │ │ ├── ChannelWrappedInvoker.java │ │ │ │ ├── Constants.java │ │ │ │ ├── DecodeableRpcInvocation.java │ │ │ │ ├── DecodeableRpcResult.java │ │ │ │ ├── DubboCodec.java │ │ │ │ ├── DubboCountCodec.java │ │ │ │ ├── DubboExporter.java │ │ │ │ ├── DubboInvoker.java │ │ │ │ ├── DubboProtocol.java │ │ │ │ ├── DubboProtocolServer.java │ │ │ │ ├── LazyConnectExchangeClient.java │ │ │ │ ├── ReferenceCountExchangeClient.java │ │ │ │ ├── filter │ │ │ │ ├── FutureFilter.java │ │ │ │ └── TraceFilter.java │ │ │ │ └── status │ │ │ │ ├── ServerStatusChecker.java │ │ │ │ └── ThreadPoolStatusChecker.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.common.status.StatusChecker │ │ │ ├── org.apache.dubbo.remoting.Codec2 │ │ │ ├── org.apache.dubbo.rpc.Filter │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ └── protocol │ │ │ └── dubbo │ │ │ ├── ArgumentCallbackTest.java │ │ │ ├── DubboInvokerAvilableTest.java │ │ │ ├── DubboLazyConnectTest.java │ │ │ ├── DubboProtocolTest.java │ │ │ ├── FutureFilterTest.java │ │ │ ├── IDemoService.java │ │ │ ├── ImplicitCallBackTest.java │ │ │ ├── MultiThreadTest.java │ │ │ ├── ReferenceCountExchangeClientTest.java │ │ │ ├── RpcFilterTest.java │ │ │ ├── decode │ │ │ ├── DubboTelnetDecodeTest.java │ │ │ ├── LocalEmbeddedChannel.java │ │ │ ├── MockChannel.java │ │ │ ├── MockChannelHandler.java │ │ │ ├── MockHandler.java │ │ │ └── telnet │ │ │ │ └── TestTelnetHandler.java │ │ │ └── support │ │ │ ├── CustomArgument.java │ │ │ ├── DemoRequest.java │ │ │ ├── DemoService.java │ │ │ ├── DemoServiceImpl.java │ │ │ ├── EnumBak.java │ │ │ ├── Man.java │ │ │ ├── NonSerialized.java │ │ │ ├── Person.java │ │ │ ├── ProtocolUtils.java │ │ │ ├── RemoteService.java │ │ │ ├── RemoteServiceImpl.java │ │ │ └── Type.java │ │ └── resources │ │ ├── META-INF │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.remoting.telnet.TelnetHandler │ │ └── log4j.xml ├── dubbo-rpc-grpc │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ └── protocol │ │ │ └── grpc │ │ │ ├── DubboHandlerRegistry.java │ │ │ ├── GrpcConfig.java │ │ │ ├── GrpcConstants.java │ │ │ ├── GrpcInvoker.java │ │ │ ├── GrpcOptionsUtils.java │ │ │ ├── GrpcProtocol.java │ │ │ ├── ReferenceCountManagedChannel.java │ │ │ └── interceptors │ │ │ ├── ClientInterceptor.java │ │ │ ├── GrpcConfigurator.java │ │ │ ├── RpcContextInterceptor.java │ │ │ ├── ServerInterceptor.java │ │ │ └── ServerTransportFilter.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ ├── org.apache.dubbo.rpc.Protocol │ │ ├── org.apache.dubbo.rpc.protocol.grpc.interceptors.ClientInterceptor │ │ └── org.apache.dubbo.rpc.protocol.grpc.interceptors.ServerInterceptor ├── dubbo-rpc-hessian │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── hessian │ │ │ │ ├── Constants.java │ │ │ │ ├── DubboHessianURLConnectionFactory.java │ │ │ │ ├── HessianProtocol.java │ │ │ │ ├── HttpClientConnection.java │ │ │ │ └── HttpClientConnectionFactory.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── hessian │ │ ├── HessianProtocolTest.java │ │ ├── HessianService.java │ │ └── HessianServiceImpl.java ├── dubbo-rpc-http │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── http │ │ │ │ ├── HttpProtocol.java │ │ │ │ ├── HttpProtocolErrorCode.java │ │ │ │ ├── JsonRemoteInvocation.java │ │ │ │ └── JsonRpcProxyFactoryBean.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── http │ │ ├── HttpProtocolTest.java │ │ ├── HttpService.java │ │ └── HttpServiceImpl.java ├── dubbo-rpc-injvm │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── injvm │ │ │ │ ├── InjvmExporter.java │ │ │ │ ├── InjvmInvoker.java │ │ │ │ └── InjvmProtocol.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── injvm │ │ ├── DemoRequest.java │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── IEcho.java │ │ ├── InjvmProtocolTest.java │ │ ├── ProtocolTest.java │ │ └── Type.java ├── dubbo-rpc-memcached │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── memcached │ │ │ │ └── MemcachedProtocol.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── memcached │ │ └── MemcachedProtocolTest.java ├── dubbo-rpc-native-thrift │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── nativethrift │ │ │ │ └── ThriftProtocol.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ ├── idls │ │ ├── DemoService.thrift │ │ └── UserService.thrift │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── nativethrift │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── ThriftProtocolTest.java │ │ ├── UserService.java │ │ └── UserServiceImpl.java ├── dubbo-rpc-redis │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── redis │ │ │ │ └── RedisProtocol.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ └── protocol │ │ │ └── redis │ │ │ ├── IDemoService.java │ │ │ └── RedisProtocolTest.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-rpc-rest │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── rest │ │ │ │ ├── BaseRestProtocolServer.java │ │ │ │ ├── Constants.java │ │ │ │ ├── DubboHttpProtocolServer.java │ │ │ │ ├── DubboResourceFactory.java │ │ │ │ ├── NettyRestProtocolServer.java │ │ │ │ ├── RestConstraintViolation.java │ │ │ │ ├── RestProtocol.java │ │ │ │ ├── RestProtocolServer.java │ │ │ │ ├── RestServerFactory.java │ │ │ │ ├── RpcContextFilter.java │ │ │ │ ├── RpcExceptionMapper.java │ │ │ │ ├── ViolationReport.java │ │ │ │ ├── integration │ │ │ │ └── swagger │ │ │ │ │ ├── DubboSwaggerApiListingResource.java │ │ │ │ │ └── DubboSwaggerService.java │ │ │ │ └── support │ │ │ │ ├── ContentType.java │ │ │ │ └── LoggingFilter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── rest │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── RestProtocolTest.java │ │ ├── RpcExceptionMapperTest.java │ │ └── integration │ │ └── swagger │ │ ├── DubboSwaggerApiListingResourceTest.java │ │ └── SwaggerService.java ├── dubbo-rpc-rmi │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ ├── com │ │ │ │ └── alibaba │ │ │ │ │ └── dubbo │ │ │ │ │ └── rpc │ │ │ │ │ └── protocol │ │ │ │ │ └── rmi │ │ │ │ │ └── RmiRemoteInvocation.java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── rmi │ │ │ │ ├── RmiProtocol.java │ │ │ │ └── RmiRemoteInvocation.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── rmi │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── RemoteService.java │ │ ├── RemoteServiceImpl.java │ │ ├── RmiProtocolTest.java │ │ └── Type.java ├── dubbo-rpc-thrift │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── thrift │ │ │ │ ├── ClassNameGenerator.java │ │ │ │ ├── DubboClassNameGenerator.java │ │ │ │ ├── ThriftClassNameGenerator.java │ │ │ │ ├── ThriftCodec.java │ │ │ │ ├── ThriftConstants.java │ │ │ │ ├── ThriftInvoker.java │ │ │ │ ├── ThriftNativeCodec.java │ │ │ │ ├── ThriftProtocol.java │ │ │ │ ├── ThriftType.java │ │ │ │ ├── ThriftUtils.java │ │ │ │ ├── ext │ │ │ │ └── MultiServiceProcessor.java │ │ │ │ └── io │ │ │ │ ├── InputStreamWrapper.java │ │ │ │ └── RandomAccessByteArrayOutputStream.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.remoting.Codec2 │ │ │ ├── org.apache.dubbo.rpc.Protocol │ │ │ └── org.apache.dubbo.rpc.protocol.thrift.ClassNameGenerator │ │ └── test │ │ ├── java │ │ ├── $__ClassNameTestDubboStub.java │ │ ├── ClassNameTest.java │ │ ├── ClassNameTestDubbo.java │ │ ├── ClassNameTestThrift.java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── rpc │ │ │ ├── gen │ │ │ ├── dubbo │ │ │ │ ├── $__DemoStub.java │ │ │ │ └── Demo.java │ │ │ └── thrift │ │ │ │ └── Demo.java │ │ │ └── protocol │ │ │ └── thrift │ │ │ ├── AbstractTest.java │ │ │ ├── DemoImpl.java │ │ │ ├── DubboDemoImpl.java │ │ │ ├── FramedTransportFactory.java │ │ │ ├── MockedChannel.java │ │ │ ├── ServerExceptionTest.java │ │ │ ├── ServiceMethodNotFoundTest.java │ │ │ ├── ThriftCodecTest.java │ │ │ ├── ThriftDemoImpl.java │ │ │ ├── ThriftProtocolTest.java │ │ │ ├── ThriftUtilsTest.java │ │ │ └── examples │ │ │ ├── DubboDemoConsumer.java │ │ │ └── DubboDemoProvider.java │ │ ├── resources │ │ ├── dubbo-demo-consumer.xml │ │ └── dubbo-demo-provider.xml │ │ └── thrift │ │ ├── ClassNameTestDubbo.thrift │ │ ├── ClassNameTestThrift.thrift │ │ └── Demo.thrift ├── dubbo-rpc-webservice │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── webservice │ │ │ │ └── WebServiceProtocol.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── rpc │ │ └── protocol │ │ └── webservice │ │ ├── DemoService.java │ │ ├── DemoServiceImpl.java │ │ ├── User.java │ │ └── WebserviceProtocolTest.java ├── dubbo-rpc-xml │ ├── README.md │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── xml │ │ │ │ └── rpc │ │ │ │ └── protocol │ │ │ │ └── xmlrpc │ │ │ │ ├── XmlRpcProtocol.java │ │ │ │ └── XmlRpcProxyFactoryBean.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ ├── org.apache.dubbo.remoting.http.HttpBinder │ │ │ └── org.apache.dubbo.rpc.Protocol │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── xml │ │ └── rpc │ │ └── protocol │ │ └── xmlrpc │ │ ├── XmlRpcProtocolTest.java │ │ ├── XmlRpcService.java │ │ └── XmlRpcServiceImpl.java └── pom.xml ├── dubbo-serialization ├── dubbo-serialization-api │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── common │ │ └── serialize │ │ ├── Cleanable.java │ │ ├── Constants.java │ │ ├── DataInput.java │ │ ├── DataOutput.java │ │ ├── ObjectInput.java │ │ ├── ObjectOutput.java │ │ ├── Serialization.java │ │ └── support │ │ ├── SerializableClassRegistry.java │ │ └── SerializationOptimizer.java ├── dubbo-serialization-avro │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── avro │ │ │ ├── AvroObjectInput.java │ │ │ ├── AvroObjectOutput.java │ │ │ └── AvroSerialization.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-fastjson │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── fastjson │ │ │ ├── FastJsonObjectInput.java │ │ │ ├── FastJsonObjectOutput.java │ │ │ └── FastJsonSerialization.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-fst │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── fst │ │ │ ├── FstFactory.java │ │ │ ├── FstObjectInput.java │ │ │ ├── FstObjectOutput.java │ │ │ └── FstSerialization.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-gson │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── common │ │ │ │ └── serialize │ │ │ │ └── gson │ │ │ │ ├── GsonJsonObjectInput.java │ │ │ │ ├── GsonJsonObjectOutput.java │ │ │ │ └── GsonSerialization.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.serialize.Serialization │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── common │ │ └── serialize │ │ └── gson │ │ ├── GsonJsonObjectOutputTest.java │ │ ├── GsonJsonSerializationTest.java │ │ └── Image.java ├── dubbo-serialization-hessian2 │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── hessian2 │ │ │ ├── Hessian2ObjectInput.java │ │ │ ├── Hessian2ObjectOutput.java │ │ │ ├── Hessian2Serialization.java │ │ │ ├── Hessian2SerializerFactory.java │ │ │ └── dubbo │ │ │ ├── AbstractHessian2FactoryInitializer.java │ │ │ ├── DefaultHessian2FactoryInitializer.java │ │ │ ├── Hessian2FactoryInitializer.java │ │ │ └── WhitelistHessian2FactoryInitializer.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ ├── org.apache.dubbo.common.serialize.Serialization │ │ └── org.apache.dubbo.common.serialize.hessian2.dubbo.Hessian2FactoryInitializer ├── dubbo-serialization-jdk │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ ├── java │ │ │ ├── CompactedJavaSerialization.java │ │ │ ├── CompactedObjectInputStream.java │ │ │ ├── CompactedObjectOutputStream.java │ │ │ ├── JavaObjectInput.java │ │ │ ├── JavaObjectOutput.java │ │ │ └── JavaSerialization.java │ │ │ └── nativejava │ │ │ ├── NativeJavaObjectInput.java │ │ │ ├── NativeJavaObjectOutput.java │ │ │ └── NativeJavaSerialization.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-kryo │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── kryo │ │ │ ├── CompatibleKryo.java │ │ │ ├── KryoObjectInput.java │ │ │ ├── KryoObjectOutput.java │ │ │ ├── KryoSerialization.java │ │ │ ├── optimized │ │ │ ├── KryoObjectInput2.java │ │ │ ├── KryoObjectOutput2.java │ │ │ └── KryoSerialization2.java │ │ │ └── utils │ │ │ ├── AbstractKryoFactory.java │ │ │ ├── KryoUtils.java │ │ │ ├── PooledKryoFactory.java │ │ │ ├── PrototypeKryoFactory.java │ │ │ ├── ReflectionUtils.java │ │ │ └── ThreadLocalKryoFactory.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-native-hession │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── dubbo │ │ │ │ └── serialize │ │ │ │ └── hessian │ │ │ │ ├── Hessian2ObjectInput.java │ │ │ │ ├── Hessian2ObjectOutput.java │ │ │ │ ├── Hessian2Serialization.java │ │ │ │ ├── Hessian2SerializerFactory.java │ │ │ │ ├── Java8SerializerFactory.java │ │ │ │ └── serializer │ │ │ │ └── java8 │ │ │ │ ├── DurationHandle.java │ │ │ │ ├── InstantHandle.java │ │ │ │ ├── Java8TimeSerializer.java │ │ │ │ ├── LocalDateHandle.java │ │ │ │ ├── LocalDateTimeHandle.java │ │ │ │ ├── LocalTimeHandle.java │ │ │ │ ├── MonthDayHandle.java │ │ │ │ ├── OffsetDateTimeHandle.java │ │ │ │ ├── OffsetTimeHandle.java │ │ │ │ ├── PeriodHandle.java │ │ │ │ ├── YearHandle.java │ │ │ │ ├── YearMonthHandle.java │ │ │ │ ├── ZoneIdHandle.java │ │ │ │ ├── ZoneIdSerializer.java │ │ │ │ ├── ZoneOffsetHandle.java │ │ │ │ └── ZonedDateTimeHandle.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── dubbo │ │ │ └── internal │ │ │ └── org.apache.dubbo.common.serialize.Serialization │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── dubbo │ │ └── serialize │ │ └── hessian │ │ └── Java8TimeSerializerTest.java ├── dubbo-serialization-protobuf │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── protobuf │ │ │ └── support │ │ │ ├── GenericProtobufJsonObjectInput.java │ │ │ ├── GenericProtobufJsonObjectOutput.java │ │ │ ├── GenericProtobufJsonSerialization.java │ │ │ ├── GenericProtobufObjectInput.java │ │ │ ├── GenericProtobufObjectOutput.java │ │ │ ├── GenericProtobufSerialization.java │ │ │ ├── ProtobufUtils.java │ │ │ └── ProtobufWrappedException.java │ │ ├── proto │ │ ├── MapValue.proto │ │ └── ThrowablePB.proto │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-protostuff │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ └── protostuff │ │ │ ├── ProtostuffObjectInput.java │ │ │ ├── ProtostuffObjectOutput.java │ │ │ ├── ProtostuffSerialization.java │ │ │ ├── Wrapper.java │ │ │ ├── delegate │ │ │ ├── SqlDateDelegate.java │ │ │ ├── TimeDelegate.java │ │ │ └── TimestampDelegate.java │ │ │ └── utils │ │ │ └── WrapperUtils.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.common.serialize.Serialization ├── dubbo-serialization-test │ ├── pom.xml │ └── src │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── dubbo │ │ │ └── common │ │ │ └── serialize │ │ │ ├── avro │ │ │ ├── AvroObjectInputOutputTest.java │ │ │ └── AvroSerializationTest.java │ │ │ ├── base │ │ │ ├── AbstractSerializationPersonFailTest.java │ │ │ ├── AbstractSerializationPersonOkTest.java │ │ │ └── AbstractSerializationTest.java │ │ │ ├── fastjson │ │ │ ├── FastJsonObjectInputTest.java │ │ │ ├── FastJsonObjectOutputTest.java │ │ │ └── FastJsonSerializationTest.java │ │ │ ├── fst │ │ │ ├── FstFactoryTest.java │ │ │ ├── FstObjectInputTest.java │ │ │ ├── FstObjectOutputTest.java │ │ │ └── FstSerializationTest.java │ │ │ ├── hessian2 │ │ │ ├── Hessian2PersonOkTest.java │ │ │ └── Hessian2SerializationTest.java │ │ │ ├── jdk │ │ │ ├── CompactedJavaSerializationTest.java │ │ │ ├── JavaSerializationTest.java │ │ │ ├── JdkPersonOkTest.java │ │ │ └── NativeJavaSerializationTest.java │ │ │ ├── kryo │ │ │ ├── KryoPersonOkTest.java │ │ │ ├── KyroSerializationTest.java │ │ │ └── ReflectionUtilsTest.java │ │ │ ├── model │ │ │ ├── AnimalEnum.java │ │ │ ├── BizException.java │ │ │ ├── BizExceptionNoDefaultConstructor.java │ │ │ ├── Organization.java │ │ │ ├── Person.java │ │ │ ├── SerializablePerson.java │ │ │ ├── media │ │ │ │ ├── Image.java │ │ │ │ ├── Media.java │ │ │ │ └── MediaContent.java │ │ │ └── person │ │ │ │ ├── BigPerson.java │ │ │ │ ├── FullAddress.java │ │ │ │ ├── PersonInfo.java │ │ │ │ ├── PersonStatus.java │ │ │ │ └── Phone.java │ │ │ ├── protobuf │ │ │ └── support │ │ │ │ ├── AbstractProtobufSerializationTest.java │ │ │ │ ├── GenericProtobufJsonObjectOutputTest.java │ │ │ │ ├── GenericProtobufJsonSerializationTest.java │ │ │ │ ├── GenericProtobufSerializationTest.java │ │ │ │ └── model │ │ │ │ ├── GooglePB.java │ │ │ │ └── ServiceInterface.java │ │ │ ├── protostuff │ │ │ ├── ProtostuffObjectOutputTest.java │ │ │ └── ProtostuffSerializationTest.java │ │ │ └── support │ │ │ └── SerializableClassRegistryTest.java │ │ ├── proto │ │ └── GooglePB.proto │ │ └── resources │ │ ├── log4j.xml │ │ └── org.apache.dubbo.common.serialize.dubbo │ │ └── SimpleDO.fc └── pom.xml ├── licenseCheck.sh ├── mvnw ├── mvnw.cmd └── pom.xml /.codecov.yml: -------------------------------------------------------------------------------- 1 | coverage: 2 | status: 3 | # pull-requests only 4 | patch: 5 | default: 6 | threshold: 0.1% 7 | ignore: 8 | - "dubbo-demo/.*" 9 | - "dubbo-common/src/main/java/org/apache/dubbo/common/json/*.java" # internal JSON impl is deprecate, ignore test coverage for them 10 | - "dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/AnnotationBean.java" # Deprecated 11 | - "dubbo-rpc/dubbo-rpc-thrift/.*" -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/dubbo-issue-report-template.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Dubbo issue report template 3 | about: If you would like to report a issue to Dubbo, please use this template. 4 | 5 | --- 6 | 7 | - [ ] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate. 8 | - [ ] I have checked the [FAQ](https://github.com/apache/dubbo/blob/master/FAQ.md) of this repository and believe that this is not a duplicate. 9 | 10 | ### Environment 11 | 12 | * Dubbo version: xxx 13 | * Operating System version: xxx 14 | * Java version: xxx 15 | 16 | ### Steps to reproduce this issue 17 | 18 | 1. xxx 19 | 2. xxx 20 | 3. xxx 21 | 22 | Pls. provide [GitHub address] to reproduce this issue. 23 | 24 | ### Expected Result 25 | 26 | What do you expected from the above steps? 27 | 28 | ### Actual Result 29 | 30 | What actually happens? 31 | 32 | If there is an exception, please attach the exception trace: 33 | 34 | ``` 35 | Just put your stack trace here! 36 | ``` 37 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # maven ignore 2 | target/ 3 | *.jar 4 | !.mvn/wrapper/* 5 | *.war 6 | *.zip 7 | *.tar 8 | *.tar.gz 9 | .flattened-pom.xml 10 | 11 | # eclipse ignore 12 | .settings/ 13 | .project 14 | .classpath 15 | 16 | # idea ignore 17 | .idea/ 18 | *.ipr 19 | *.iml 20 | *.iws 21 | 22 | # visual-studio-code ignore 23 | .vscode/ 24 | 25 | # temp ignore 26 | *.log 27 | *.cache 28 | *.diff 29 | *.patch 30 | *.tmp 31 | 32 | # system ignore 33 | .DS_Store 34 | Thumbs.db 35 | *.orig 36 | 37 | # license check result 38 | license-list 39 | 40 | # grpc compiler 41 | compiler/gradle.properties 42 | compiler/build/* 43 | compiler/.gradle/* 44 | 45 | # protobuf 46 | dubbo-serialization/dubbo-serialization-protobuf/build/* 47 | -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mercyblitz/dubbo/d8a4acd13c8270bdefe38f8b109dee457ee15593/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.6.1/apache-maven-3.6.1-bin.zip 2 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: java 2 | sudo: false # faster builds 3 | 4 | jdk: 5 | - openjdk11 6 | - openjdk8 7 | 8 | cache: 9 | directories: 10 | - $HOME/.m2 11 | 12 | install: true 13 | 14 | script: 15 | - rm -rf $HOME/.m2/repository/org/glassfish/javax.el/3.0.1-b08 16 | - travis_wait 30 ./mvnw --batch-mode --no-transfer-progress clean install -DskipTests=false -DskipIntegrationTests=false -Dcheckstyle.skip=false -Drat.skip=false -Dmaven.javadoc.skip=true 17 | 18 | after_success: 19 | - bash <(curl -s https://codecov.io/bash) 20 | 21 | after_failure: 22 | - echo "build failed!" 23 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Apache Dubbo 2 | Copyright 2018-2021 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | 7 | This product contains code form the Netty Project: 8 | 9 | The Netty Project 10 | ================= 11 | Please visit the Netty web site for more information: 12 | * http://netty.io/ 13 | 14 | Copyright 2014 The Netty Project 15 | 16 | The product contains code form the Google Protocol Buffers project: 17 | 18 | Please visit the following site for more information: 19 | https://developers.google.com/protocol-buffers/ 20 | 21 | Copyright 2008 Google Inc. All rights reserved. 22 | 23 | -------------------------------------------------------------------------------- /codestyle/checkstyle-suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /codestyle/dubbo_codestyle_for_idea.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | -------------------------------------------------------------------------------- /codestyle/manage_profiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mercyblitz/dubbo/d8a4acd13c8270bdefe38f8b109dee457ee15593/codestyle/manage_profiles.png -------------------------------------------------------------------------------- /dubbo-build-tools/src/main/resources/checkstyle-header.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ -------------------------------------------------------------------------------- /dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/Merger.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.cluster; 18 | 19 | import org.apache.dubbo.common.extension.SPI; 20 | 21 | @SPI 22 | public interface Merger { 23 | 24 | T merge(T... items); 25 | 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/support/migration/MigrationStep.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.cluster.support.migration; 18 | 19 | public enum MigrationStep { 20 | FORCE_INTERFACE, 21 | APPLICATION_FIRST, 22 | FORCE_APPLICATION 23 | } -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.Cluster: -------------------------------------------------------------------------------- 1 | mock=org.apache.dubbo.rpc.cluster.support.wrapper.MockClusterWrapper 2 | failover=org.apache.dubbo.rpc.cluster.support.FailoverCluster 3 | failfast=org.apache.dubbo.rpc.cluster.support.FailfastCluster 4 | failsafe=org.apache.dubbo.rpc.cluster.support.FailsafeCluster 5 | failback=org.apache.dubbo.rpc.cluster.support.FailbackCluster 6 | forking=org.apache.dubbo.rpc.cluster.support.ForkingCluster 7 | available=org.apache.dubbo.rpc.cluster.support.AvailableCluster 8 | mergeable=org.apache.dubbo.rpc.cluster.support.MergeableCluster 9 | broadcast=org.apache.dubbo.rpc.cluster.support.BroadcastCluster 10 | zone-aware=org.apache.dubbo.rpc.cluster.support.registry.ZoneAwareCluster -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.ConfiguratorFactory: -------------------------------------------------------------------------------- 1 | override=org.apache.dubbo.rpc.cluster.configurator.override.OverrideConfiguratorFactory 2 | absent=org.apache.dubbo.rpc.cluster.configurator.absent.AbsentConfiguratorFactory -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.LoadBalance: -------------------------------------------------------------------------------- 1 | random=org.apache.dubbo.rpc.cluster.loadbalance.RandomLoadBalance 2 | roundrobin=org.apache.dubbo.rpc.cluster.loadbalance.RoundRobinLoadBalance 3 | leastactive=org.apache.dubbo.rpc.cluster.loadbalance.LeastActiveLoadBalance 4 | consistenthash=org.apache.dubbo.rpc.cluster.loadbalance.ConsistentHashLoadBalance 5 | shortestresponse=org.apache.dubbo.rpc.cluster.loadbalance.ShortestResponseLoadBalance -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.Merger: -------------------------------------------------------------------------------- 1 | map=org.apache.dubbo.rpc.cluster.merger.MapMerger 2 | set=org.apache.dubbo.rpc.cluster.merger.SetMerger 3 | list=org.apache.dubbo.rpc.cluster.merger.ListMerger 4 | byte=org.apache.dubbo.rpc.cluster.merger.ByteArrayMerger 5 | char=org.apache.dubbo.rpc.cluster.merger.CharArrayMerger 6 | short=org.apache.dubbo.rpc.cluster.merger.ShortArrayMerger 7 | int=org.apache.dubbo.rpc.cluster.merger.IntArrayMerger 8 | long=org.apache.dubbo.rpc.cluster.merger.LongArrayMerger 9 | float=org.apache.dubbo.rpc.cluster.merger.FloatArrayMerger 10 | double=org.apache.dubbo.rpc.cluster.merger.DoubleArrayMerger 11 | boolean=org.apache.dubbo.rpc.cluster.merger.BooleanArrayMerger 12 | -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.RouterFactory: -------------------------------------------------------------------------------- 1 | file=org.apache.dubbo.rpc.cluster.router.file.FileRouterFactory 2 | script=org.apache.dubbo.rpc.cluster.router.script.ScriptRouterFactory 3 | condition=org.apache.dubbo.rpc.cluster.router.condition.ConditionRouterFactory 4 | service=org.apache.dubbo.rpc.cluster.router.condition.config.ServiceRouterFactory 5 | app=org.apache.dubbo.rpc.cluster.router.condition.config.AppRouterFactory 6 | tag=org.apache.dubbo.rpc.cluster.router.tag.TagRouterFactory 7 | mock=org.apache.dubbo.rpc.cluster.router.mock.MockRouterFactory 8 | -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.governance.GovernanceRuleRepository: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.rpc.cluster.governance.DefaultGovernanceRuleRepositoryImpl -------------------------------------------------------------------------------- /dubbo-cluster/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.interceptor.ClusterInterceptor: -------------------------------------------------------------------------------- 1 | context=org.apache.dubbo.rpc.cluster.interceptor.ConsumerContextClusterInterceptor 2 | zone-aware=org.apache.dubbo.rpc.cluster.interceptor.ZoneAwareClusterInterceptor -------------------------------------------------------------------------------- /dubbo-cluster/src/test/resources/org/apache/dubbo/rpc/cluster/router/file/availablerule.javascript: -------------------------------------------------------------------------------- 1 | function route(invokers,invocation,context){ 2 | var result = new java.util.ArrayList(invokers.size()); 3 | 4 | for (i=0;i1 && invocation.getMethodName() .equals("method1")) { 4 | result.add(invokers.get(0)) ; 5 | } else { 6 | result.add(invokers.get(1)) ; 7 | } 8 | return result; 9 | }; 10 | route(invokers,invocation,context); -------------------------------------------------------------------------------- /dubbo-cluster/src/test/resources/org/apache/dubbo/rpc/cluster/router/file/notAvailablerule.javascript: -------------------------------------------------------------------------------- 1 | function route(invokers,invocation,context){ 2 | var result = new java.util.ArrayList(invokers.size()); 3 | 4 | for (i=0;i 4 | dubbo.application.name = demo-provider 5 | 6 | # 7 | dubbo.registry.address = N/A 8 | 9 | # 10 | dubbo.protocol.name = dubbo 11 | dubbo.protocol.port = 20813 12 | 13 | -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbb-consumer.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Consumer Properties as an alternative for 2 | # Spring XML Bean definition : META-INF/spring/dubbo-annotation-consumer.xml 3 | demo.service.application = dubbo-demo-application 4 | demo.service.registry = my-registry 5 | 6 | ## Dubbo configs binding properties 7 | ### 8 | dubbo.applications.dubbo-demo-application.name = dubbo-demo-application 9 | 10 | ### 11 | dubbo.registries.my-registry.address = N/A 12 | dubbo.registries.my-registry2.address = N/A -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbb-provider.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Provider Properties as an alternative for 2 | # Spring XML Bean definition : META-INF/spring/dubbo-annotation-provider.xml 3 | 4 | ## Service Providers' Placeholders for org.apache.dubbo.config.spring.context.annotation.provider.DemoServiceImpl 5 | 6 | demo.service.application = dubbo-demo-application 7 | demo.service.protocol = dubbo 8 | demo.service.registry = my-registry 9 | 10 | 11 | ## Dubbo configs binding properties 12 | 13 | ### 14 | dubbo.application.id = dubbo-demo-application 15 | dubbo.application.name = dubbo-demo-application 16 | 17 | ### 18 | dubbo.registry.id = my-registry 19 | dubbo.registry.address = N/A 20 | 21 | ### 22 | dubbo.protocol.id = dubbo 23 | dubbo.protocol.name = dubbo 24 | dubbo.protocol.port = 12345 -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo-consumer.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Consumer Properties as an alternative for 2 | # Spring XML Bean definition : META-INF/spring/dubbo-annotation-consumer.xml 3 | demo.service.application = dubbo-annotation-test 4 | demo.service.registry = my-registry 5 | 6 | ## Dubbo configs binding properties 7 | ### 8 | # In this UT, the provider will be responsible of loading ApplicationConfig. 9 | dubbo.applications.dubbo-demo-application.name = dubbo-demo-application 10 | 11 | ### 12 | dubbo.registries.my-registry.address = N/A 13 | dubbo.registries.my-registry2.address = N/A -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo-provider.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Provider Properties as an alternative for 2 | # Spring XML Bean definition : META-INF/spring/dubbo-annotation-provider.xml 3 | 4 | ## Service Providers' Placeholders for org.apache.dubbo.config.spring.context.annotation.provider.DemoServiceImpl 5 | 6 | demo.service.application = dubbo-demo-application 7 | demo.service.protocol = dubbo 8 | demo.service.registry = my-registry 9 | 10 | 11 | ## Dubbo configs binding properties 12 | 13 | ### 14 | dubbo.application.id = dubbo-demo-application 15 | dubbo.application.name = dubbo-demo-application 16 | 17 | ### 18 | dubbo.registry.id = my-registry 19 | dubbo.registry.address = N/A 20 | 21 | ### 22 | dubbo.protocol.name = dubbo 23 | dubbo.protocol.port = 12345 24 | dubbo.monitor.address=N/A -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo.yml: -------------------------------------------------------------------------------- 1 | dubbo: 2 | consumer: 3 | default: false 4 | client: netty 5 | threadpool: cached 6 | corethreads: 1 7 | threads: 10 8 | queues: 99 -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | mock=org.apache.dubbo.config.spring.registry.MockRegistryFactory -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | mock=org.apache.dubbo.config.spring.registry.MockServiceDiscovery -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | mymock=org.apache.dubbo.config.spring.filter.MockFilter -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/issue-6252-test.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.name=demo-zk 2 | dubbo.application.qos-enable=false 3 | dubbo.protocol.name=dubbo 4 | dubbo.protocol.port=-1 5 | dubbo.scan.basePackages=com.example.demo 6 | dubbo.consumer.check=false 7 | dubbo.registries.z214.address=zookeeper://192.168.99.214:2181 8 | dubbo.registries.z214.timeout=60000 9 | dubbo.registries.z214.subscribe=false 10 | dubbo.registries.z214.useAsConfigCenter=false 11 | dubbo.registries.z214.useAsMetadataCenter=false 12 | dubbo.registries.z205.address=zookeeper://192.168.99.205:2181 13 | dubbo.registries.z205.timeout=60000 14 | dubbo.registries.z205.useAsConfigCenter=false 15 | dubbo.registries.z205.useAsMetadataCenter=false -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/service-introspection/zookeeper-dubbb-consumer.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Consumer for Zookeeper 2 | 3 | dubbo.application.name = zookeeper-dubbo-spring-consumer 4 | 5 | dubbo.registry.address = zookeeper://127.0.0.1:2181?registry-type=service 6 | dubbo.registry.useAsConfigCenter = true 7 | dubbo.registry.useAsMetadataCenter = true 8 | 9 | dubbo.protocol.name = dubbo 10 | dubbo.protocol.port = -1 11 | 12 | dubbo.provider.name = zookeeper-dubbo-spring-provider 13 | dubbo.provider.name1 = zookeeper-dubbo-spring-provider-1 14 | dubbo.provider.name2 = zookeeper-dubbo-spring-provider-2 -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/service-introspection/zookeeper-dubbb-provider.properties: -------------------------------------------------------------------------------- 1 | # Dubbo Provider for Zookeeper 2 | 3 | dubbo.application.name = zookeeper-dubbo-spring-provider-1 4 | 5 | dubbo.registry.address = zookeeper://127.0.0.1:2181?registry-type=service 6 | dubbo.registry.useAsConfigCenter = true 7 | dubbo.registry.useAsMetadataCenter = true 8 | 9 | dubbo.protocol.name = dubbo 10 | dubbo.protocol.port = -1 -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/META-INF/spring/dubbo-nacos-provider-context.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/dubbo-binder.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.name=hello 2 | dubbo.application.owner=world 3 | dubbo.registry.address=10.20.153.17 4 | dubbo.protocol.port=20881 5 | dubbo.service.invoke.timeout=2000 6 | dubbo.consumer.timeout -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/nacos-consumer-config.properties: -------------------------------------------------------------------------------- 1 | ## Dubbo Application info 2 | dubbo.application.name=dubbo-consumer-demo 3 | ## Nacos registry address 4 | dubbo.registry.address=nacos://127.0.0.1:8848 5 | # @Reference version 6 | demo.service.version=1.0.0 -------------------------------------------------------------------------------- /dubbo-config/dubbo-config-spring/src/test/resources/nacos-provider-config.properties: -------------------------------------------------------------------------------- 1 | ## Dubbo Application info 2 | dubbo.application.name=dubbo-provider-demo 3 | ## Nacos registry address 4 | dubbo.registry.protocol=nacos 5 | dubbo.registry.address=127.0.0.1:8848 6 | ## Exports multiple protocols 7 | ### Dubbo Protocol using random port 8 | dubbo.protocols.dubbo.port=-1 9 | # Provider @Service info 10 | demo.service.version=1.0.0 11 | demo.service.name=demoService -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-apollo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory: -------------------------------------------------------------------------------- 1 | apollo=org.apache.dubbo.configcenter.support.apollo.ApolloDynamicConfigurationFactory -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-apollo/src/test/resources/META-INF/app.properties: -------------------------------------------------------------------------------- 1 | app.id=someAppId -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-apollo/src/test/resources/mockdata-dubbo.properties: -------------------------------------------------------------------------------- 1 | key1=value1 2 | key2=value2 -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-consul/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory: -------------------------------------------------------------------------------- 1 | consul=org.apache.dubbo.configcenter.consul.ConsulDynamicConfigurationFactory 2 | -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-etcd/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory: -------------------------------------------------------------------------------- 1 | etcd=org.apache.dubbo.configcenter.support.etcd.EtcdDynamicConfigurationFactory -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-nacos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory: -------------------------------------------------------------------------------- 1 | nacos=org.apache.dubbo.configcenter.support.nacos.NacosDynamicConfigurationFactory -------------------------------------------------------------------------------- /dubbo-configcenter/dubbo-configcenter-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory: -------------------------------------------------------------------------------- 1 | zookeeper=org.apache.dubbo.configcenter.support.zookeeper.ZookeeperDynamicConfigurationFactory -------------------------------------------------------------------------------- /dubbo-container/dubbo-container-api/src/main/resources/META-INF/assembly/bin/restart.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Licensed to the Apache Software Foundation (ASF) under one or more 4 | # contributor license agreements. See the NOTICE file distributed with 5 | # this work for additional information regarding copyright ownership. 6 | # The ASF licenses this file to You under the Apache License, Version 2.0 7 | # (the "License"); you may not use this file except in compliance with 8 | # the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | 18 | cd `dirname $0` 19 | ./stop.sh 20 | ./start.sh 21 | -------------------------------------------------------------------------------- /dubbo-container/dubbo-container-log4j/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.container.Container: -------------------------------------------------------------------------------- 1 | log4j=org.apache.dubbo.container.log4j.Log4jContainer -------------------------------------------------------------------------------- /dubbo-container/dubbo-container-logback/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.container.Container: -------------------------------------------------------------------------------- 1 | logback=org.apache.dubbo.container.logback.LogbackContainer -------------------------------------------------------------------------------- /dubbo-container/dubbo-container-spring/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.container.Container: -------------------------------------------------------------------------------- 1 | spring=org.apache.dubbo.container.spring.SpringContainer -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-consumer/src/main/resources/spring/dubbo-consumer.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one 3 | # or more contributor license agreements. See the NOTICE file 4 | # distributed with this work for additional information 5 | # regarding copyright ownership. The ASF licenses this file 6 | # to you under the Apache License, Version 2.0 (the 7 | # "License"); you may not use this file except in compliance 8 | # with the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, 13 | # software distributed under the License is distributed on an 14 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | # KIND, either express or implied. See the License for the 16 | # specific language governing permissions and limitations 17 | # under the License. 18 | # 19 | 20 | dubbo.application.name=dubbo-demo-annotation-consumer 21 | dubbo.registry.address=zookeeper://127.0.0.1:2181 22 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-provider/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-annotation/dubbo-demo-annotation-provider/src/main/resources/spring/dubbo-provider.properties: -------------------------------------------------------------------------------- 1 | # 2 | # 3 | # Licensed to the Apache Software Foundation (ASF) under one or more 4 | # contributor license agreements. See the NOTICE file distributed with 5 | # this work for additional information regarding copyright ownership. 6 | # The ASF licenses this file to You under the Apache License, Version 2.0 7 | # (the "License"); you may not use this file except in compliance with 8 | # the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # 19 | 20 | dubbo.application.name=dubbo-demo-annotation-provider 21 | dubbo.protocol.name=dubbo 22 | dubbo.protocol.port=20880 23 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-api/dubbo-demo-api-consumer/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-api/dubbo-demo-api-provider/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-interface/src/main/java/org/apache/dubbo/demo/GreetingService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.demo; 18 | 19 | /** 20 | * 21 | */ 22 | public interface GreetingService { 23 | String hello(); 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-consumer/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.store.failover.FailoverCondition: -------------------------------------------------------------------------------- 1 | local=org.apache.dubbo.demo.consumer.TestFailoverCondition -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-consumer/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.cluster.support.migration.MigrationClusterComparator: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.demo.consumer.RandomMigrationAddressComparator -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-consumer/src/main/resources/dubbo.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.qos.port=33333 2 | dubbo.consumer.check=false -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-consumer/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=debug, stdout 3 | ###output to console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.MetadataParamsFilter: -------------------------------------------------------------------------------- 1 | serviceDemo=org.apache.dubbo.demo.provider.ServiceDemoMetadataParamsFilter -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.store.failover.FailoverCondition: -------------------------------------------------------------------------------- 1 | local=org.apache.dubbo.demo.provider.TestFailoverCondition -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider/src/main/resources/dubbo.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.qos.port=22222 2 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider2/src/main/resources/dubbo.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.qos.port=22224 2 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-service/dubbo-demo-service-provider2/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/dubbo.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.qos.port=33333 2 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-provider/src/main/resources/dubbo.properties: -------------------------------------------------------------------------------- 1 | dubbo.application.qos.port=22222 2 | -------------------------------------------------------------------------------- /dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-provider/src/main/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-filter/dubbo-filter-cache/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.cache.CacheFactory: -------------------------------------------------------------------------------- 1 | threadlocal=org.apache.dubbo.cache.support.threadlocal.ThreadLocalCacheFactory 2 | lru=org.apache.dubbo.cache.support.lru.LruCacheFactory 3 | jcache=org.apache.dubbo.cache.support.jcache.JCacheFactory 4 | expiring=org.apache.dubbo.cache.support.expiring.ExpiringCacheFactory -------------------------------------------------------------------------------- /dubbo-filter/dubbo-filter-cache/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | cache=org.apache.dubbo.cache.filter.CacheFilter -------------------------------------------------------------------------------- /dubbo-filter/dubbo-filter-validation/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | validation=org.apache.dubbo.validation.filter.ValidationFilter -------------------------------------------------------------------------------- /dubbo-filter/dubbo-filter-validation/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.validation.Validation: -------------------------------------------------------------------------------- 1 | jvalidation=org.apache.dubbo.validation.support.jvalidation.JValidation -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MappingListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.metadata; 18 | 19 | public interface MappingListener { 20 | void onEvent(MappingChangedEvent event); 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.MetadataParamsFilter: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.metadata.DefaultMetadataParamsFilter -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.ServiceNameMapping: -------------------------------------------------------------------------------- 1 | config=org.apache.dubbo.metadata.DynamicConfigurationServiceNameMapping -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.definition.builder.TypeBuilder: -------------------------------------------------------------------------------- 1 | array=org.apache.dubbo.metadata.definition.builder.ArrayTypeBuilder 2 | collection=org.apache.dubbo.metadata.definition.builder.CollectionTypeBuilder 3 | map=org.apache.dubbo.metadata.definition.builder.MapTypeBuilder 4 | enum=org.apache.dubbo.metadata.definition.builder.EnumTypeBuilder -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.rest.AnnotatedMethodParameterProcessor: -------------------------------------------------------------------------------- 1 | # JAX-RS's implementations 2 | jax-rs.query-param = org.apache.dubbo.metadata.rest.jaxrs.QueryParamParameterProcessor 3 | jax-rs.form-param = org.apache.dubbo.metadata.rest.jaxrs.FormParamParameterProcessor 4 | jax-rs.matrix-param = org.apache.dubbo.metadata.rest.jaxrs.MatrixParamParameterProcessor 5 | jax-rs.header-param = org.apache.dubbo.metadata.rest.jaxrs.HeaderParamParameterProcessor 6 | jax-rs.default-value-param = org.apache.dubbo.metadata.rest.jaxrs.DefaultValueParameterProcessor 7 | 8 | # Spring Web MVC's implementations 9 | spring-webmvc.request-param = org.apache.dubbo.metadata.rest.springmvc.RequestParamParameterProcessor 10 | spring-webmvc.request-header = org.apache.dubbo.metadata.rest.springmvc.RequestHeaderParameterProcessor -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.rest.ServiceRestMetadataResolver: -------------------------------------------------------------------------------- 1 | default = 2 | jax-rs = org.apache.dubbo.metadata.rest.jaxrs.JAXRSServiceRestMetadataResolver 3 | spring-webmvc = org.apache.dubbo.metadata.rest.springmvc.SpringMvcServiceRestMetadataResolver -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/definition/common/ColorEnum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.metadata.definition.common; 18 | 19 | public enum ColorEnum { 20 | 21 | RED, YELLOW, BLUE 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.definition.builder.TypeBuilder: -------------------------------------------------------------------------------- 1 | test=org.apache.dubbo.metadata.definition.TestTypeBuilder 2 | test3=org.apache.dubbo.metadata.definition.Test3TypeBuilder 3 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | JTest=org.apache.dubbo.metadata.test.JTestMetadataReportFactory4Test -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/service-name-mapping.properties: -------------------------------------------------------------------------------- 1 | dubbo\:com.acme.Interface1\:default = Service1 2 | thirft\:com.acme.InterfaceX = Service1,Service2 3 | rest\:com.acme.interfaceN = Service3 -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-definition-protobuf/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.definition.builder.TypeBuilder: -------------------------------------------------------------------------------- 1 | protobuf=org.apache.dubbo.metadata.definition.protobuf.ProtobufTypeBuilder 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-processor/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.annotation.processing.builder.TypeDefinitionBuilder: -------------------------------------------------------------------------------- 1 | array-type = org.apache.dubbo.metadata.annotation.processing.builder.ArrayTypeDefinitionBuilder 2 | collection-type = org.apache.dubbo.metadata.annotation.processing.builder.CollectionTypeDefinitionBuilder 3 | enum-type = org.apache.dubbo.metadata.annotation.processing.builder.EnumTypeDefinitionBuilder 4 | general-type = org.apache.dubbo.metadata.annotation.processing.builder.GeneralTypeDefinitionBuilder 5 | map-type = org.apache.dubbo.metadata.annotation.processing.builder.MapTypeDefinitionBuilder 6 | primitive-type = org.apache.dubbo.metadata.annotation.processing.builder.PrimitiveTypeDefinitionBuilder 7 | simple-type = org.apache.dubbo.metadata.annotation.processing.builder.SimpleTypeDefinitionBuilder -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-processor/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.annotation.processing.rest.AnnotatedMethodParameterProcessor: -------------------------------------------------------------------------------- 1 | # JAX-RS's implementations 2 | jax-rs.query-param = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.QueryParamParameterProcessor 3 | jax-rs.form-param = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.FormParamParameterProcessor 4 | jax-rs.matrix-param = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.MatrixParamParameterProcessor 5 | jax-rs.header-param = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.HeaderParamParameterProcessor 6 | jax-rs.default-value-param = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.DefaultValueParameterProcessor 7 | 8 | # Spring Web MVC's implementations 9 | spring-webmvc.request-param = org.apache.dubbo.metadata.annotation.processing.rest.springmvc.RequestParamParameterProcessor 10 | spring-webmvc.request-header = org.apache.dubbo.metadata.annotation.processing.rest.springmvc.RequestHeaderParameterProcessor -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-processor/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.annotation.processing.rest.ServiceRestMetadataResolver: -------------------------------------------------------------------------------- 1 | default = org.apache.dubbo.metadata.annotation.processing.rest.DefaultServiceRestMetadataResolver 2 | jax-rs = org.apache.dubbo.metadata.annotation.processing.rest.jaxrs.JAXRSServiceRestMetadataResolver 3 | spring-webmvc = org.apache.dubbo.metadata.annotation.processing.rest.springmvc.SpringMvcServiceRestMetadataResolver -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor: -------------------------------------------------------------------------------- 1 | org.apache.dubbo.metadata.annotation.processing.ServiceDefinitionMetadataAnnotationProcessor 2 | org.apache.dubbo.metadata.annotation.processing.rest.ServiceRestMetadataAnnotationProcessor 3 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-consul/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | consul=org.apache.dubbo.metadata.store.consul.ConsulMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-etcd/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | etcd=org.apache.dubbo.metadata.store.etcd.EtcdMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-failover/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | failover=org.apache.dubbo.metadata.store.failover.FailoverMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-failover/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | mock=org.apache.dubbo.metadata.store.failover.MockMetadataReportFactory -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-failover/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.store.failover.FailoverCondition: -------------------------------------------------------------------------------- 1 | local=org.apache.dubbo.metadata.store.failover.MockLocalFailoverCondition 2 | all=org.apache.dubbo.metadata.store.failover.MockAllFailoverCondition -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-nacos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | nacos=org.apache.dubbo.metadata.store.nacos.NacosMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-redis/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | redis=org.apache.dubbo.metadata.store.redis.RedisMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-metadata/dubbo-metadata-report-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.report.MetadataReportFactory: -------------------------------------------------------------------------------- 1 | zookeeper=org.apache.dubbo.metadata.store.zookeeper.ZookeeperMetadataReportFactory 2 | -------------------------------------------------------------------------------- /dubbo-monitor/dubbo-monitor-api/src/main/java/org/apache/dubbo/monitor/MetricsService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.dubbo.monitor; 19 | 20 | public interface MetricsService { 21 | String getMetricsByGroup(String group); 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-monitor/dubbo-monitor-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | monitor=org.apache.dubbo.monitor.support.MonitorFilter 2 | -------------------------------------------------------------------------------- /dubbo-monitor/dubbo-monitor-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.model.BuiltinServiceDetector: -------------------------------------------------------------------------------- 1 | monitor=org.apache.dubbo.monitor.support.MonitorServiceDetector 2 | metrics=org.apache.dubbo.monitor.support.MetricsServiceDetector -------------------------------------------------------------------------------- /dubbo-monitor/dubbo-monitor-default/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.monitor.MonitorFactory: -------------------------------------------------------------------------------- 1 | dubbo=org.apache.dubbo.monitor.dubbo.DubboMonitorFactory -------------------------------------------------------------------------------- /dubbo-monitor/dubbo-monitor-default/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | metrics=org.apache.dubbo.monitor.dubbo.MetricsFilter 2 | -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-auth/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.auth.spi.AccessKeyStorage: -------------------------------------------------------------------------------- 1 | urlstorage=org.apache.dubbo.auth.DefaultAccessKeyStorage -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-auth/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.auth.spi.Authenticator: -------------------------------------------------------------------------------- 1 | accesskey=org.apache.dubbo.auth.AccessKeyAuthenticator -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-auth/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | consumersign=org.apache.dubbo.auth.filter.ConsumerSignFilter 2 | providerauth=org.apache.dubbo.auth.filter.ProviderAuthFilter -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.qos.command.BaseCommand: -------------------------------------------------------------------------------- 1 | online=org.apache.dubbo.qos.command.impl.Online 2 | help=org.apache.dubbo.qos.command.impl.Help 3 | quit=org.apache.dubbo.qos.command.impl.Quit 4 | ls=org.apache.dubbo.qos.command.impl.Ls 5 | offline=org.apache.dubbo.qos.command.impl.Offline 6 | ready=org.apache.dubbo.qos.command.impl.Ready 7 | version=org.apache.dubbo.qos.command.impl.Version 8 | publish-metadata=org.apache.dubbo.qos.command.impl.PublishMetadata 9 | -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.telnet.TelnetHandler: -------------------------------------------------------------------------------- 1 | ls=org.apache.dubbo.qos.legacy.ListTelnetHandler 2 | ps=org.apache.dubbo.qos.legacy.PortTelnetHandler 3 | cd=org.apache.dubbo.qos.legacy.ChangeTelnetHandler 4 | pwd=org.apache.dubbo.qos.legacy.CurrentTelnetHandler 5 | invoke=org.apache.dubbo.qos.legacy.InvokeTelnetHandler 6 | trace=org.apache.dubbo.qos.legacy.TraceTelnetHandler 7 | count=org.apache.dubbo.qos.legacy.CountTelnetHandler 8 | select=org.apache.dubbo.qos.legacy.SelectTelnetHandler 9 | shutdown=org.apache.dubbo.qos.legacy.ShutdownTelnetHandler -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | qos=org.apache.dubbo.qos.protocol.QosProtocolWrapper -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/TestInterface.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.qos.command.impl; 18 | 19 | public interface TestInterface { 20 | 21 | String sayHello(); 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/command/impl/TestInterface2.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.qos.command.impl; 18 | 19 | public interface TestInterface2 { 20 | 21 | String sayHello(); 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/service/NonSerialized.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.qos.legacy.service; 18 | 19 | /** 20 | * NonSerialized 21 | */ 22 | public class NonSerialized { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/service/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.qos.legacy.service; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/resources/META-INF/services/org.apache.dubbo.qos.command.BaseCommand: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | greeting=org.apache.dubbo.qos.command.GreetingCommand -------------------------------------------------------------------------------- /dubbo-plugin/dubbo-qos/src/test/resources/META-INF/services/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | test=org.apache.dubbo.qos.command.impl.TestRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/InvokersChangedListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.registry.client.migration; 18 | 19 | public interface InvokersChangedListener { 20 | void onChange(); 21 | } -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/integration/InvokersChangedListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.registry.integration; 18 | 19 | public interface InvokersChangedListener { 20 | void onChange(); 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.status.StatusChecker: -------------------------------------------------------------------------------- 1 | registry=org.apache.dubbo.registry.status.RegistryStatusChecker -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.event.EventListener: -------------------------------------------------------------------------------- 1 | registry-logging=org.apache.dubbo.registry.client.event.listener.LoggingEventListener -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.ServiceNameMapping: -------------------------------------------------------------------------------- 1 | metadata=org.apache.dubbo.registry.client.metadata.MetadataServiceNameMapping -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.metadata.WritableMetadataService: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.registry.client.metadata.store.InMemoryWritableMetadataService -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | service-discovery-registry=org.apache.dubbo.registry.client.ServiceDiscoveryRegistryFactory 2 | wrapper=org.apache.dubbo.registry.RegistryFactoryWrapper -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.RegistryClusterIdentifier: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.registry.client.DefaultRegistryClusterIdentifier -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | file=org.apache.dubbo.registry.client.FileSystemServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.registry.client.DefaultServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceInstanceCustomizer: -------------------------------------------------------------------------------- 1 | metadata-url=org.apache.dubbo.registry.client.metadata.MetadataServiceURLParamsMetadataCustomizer 2 | exported-revision=org.apache.dubbo.registry.client.metadata.ExportedServicesRevisionMetadataCustomizer 3 | subscribed-revision=org.apache.dubbo.registry.client.metadata.SubscribedServicesRevisionMetadataCustomizer 4 | protocol-ports=org.apache.dubbo.registry.client.metadata.ProtocolPortsMetadataCustomizer 5 | instance-port=org.apache.dubbo.config.metadata.ServiceInstancePortCustomizer 6 | instance-metadata=org.apache.dubbo.registry.client.metadata.ServiceInstanceMetadataCustomizer 7 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.metadata.MetadataServiceURLBuilder: -------------------------------------------------------------------------------- 1 | standard=org.apache.dubbo.registry.client.metadata.StandardMetadataServiceURLBuilder 2 | spring-cloud=org.apache.dubbo.registry.client.metadata.SpringCloudMetadataServiceURLBuilder -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.metadata.SubscribedURLsSynthesizer: -------------------------------------------------------------------------------- 1 | rest=org.apache.dubbo.registry.client.metadata.RestProtocolSubscribedURLsSynthesizer -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.migration.MigrationAddressComparator: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.registry.client.migration.DefaultMigrationAddressComparator -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.selector.ServiceInstanceSelector: -------------------------------------------------------------------------------- 1 | random=org.apache.dubbo.registry.client.selector.RandomServiceInstanceSelector -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.integration.RegistryProtocolListener: -------------------------------------------------------------------------------- 1 | migration=org.apache.dubbo.registry.client.migration.MigrationRuleListener -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | registry=org.apache.dubbo.registry.integration.InterfaceCompatibleRegistryProtocol 2 | service-discovery-registry=org.apache.dubbo.registry.integration.RegistryProtocol -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/client/ServieDiscoveryRegistryTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.registry.client; 18 | 19 | /** 20 | * 21 | */ 22 | public class ServieDiscoveryRegistryTest { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/test/resources/META-INF/dubbo/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | simple=org.apache.dubbo.registry.SimpleRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/test/resources/META-INF/dubbo/org.apache.dubbo.registry.RegistryServiceListener: -------------------------------------------------------------------------------- 1 | listener-one=org.apache.dubbo.registry.RegistryServiceListener1 2 | listener-two=org.apache.dubbo.registry.RegistryServiceListener2 -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/test/resources/META-INF/dubbo/org.apache.dubbo.registry.client.metadata.proxy.MetadataServiceProxyFactory: -------------------------------------------------------------------------------- 1 | # Override "local" implementation 2 | local=org.apache.dubbo.registry.client.metadata.proxy.MyMetadataServiceProxyFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-api/src/test/resources/META-INF/services/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | in-memory=org.apache.dubbo.registry.client.InMemoryServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-consul/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | consul=org.apache.dubbo.registry.consul.ConsulRegistryFactory 2 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-consul/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | consul=org.apache.dubbo.registry.consul.ConsulServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-default/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | dubbo=org.apache.dubbo.registry.dubbo.DubboRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-etcd3/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | etcd3=org.apache.dubbo.registry.etcd.EtcdRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-etcd3/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | etcd3=org.apache.dubbo.registry.etcd.EtcdServiceDiscovery 2 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-eureka/src/main/java/org/apache/dubbo/registry/eureka/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | /** 18 | * The package contains the registry implementations for Netflix Eureka 19 | * 20 | * @since 2.7.5 21 | */ 22 | package org.apache.dubbo.registry.eureka; 23 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-eureka/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | eureka=org.apache.dubbo.registry.eureka.EurekaServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multicast/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | multicast=org.apache.dubbo.registry.multicast.MulticastRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multicast/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | multicast=org.apache.dubbo.registry.multicast.MulticastServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multicast/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | multicast=org.apache.dubbo.registry.multicast.MulticastServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multiple/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | multiple=org.apache.dubbo.registry.multiple.MultipleRegistryFactory 2 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multiple/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | multiple=org.apache.dubbo.registry.multiple.MultipleRegistryServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-multiple/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | multiple=org.apache.dubbo.registry.multiple.MultipleRegistryServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-nacos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | nacos=org.apache.dubbo.registry.nacos.NacosRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-nacos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | nacos=org.apache.dubbo.registry.nacos.NacosServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-nacos/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | nacos=org.apache.dubbo.registry.nacos.NacosServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-redis/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | redis=org.apache.dubbo.registry.redis.RedisRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-sofa/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | sofa=org.apache.dubbo.registry.sofa.SofaRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-sofa/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | sofa=org.apache.dubbo.registry.sofa.SofaRegistryServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-sofa/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | sofa=org.apache.dubbo.registry.sofa.SofaRegistryServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-sofa/src/test/java/org/apache/dubbo/registry/sofa/HelloService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.registry.sofa; 18 | 19 | /** 20 | */ 21 | public interface HelloService { 22 | 23 | String sayHello(String name); 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-sofa/src/test/resources/log4j.properties: -------------------------------------------------------------------------------- 1 | ###set log levels### 2 | log4j.rootLogger=info, stdout 3 | ###output to the console### 4 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 5 | log4j.appender.stdout.Target=System.out 6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 | log4j.appender.stdout.layout.ConversionPattern=[%d{dd/MM/yy HH:mm:ss:SSS z}] %t %5p %c{2}: %m%n -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.RegistryFactory: -------------------------------------------------------------------------------- 1 | zookeeper=org.apache.dubbo.registry.zookeeper.ZookeeperRegistryFactory -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscovery: -------------------------------------------------------------------------------- 1 | zookeeper=org.apache.dubbo.registry.zookeeper.ZookeeperServiceDiscovery -------------------------------------------------------------------------------- /dubbo-registry/dubbo-registry-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.registry.client.ServiceDiscoveryFactory: -------------------------------------------------------------------------------- 1 | zookeeper=org.apache.dubbo.registry.zookeeper.ZookeeperServiceDiscoveryFactory -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/Decodeable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.apache.dubbo.remoting; 19 | 20 | public interface Decodeable { 21 | 22 | public void decode() throws Exception; 23 | 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Codec2: -------------------------------------------------------------------------------- 1 | transport=org.apache.dubbo.remoting.transport.codec.TransportCodec 2 | telnet=org.apache.dubbo.remoting.telnet.codec.TelnetCodec 3 | exchange=org.apache.dubbo.remoting.exchange.codec.ExchangeCodec -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Dispatcher: -------------------------------------------------------------------------------- 1 | all=org.apache.dubbo.remoting.transport.dispatcher.all.AllDispatcher 2 | direct=org.apache.dubbo.remoting.transport.dispatcher.direct.DirectDispatcher 3 | message=org.apache.dubbo.remoting.transport.dispatcher.message.MessageOnlyDispatcher 4 | execution=org.apache.dubbo.remoting.transport.dispatcher.execution.ExecutionDispatcher 5 | connection=org.apache.dubbo.remoting.transport.dispatcher.connection.ConnectionOrderedDispatcher -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.exchange.Exchanger: -------------------------------------------------------------------------------- 1 | header=org.apache.dubbo.remoting.exchange.support.header.HeaderExchanger -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.telnet.TelnetHandler: -------------------------------------------------------------------------------- 1 | clear=org.apache.dubbo.remoting.telnet.support.command.ClearTelnetHandler 2 | exit=org.apache.dubbo.remoting.telnet.support.command.ExitTelnetHandler 3 | help=org.apache.dubbo.remoting.telnet.support.command.HelpTelnetHandler 4 | status=org.apache.dubbo.remoting.telnet.support.command.StatusTelnetHandler 5 | log=org.apache.dubbo.remoting.telnet.support.command.LogTelnetHandler -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Transporter: -------------------------------------------------------------------------------- 1 | mockTransporter = org.apache.dubbo.remoting.MockTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-api/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.exchange.Exchanger: -------------------------------------------------------------------------------- 1 | mockExchanger = org.apache.dubbo.remoting.exchange.MockExchanger -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-etcd3/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.etcd.EtcdTransporter: -------------------------------------------------------------------------------- 1 | jetcd=org.apache.dubbo.remoting.etcd.jetcd.JEtcdTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-grizzly/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Transporter: -------------------------------------------------------------------------------- 1 | grizzly=org.apache.dubbo.remoting.transport.grizzly.GrizzlyTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-http/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.http.HttpBinder: -------------------------------------------------------------------------------- 1 | servlet=org.apache.dubbo.remoting.http.servlet.ServletHttpBinder 2 | jetty=org.apache.dubbo.remoting.http.jetty.JettyHttpBinder 3 | tomcat=org.apache.dubbo.remoting.http.tomcat.TomcatHttpBinder -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-mina/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Transporter: -------------------------------------------------------------------------------- 1 | mina=org.apache.dubbo.remoting.transport.mina.MinaTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-netty/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Transporter: -------------------------------------------------------------------------------- 1 | netty3=org.apache.dubbo.remoting.transport.netty.NettyTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-netty4/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Transporter: -------------------------------------------------------------------------------- 1 | netty4=org.apache.dubbo.remoting.transport.netty4.NettyTransporter 2 | netty=org.apache.dubbo.remoting.transport.netty4.NettyTransporter -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-p2p/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.p2p.Networker: -------------------------------------------------------------------------------- 1 | multicast=org.apache.dubbo.remoting.p2p.support.MulticastNetworker 2 | file=org.apache.dubbo.remoting.p2p.support.FileNetworker -------------------------------------------------------------------------------- /dubbo-remoting/dubbo-remoting-zookeeper/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.zookeeper.ZookeeperTransporter: -------------------------------------------------------------------------------- 1 | curator=org.apache.dubbo.remoting.zookeeper.curator.CuratorZookeeperTransporter 2 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/service/EchoService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package com.alibaba.dubbo.rpc.service; 19 | 20 | @Deprecated 21 | public interface EchoService extends org.apache.dubbo.rpc.service.EchoService { 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/InvokeMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc; 18 | 19 | public enum InvokeMode { 20 | 21 | SYNC, ASYNC, FUTURE; 22 | 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | echo=org.apache.dubbo.rpc.filter.EchoFilter 2 | generic=org.apache.dubbo.rpc.filter.GenericFilter 3 | genericimpl=org.apache.dubbo.rpc.filter.GenericImplFilter 4 | token=org.apache.dubbo.rpc.filter.TokenFilter 5 | accesslog=org.apache.dubbo.rpc.filter.AccessLogFilter 6 | activelimit=org.apache.dubbo.rpc.filter.ActiveLimitFilter 7 | classloader=org.apache.dubbo.rpc.filter.ClassLoaderFilter 8 | context=org.apache.dubbo.rpc.filter.ContextFilter 9 | consumercontext=org.apache.dubbo.rpc.filter.ConsumerContextFilter 10 | exception=org.apache.dubbo.rpc.filter.ExceptionFilter 11 | executelimit=org.apache.dubbo.rpc.filter.ExecuteLimitFilter 12 | deprecated=org.apache.dubbo.rpc.filter.DeprecatedFilter 13 | compatible=org.apache.dubbo.rpc.filter.CompatibleFilter 14 | timeout=org.apache.dubbo.rpc.filter.TimeoutFilter 15 | tps=org.apache.dubbo.rpc.filter.TpsLimitFilter -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.InvokerListener: -------------------------------------------------------------------------------- 1 | deprecated=org.apache.dubbo.rpc.listener.DeprecatedInvokerListener -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | filter=org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper 2 | listener=org.apache.dubbo.rpc.protocol.ProtocolListenerWrapper 3 | mock=org.apache.dubbo.rpc.support.MockProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.ProxyFactory: -------------------------------------------------------------------------------- 1 | stub=org.apache.dubbo.rpc.proxy.wrapper.StubProxyFactoryWrapper 2 | jdk=org.apache.dubbo.rpc.proxy.jdk.JdkProxyFactory 3 | javassist=org.apache.dubbo.rpc.proxy.javassist.JavassistProxyFactory -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/proxy/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.proxy; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/IEcho.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.support; 18 | 19 | public interface IEcho { 20 | String echo(String e); 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-api/src/test/java/org/apache/dubbo/rpc/support/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.support; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.status.StatusChecker: -------------------------------------------------------------------------------- 1 | server=org.apache.dubbo.rpc.protocol.dubbo.status.ServerStatusChecker 2 | threadpool=org.apache.dubbo.rpc.protocol.dubbo.status.ThreadPoolStatusChecker -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Codec2: -------------------------------------------------------------------------------- 1 | dubbo=org.apache.dubbo.rpc.protocol.dubbo.DubboCountCodec -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | trace=org.apache.dubbo.rpc.protocol.dubbo.filter.TraceFilter 2 | future=org.apache.dubbo.rpc.protocol.dubbo.filter.FutureFilter -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | dubbo=org.apache.dubbo.rpc.protocol.dubbo.DubboProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/IDemoService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.dubbo; 18 | 19 | public interface IDemoService { 20 | String get(); 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/NonSerialized.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.dubbo.support; 18 | 19 | /** 20 | * NonSerialized 21 | */ 22 | public class NonSerialized { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/test/java/org/apache/dubbo/rpc/protocol/dubbo/support/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.dubbo.support; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-dubbo/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.telnet.TelnetHandler: -------------------------------------------------------------------------------- 1 | test=org.apache.dubbo.rpc.protocol.dubbo.decode.telnet.TestTelnetHandler -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-grpc/src/main/java/org/apache/dubbo/rpc/protocol/grpc/GrpcConfig.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.grpc; 18 | 19 | public class GrpcConfig { 20 | 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-grpc/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | grpc=org.apache.dubbo.rpc.protocol.grpc.GrpcProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-grpc/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.protocol.grpc.interceptors.ClientInterceptor: -------------------------------------------------------------------------------- 1 | context=org.apache.dubbo.rpc.protocol.grpc.interceptors.RpcContextInterceptor -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-grpc/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.protocol.grpc.interceptors.ServerInterceptor: -------------------------------------------------------------------------------- 1 | context=org.apache.dubbo.rpc.protocol.grpc.interceptors.RpcContextInterceptor -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-hessian/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | hessian=org.apache.dubbo.rpc.protocol.hessian.HessianProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-http/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | http=org.apache.dubbo.rpc.protocol.http.HttpProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-injvm/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | injvm=org.apache.dubbo.rpc.protocol.injvm.InjvmProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/IEcho.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.injvm; 18 | 19 | public interface IEcho { 20 | String echo(String e); 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-injvm/src/test/java/org/apache/dubbo/rpc/protocol/injvm/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.injvm; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-memcached/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | memcached=org.apache.dubbo.rpc.protocol.memcached.MemcachedProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-memcached/src/test/java/org/apache/dubbo/rpc/protocol/memcached/MemcachedProtocolTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.memcached; 18 | 19 | public class MemcachedProtocolTest { 20 | 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-native-thrift/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | native-thrift=org.apache.dubbo.rpc.protocol.nativethrift.ThriftProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-native-thrift/src/test/idls/DemoService.thrift: -------------------------------------------------------------------------------- 1 | namespace java org.apache.dubbo.rpc.protocol.nativethrift 2 | namespace go demo 3 | /*Demo service define file,can be generated to interface files*/ 4 | /*Here test the 7 kind of data type*/ 5 | service DemoService { 6 | string sayHello(1:required string name); 7 | 8 | bool hasName( 1:required bool hasName); 9 | 10 | string sayHelloTimes(1:required string name, 2:required i32 times); 11 | 12 | void timeOut(1:required i32 millis); 13 | 14 | string customException(); 15 | 16 | string context(1:required string name); 17 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-native-thrift/src/test/idls/UserService.thrift: -------------------------------------------------------------------------------- 1 | namespace java org.apache.dubbo.rpc.protocol.nativethrift 2 | namespace go demo 3 | 4 | service UserService { 5 | string find(1:required i32 id); 6 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-redis/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | redis=org.apache.dubbo.rpc.protocol.redis.RedisProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-redis/src/test/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | java=org.apache.dubbo.common.serialize.java.JavaSerialization -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-rest/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | rest=org.apache.dubbo.rpc.protocol.rest.RestProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-rmi/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | rmi=org.apache.dubbo.rpc.protocol.rmi.RmiProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-rmi/src/test/java/org/apache/dubbo/rpc/protocol/rmi/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.rpc.protocol.rmi; 18 | 19 | public enum Type { 20 | High, Normal, Lower 21 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.Codec2: -------------------------------------------------------------------------------- 1 | thrift=org.apache.dubbo.rpc.protocol.thrift.ThriftCodec -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | thrift=org.apache.dubbo.rpc.protocol.thrift.ThriftProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.protocol.thrift.ClassNameGenerator: -------------------------------------------------------------------------------- 1 | dubbo=org.apache.dubbo.rpc.protocol.thrift.DubboClassNameGenerator 2 | thrift=org.apache.dubbo.rpc.protocol.thrift.ThriftClassNameGenerator -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/test/thrift/ClassNameTestDubbo.thrift: -------------------------------------------------------------------------------- 1 | service ClassNameTestDubbo { 2 | string echo(1:required string arg); 3 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/test/thrift/ClassNameTestThrift.thrift: -------------------------------------------------------------------------------- 1 | service ClassNameTestThrift { 2 | string echo(1:required string arg); 3 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-thrift/src/test/thrift/Demo.thrift: -------------------------------------------------------------------------------- 1 | namespace dubbo_java org.apache.dubbo.rpc.gen.dubbo 2 | namespace dubbo_cpp org.apache.dubbo.rpc.gen.dubbo 3 | 4 | namespace java org.apache.dubbo.rpc.gen.thrift 5 | namespace cpp org.apache.dubbo.rpc.gen.thrift 6 | 7 | service Demo { 8 | bool echoBool( 1:required bool arg ); 9 | byte echoByte( 1:required byte arg ); 10 | i16 echoI16 ( 1:required i16 arg ); 11 | i32 echoI32 ( 1:required i32 arg ); 12 | i64 echoI64 ( 1:required i64 arg ); 13 | 14 | double echoDouble( 1:required double arg ); 15 | string echoString( 1:required string arg ); 16 | } -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-webservice/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | webservice=org.apache.dubbo.rpc.protocol.webservice.WebServiceProtocol -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-xml/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.remoting.http.HttpBinder: -------------------------------------------------------------------------------- 1 | jetty9=org.apache.dubbo.remoting.http.jetty.JettyHttpBinder -------------------------------------------------------------------------------- /dubbo-rpc/dubbo-rpc-xml/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Protocol: -------------------------------------------------------------------------------- 1 | xmlrpc=org.apache.dubbo.xml.rpc.protocol.xmlrpc.XmlRpcProtocol -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-avro/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | avro=org.apache.dubbo.common.serialize.avro.AvroSerialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-fastjson/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | fastjson=org.apache.dubbo.common.serialize.fastjson.FastJsonSerialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-fst/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | fst=org.apache.dubbo.common.serialize.fst.FstSerialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-gson/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | gson=org.apache.dubbo.common.serialize.gson.GsonSerialization 2 | -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-hessian2/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | hessian2=org.apache.dubbo.common.serialize.hessian2.Hessian2Serialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-hessian2/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.hessian2.dubbo.Hessian2FactoryInitializer: -------------------------------------------------------------------------------- 1 | default=org.apache.dubbo.common.serialize.hessian2.dubbo.DefaultHessian2FactoryInitializer 2 | whitelist=org.apache.dubbo.common.serialize.hessian2.dubbo.WhitelistHessian2FactoryInitializer -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-jdk/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | java=org.apache.dubbo.common.serialize.java.JavaSerialization 2 | compactedjava=org.apache.dubbo.common.serialize.java.CompactedJavaSerialization 3 | nativejava=org.apache.dubbo.common.serialize.nativejava.NativeJavaSerialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-kryo/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | kryo=org.apache.dubbo.common.serialize.kryo.KryoSerialization 2 | kryo2=org.apache.dubbo.common.serialize.kryo.optimized.KryoSerialization2 -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-native-hession/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | native-hessian=org.apache.dubbo.serialize.hessian.Hessian2Serialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-protobuf/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | protobuf-json=org.apache.dubbo.common.serialize.protobuf.support.GenericProtobufJsonSerialization 2 | protobuf=org.apache.dubbo.common.serialize.protobuf.support.GenericProtobufSerialization -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-protostuff/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.common.serialize.Serialization: -------------------------------------------------------------------------------- 1 | protostuff=org.apache.dubbo.common.serialize.protostuff.ProtostuffSerialization 2 | -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-test/src/test/java/org/apache/dubbo/common/serialize/model/AnimalEnum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.common.serialize.model; 18 | 19 | public enum AnimalEnum { 20 | dog, cat, rat, cow, bull, horse 21 | } -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-test/src/test/java/org/apache/dubbo/common/serialize/model/person/PersonStatus.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package org.apache.dubbo.common.serialize.model.person; 18 | 19 | public enum PersonStatus { 20 | ENABLED, 21 | DISABLED 22 | } -------------------------------------------------------------------------------- /dubbo-serialization/dubbo-serialization-test/src/test/resources/org.apache.dubbo.common.serialize.dubbo/SimpleDO.fc: -------------------------------------------------------------------------------- 1 | a,d,e,b,c 2 | str3,str2 --------------------------------------------------------------------------------