This is an automated email from the ASF dual-hosted git repository. flycash pushed a change to branch feature/rest in repository https://gitbox.apache.org/repos/asf/dubbo-go.git.
from 932e149 Mod: upgrade hessian2 add cabd56a Fix: readme add c268f8f Fix: fix jsonprc about 'HTTP/1.1' add 2c5a4f6 fix zookeeper config center namespace default value invalid add cd37e52 Merge pull request #326 from zouyx/feature/fixConfigCenter add 979acb2 Merge pull request #305 from apache/develop add 35abd82 feat(grpc): 支持client grpc 调用 add c47b089 support grpc server add ae67fa1 stash for cli & server test add 4cd0a60 move some to internal add 1fb4d91 fmt add c7d140d stop for client test add ac47753 add new client test add 3e839f3 add invoker test add ddb3c64 use another port add 68fea4b change port add dd5273f add doc add 8f5c6c3 feat(client): add dubbo proto generate add 9617d26 feat(client): add dubbo proto generate add e9017cb fmt add ebcb9f6 fmt & tidy add 7a5be71 bug fix add 7fa1bbd fmt add 5029e32 Merge pull request #275 from xujianhai666/feature/grpc-client add 47131f2 resolve conflicts add 78818e8 Merge pull request #312 from flycash/grpc add d9d334a Mod: modidfy Refer params and add licence add 2d6f7f3 Fmt: package add 1c0e422 Merge pull request #317 from fangyincheng/feature/grpc add 3897328 Merge pull request #311 from apache/feature/grpc add 748ed1c Merge remote-tracking branch 'apache/develop' into develop add 0b74040 Fix: omitted param add 45363f2 Mod: README.md add 7c3178e modify add ff410ac Merge pull request #327 from fangyincheng/develop add 8d34495 Add: travis dingding add 5d1797b supplement rpc stats add df48230 fix unit test add 5bc05b9 fix ci add 436924f fix comment issue add ae41f5a fix comment issue add 3aa39fd fix some naming error add f8d1ecd Merge pull request #328 from CodingSinger/tolerance add 5212a3d GOLINT: add comment for exported (checked by golint) add e2dc717 Add: dingding robot in travis yml add f5c2390 Merge branch 'develop' of https://github.com/apache/dubbo-go into develop add da6d29a Context support add e945c66 format code add a81c012 Fix review: context.TODO => context.Backgroud add ab69968 Fix review: split imports add 29c195d Fix Review add 1fa4bf6 Merge pull request #330 from flycash/feature/context add adf366a update license and notice add bc23f7c Merge pull request #336 from zouyx/feature/UpdateLicense add d63631b Add opentracing dependency add a8e952e define TracingFilter add e556b01 Doing tracing filter add 833000b Doing tracing filter add 5c78245 tested tracing filter add 5216fb1 rearrnage imports add e07ca04 Move context to the invocation add 0c19b52 Using default context.Context. add cc7fc72 Merge origin develop add e071810 Pass Context from client add 37d517e Merge context add 70a7436 Merge develop add c48b3cb JsonRPC tracing chain add aec964d Split import add 0196c0e Remove TODO add d9075ad Merge pull request #335 from flycash/feature/Opentracing add c07e4e3 Merge commit 'd9075ad' into feature/add_comment_for_exported_by_golint add c8b6fdd Merge pull request #333 from weiwei-xiao/feature/add_comment_for_exported_by_golint add c9ab3f2 Update Changes.md add 0128e85 Merge pull request #338 from zouyx/feature/UpdateChanges add 351e1ae Imp: reduce lock scope add 93f865c Mod: gofmt add 5dd99c6 Merge pull request #318 from divebomb/develop add d7ff97b Merge branch 'develop' add c028651 Fix: by goreportcard.com add ddd70ee Fix: add type for var add e019139 Mod: go fmt add 6ec3894 Merge branch 'develop' add ea95e04 Fix: golint by goreportcard.com add deb9ea1 Merge branch 'develop' add 5a71b39 Add: log/comment rule add bd84cfa add unit_test add 6809d8d a add 82fe079 Merge remote-tracking branch 'apache/develop' into develop add 0804c09 modify zk ListenServiceEvent add ade85d6 modify zk ListenServiceEvent add 13ddacc Mod:rm chinese add 0d5e447 Mod:rm rather than comment add 4de49ef Merge pull request #343 from hxmhlt/modify_zk add df79a5c Extract add a283aeb Transfer context for dubbo protocol by attachment add d96c241 Rearrange imports add 3db2f4d Remove context key add 0e57187 Fix review add c291d2c Merge pull request #344 from flycash/feature/dubbo-context new e899345 Merge pull request #347 from apache/develop The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .travis.yml | 3 + CHANGE.md | 38 +++ LICENSE | 13 + NOTICE | 2 +- README.md | 7 +- README_CN.md | 7 +- cluster/cluster.go | 1 + cluster/cluster_impl/available_cluster.go | 1 + cluster/cluster_impl/available_cluster_invoker.go | 6 +- .../cluster_impl/available_cluster_invoker_test.go | 4 +- cluster/cluster_impl/broadcast_cluster.go | 1 + cluster/cluster_impl/broadcast_cluster_invoker.go | 7 +- .../cluster_impl/broadcast_cluster_invoker_test.go | 4 +- cluster/cluster_impl/failback_cluster.go | 1 + cluster/cluster_impl/failback_cluster_invoker.go | 11 +- cluster/cluster_impl/failback_cluster_test.go | 12 +- cluster/cluster_impl/failfast_cluster.go | 1 + cluster/cluster_impl/failfast_cluster_invoker.go | 7 +- cluster/cluster_impl/failfast_cluster_test.go | 4 +- cluster/cluster_impl/failover_cluster.go | 1 + cluster/cluster_impl/failover_cluster_invoker.go | 5 +- cluster/cluster_impl/failover_cluster_test.go | 16 +- cluster/cluster_impl/failsafe_cluster.go | 1 + cluster/cluster_impl/failsafe_cluster_invoker.go | 7 +- cluster/cluster_impl/failsafe_cluster_test.go | 12 +- cluster/cluster_impl/forking_cluster.go | 1 + cluster/cluster_impl/forking_cluster_invoker.go | 17 +- cluster/cluster_impl/forking_cluster_test.go | 6 +- cluster/cluster_impl/mock_cluster.go | 1 + cluster/cluster_impl/registry_aware_cluster.go | 1 + .../cluster_impl/registry_aware_cluster_invoker.go | 9 +- .../cluster_impl/registry_aware_cluster_test.go | 8 +- cluster/directory.go | 3 +- cluster/directory/base_directory.go | 8 + cluster/directory/static_directory.go | 1 + cluster/loadbalance.go | 3 +- cluster/loadbalance/consistent_hash.go | 13 +- cluster/loadbalance/least_active.go | 16 +- cluster/loadbalance/random.go | 1 + cluster/loadbalance/round_robin.go | 10 +- cluster/loadbalance/util.go | 1 + cluster/router.go | 4 + cluster/router/condition_router.go | 21 +- cluster/router/condition_router_test.go | 10 +- cluster/router/router_factory.go | 4 + common/config/environment.go | 20 +- common/constant/env.go | 5 +- common/constant/key.go | 4 + common/constant/version.go | 7 +- common/extension/cluster.go | 2 + common/extension/config_center.go | 2 + common/extension/config_center_factory.go | 2 + common/extension/configurator.go | 12 +- common/extension/filter.go | 4 + common/extension/graceful_shutdown.go | 2 + common/extension/loadbalance.go | 2 + common/extension/protocol.go | 2 + common/extension/proxy_factory.go | 11 +- common/extension/registry.go | 2 + common/extension/router_factory.go | 2 + common/extension/tps_limit.go | 4 + common/logger/logger.go | 9 + common/logger/logging.go | 15 + common/node.go | 1 + common/proxy/proxy.go | 41 ++- common/proxy/proxy_factory.go | 2 + common/proxy/proxy_factory/default.go | 13 +- common/rpc_service.go | 39 ++- common/rpc_service_test.go | 5 +- common/url.go | 50 ++- config/application_config.go | 8 + config/base_config.go | 10 +- config/config_center_config.go | 5 +- config/config_loader.go | 8 +- config/consumer_config.go | 7 + config/generic_service.go | 4 + config/graceful_shutdown.go | 2 + config/graceful_shutdown_config.go | 4 + config/graceful_shutdown_signal_darwin.go | 14 +- config/graceful_shutdown_signal_linux.go | 14 +- config/graceful_shutdown_signal_windows.go | 12 +- config/method_config.go | 10 +- config/mock_rpcservice.go | 4 + config/protocol_config.go | 3 + config/provider_config.go | 8 + config/reference_config.go | 115 ++++--- config/reference_config_test.go | 18 +- config/registry_config.go | 14 +- config/service.go | 7 +- config/service_config.go | 98 +++--- config_center/apollo/factory.go | 6 +- config_center/apollo/impl.go | 18 +- config_center/apollo/impl_test.go | 2 +- config_center/apollo/listener.go | 28 +- config_center/configuration_listener.go | 2 + config_center/configurator.go | 1 + config_center/configurator/mock.go | 4 + config_center/configurator/override.go | 1 + config_center/configurator/override_test.go | 4 + config_center/dynamic_configuration.go | 13 +- config_center/dynamic_configuration_factory.go | 1 + config_center/mock_dynamic_config.go | 28 +- config_center/parser/configuration_parser.go | 15 +- config_center/zookeeper/impl.go | 61 ++-- config_center/zookeeper/listener.go | 8 +- contributing.md | 12 +- filter/filter.go | 8 +- filter/filter_impl/access_log_filter.go | 30 +- filter/filter_impl/access_log_filter_test.go | 6 +- filter/filter_impl/active_filter.go | 33 +- filter/filter_impl/active_filter_test.go | 66 ++++ filter/filter_impl/echo_filter.go | 17 +- filter/filter_impl/echo_filter_test.go | 7 +- filter/filter_impl/execute_limit_filter.go | 34 +- filter/filter_impl/execute_limit_filter_test.go | 7 +- filter/filter_impl/generic_filter.go | 18 +- filter/filter_impl/generic_filter_test.go | 1 + filter/filter_impl/generic_service_filter.go | 17 +- filter/filter_impl/generic_service_filter_test.go | 15 +- filter/filter_impl/graceful_shutdown_filter.go | 7 +- .../filter_impl/graceful_shutdown_filter_test.go | 5 +- filter/filter_impl/hystrix_filter.go | 31 +- filter/filter_impl/hystrix_filter_test.go | 17 +- filter/filter_impl/token_filter.go | 14 +- filter/filter_impl/token_filter_test.go | 17 +- .../tps/tps_limit_fix_window_strategy.go | 3 + .../tps/tps_limit_sliding_window_strategy.go | 2 + .../tps_limit_thread_safe_fix_window_strategy.go | 2 + .../filter_impl/tps/tps_limiter_method_service.go | 8 +- filter/filter_impl/tps_limit_filter.go | 17 +- filter/filter_impl/tps_limit_filter_test.go | 17 +- filter/filter_impl/tracing_filter.go | 107 +++++++ ...s_log_filter_test.go => tracing_filter_test.go} | 51 +-- .../handler/rejected_execution_handler_only_log.go | 12 +- filter/rejected_execution_handler.go | 2 + filter/tps_limit_strategy.go | 2 + filter/tps_limiter.go | 1 + go.mod | 2 + go.sum | 25 ++ protocol/dubbo/client.go | 23 +- protocol/dubbo/codec.go | 19 +- protocol/dubbo/config.go | 12 +- protocol/dubbo/dubbo_exporter.go | 3 + protocol/dubbo/dubbo_invoker.go | 34 +- protocol/dubbo/dubbo_invoker_test.go | 19 +- protocol/dubbo/dubbo_protocol.go | 8 + protocol/dubbo/listener.go | 58 +++- protocol/dubbo/listener_test.go | 58 ++++ protocol/dubbo/pool.go | 133 ++++---- protocol/dubbo/readwriter.go | 3 + protocol/dubbo/server.go | 7 + .../apollo/factory.go => protocol/grpc/client.go | 50 ++- protocol/grpc/client_test.go | 54 ++++ protocol/grpc/common_test.go | 114 +++++++ .../factory.go => protocol/grpc/grpc_exporter.go | 38 ++- protocol/grpc/grpc_invoker.go | 104 +++++++ protocol/grpc/grpc_invoker_test.go | 56 ++++ protocol/grpc/grpc_protocol.go | 113 +++++++ protocol/grpc/grpc_protocol_test.go | 85 +++++ .../grpc/internal/client.go | 32 +- .../grpc/internal/doc.go | 25 +- protocol/grpc/internal/helloworld.pb.go | 227 ++++++++++++++ protocol/grpc/internal/server.go | 66 ++++ protocol/grpc/protoc-gen-dubbo/examples/Makefile | 19 ++ .../protoc-gen-dubbo/examples/helloworld.pb.go | 301 ++++++++++++++++++ .../protoc-gen-dubbo/examples/helloworld.proto | 37 +++ protocol/grpc/protoc-gen-dubbo/main.go | 74 +++++ .../grpc/protoc-gen-dubbo/plugin/dubbo/doc.go | 25 +- .../grpc/protoc-gen-dubbo/plugin/dubbo/dubbo.go | 346 +++++++++++++++++++++ protocol/grpc/server.go | 106 +++++++ protocol/invocation.go | 2 + protocol/invocation/rpcinvocation.go | 64 +++- protocol/invoker.go | 16 +- protocol/jsonrpc/http.go | 24 +- protocol/jsonrpc/http_test.go | 6 + protocol/jsonrpc/json.go | 14 +- protocol/jsonrpc/jsonrpc_exporter.go | 3 + protocol/jsonrpc/jsonrpc_invoker.go | 9 +- protocol/jsonrpc/jsonrpc_invoker_test.go | 2 +- protocol/jsonrpc/jsonrpc_protocol.go | 12 +- protocol/jsonrpc/server.go | 30 +- protocol/mock/mock_invoker.go | 3 +- protocol/protocol.go | 14 + protocol/protocolwrapper/mock_protocol_filter.go | 1 + .../protocolwrapper/protocol_filter_wrapper.go | 22 +- .../protocol_filter_wrapper_test.go | 7 +- protocol/result.go | 9 + protocol/rpc_status.go | 118 ++++++- protocol/rpc_status_test.go | 152 +++++++++ registry/base_configuration_listener.go | 8 + registry/consul/registry.go | 10 +- registry/directory/directory.go | 14 +- registry/etcdv3/listener.go | 2 + registry/etcdv3/registry.go | 31 +- registry/etcdv3/registry_test.go | 10 +- registry/event.go | 1 + registry/mock_registry.go | 21 +- registry/nacos/listener.go | 1 + registry/nacos/registry.go | 9 +- registry/protocol/protocol.go | 6 +- registry/registry.go | 6 +- registry/zookeeper/listener.go | 12 + registry/zookeeper/registry.go | 11 +- remoting/etcdv3/client.go | 32 +- remoting/etcdv3/facade.go | 1 + remoting/etcdv3/listener.go | 9 +- remoting/listener.go | 6 + remoting/zookeeper/client.go | 32 +- remoting/zookeeper/client_test.go | 9 + remoting/zookeeper/facade.go | 1 + remoting/zookeeper/listener.go | 64 +--- remoting/zookeeper/listener_test.go | 3 +- 212 files changed, 4011 insertions(+), 783 deletions(-) create mode 100644 filter/filter_impl/active_filter_test.go create mode 100644 filter/filter_impl/tracing_filter.go copy filter/filter_impl/{access_log_filter_test.go => tracing_filter_test.go} (53%) create mode 100644 protocol/dubbo/listener_test.go copy config_center/apollo/factory.go => protocol/grpc/client.go (50%) create mode 100644 protocol/grpc/client_test.go create mode 100644 protocol/grpc/common_test.go copy config_center/apollo/factory.go => protocol/grpc/grpc_exporter.go (53%) create mode 100644 protocol/grpc/grpc_invoker.go create mode 100644 protocol/grpc/grpc_invoker_test.go create mode 100644 protocol/grpc/grpc_protocol.go create mode 100644 protocol/grpc/grpc_protocol_test.go copy cluster/cluster_impl/available_cluster.go => protocol/grpc/internal/client.go (59%) copy cluster/cluster_impl/forking_cluster.go => protocol/grpc/internal/doc.go (61%) create mode 100644 protocol/grpc/internal/helloworld.pb.go create mode 100644 protocol/grpc/internal/server.go create mode 100644 protocol/grpc/protoc-gen-dubbo/examples/Makefile create mode 100644 protocol/grpc/protoc-gen-dubbo/examples/helloworld.pb.go create mode 100644 protocol/grpc/protoc-gen-dubbo/examples/helloworld.proto create mode 100644 protocol/grpc/protoc-gen-dubbo/main.go copy cluster/cluster_impl/forking_cluster.go => protocol/grpc/protoc-gen-dubbo/plugin/dubbo/doc.go (61%) create mode 100644 protocol/grpc/protoc-gen-dubbo/plugin/dubbo/dubbo.go create mode 100644 protocol/grpc/server.go create mode 100644 protocol/rpc_status_test.go