This is an automated email from the ASF dual-hosted git repository.

alexstocks pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo-go.git


The following commit(s) were added to refs/heads/3.0 by this push:
     new 3d57cfd  Rft: Restructuring remoting metadata service (#1227)
3d57cfd is described below

commit 3d57cfd75936c4c937c0c49d718b055ad14468d6
Author: XavierNiu <[email protected]>
AuthorDate: Mon Jun 7 10:43:46 2021 +0800

    Rft: Restructuring remoting metadata service (#1227)
    
    * restructure remoting metadata serivce
    
    * conform to the code style of imports
---
 common/extension/metadata_remote.go                | 12 +++----
 config/config_loader.go                            |  4 +--
 config/reference_config.go                         |  4 +--
 config/service_config.go                           |  4 +--
 .../{remote/remote_impl => remoting}/service.go    | 38 ++++++++++------------
 .../remote_impl => remoting}/service_test.go       |  4 +--
 .../{remote/remote.go => remoting_service.go}      |  5 ++-
 .../service_instances_changed_listener_impl.go     |  2 +-
 8 files changed, 35 insertions(+), 38 deletions(-)

diff --git a/common/extension/metadata_remote.go 
b/common/extension/metadata_remote.go
index b07178e..d0452b7 100644
--- a/common/extension/metadata_remote.go
+++ b/common/extension/metadata_remote.go
@@ -26,22 +26,22 @@ import (
 )
 
 import (
-       "dubbo.apache.org/dubbo-go/v3/metadata/service/remote"
+       "dubbo.apache.org/dubbo-go/v3/metadata/service"
 )
 
-type remoteMetadataServiceCreator func() (remote.RemoteMetadataService, error)
+type remotingMetadataServiceCreator func() (service.RemotingMetadataService, 
error)
 
 var (
-       creator remoteMetadataServiceCreator
+       creator remotingMetadataServiceCreator
 )
 
-// SetRemoteMetadataService will store the remote metadata service
-func SetRemoteMetadataService(creatorFunc remoteMetadataServiceCreator) {
+// SetRemotingMetadataService will store the remote metadata service
+func SetRemotingMetadataService(creatorFunc remotingMetadataServiceCreator) {
        creator = creatorFunc
 }
 
 // GetRemoteMetadataServiceFactory will create a MetadataService instance
-func GetRemoteMetadataService() (remote.RemoteMetadataService, error) {
+func GetRemotingMetadataService() (service.RemotingMetadataService, error) {
        if creator != nil {
                return creator()
        }
diff --git a/config/config_loader.go b/config/config_loader.go
index 5b0e9c4..54617ab 100644
--- a/config/config_loader.go
+++ b/config/config_loader.go
@@ -300,8 +300,8 @@ func registerServiceInstance() {
                }
        }
        // todo publish metadata to remote
-       if remoteMetadataServiceImpl, err := 
extension.GetRemoteMetadataService(); err == nil {
-               
remoteMetadataServiceImpl.PublishMetadata(GetApplicationConfig().Name)
+       if remotingMetadataService, err := 
extension.GetRemotingMetadataService(); err == nil {
+               
remotingMetadataService.PublishMetadata(GetApplicationConfig().Name)
        }
 }
 
diff --git a/config/reference_config.go b/config/reference_config.go
index c649d67..f4d43cb 100644
--- a/config/reference_config.go
+++ b/config/reference_config.go
@@ -296,8 +296,8 @@ func (c *ReferenceConfig) GetInvoker() protocol.Invoker {
 }
 
 func publishConsumerDefinition(url *common.URL) {
-       if remoteMetadataServiceImpl, err := 
extension.GetRemoteMetadataService(); err == nil && remoteMetadataServiceImpl 
!= nil {
-               remoteMetadataServiceImpl.PublishServiceDefinition(url)
+       if remotingMetadataService, err := 
extension.GetRemotingMetadataService(); err == nil && remotingMetadataService 
!= nil {
+               remotingMetadataService.PublishServiceDefinition(url)
        }
 }
 
diff --git a/config/service_config.go b/config/service_config.go
index c8ac41e..fb84c35 100644
--- a/config/service_config.go
+++ b/config/service_config.go
@@ -356,8 +356,8 @@ func (c *ServiceConfig) GetExportedUrls() []*common.URL {
 }
 
 func publishServiceDefinition(url *common.URL) {
-       if remoteMetadataServiceImpl, err := 
extension.GetRemoteMetadataService(); err == nil && remoteMetadataServiceImpl 
!= nil {
-               remoteMetadataServiceImpl.PublishServiceDefinition(url)
+       if remotingMetadataService, err := 
extension.GetRemotingMetadataService(); err == nil && remotingMetadataService 
!= nil {
+               remotingMetadataService.PublishServiceDefinition(url)
 
        }
 }
diff --git a/metadata/service/remote/remote_impl/service.go 
b/metadata/service/remoting/service.go
similarity index 76%
rename from metadata/service/remote/remote_impl/service.go
rename to metadata/service/remoting/service.go
index 7023f52..ed9e990 100644
--- a/metadata/service/remote/remote_impl/service.go
+++ b/metadata/service/remoting/service.go
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package remote_impl
+package remoting
 
 import (
        "sync"
@@ -33,14 +33,12 @@ import (
        "dubbo.apache.org/dubbo-go/v3/metadata/definition"
        "dubbo.apache.org/dubbo-go/v3/metadata/identifier"
        "dubbo.apache.org/dubbo-go/v3/metadata/report/delegate"
+       "dubbo.apache.org/dubbo-go/v3/metadata/service"
        "dubbo.apache.org/dubbo-go/v3/metadata/service/inmemory"
-       "dubbo.apache.org/dubbo-go/v3/metadata/service/remote"
        "dubbo.apache.org/dubbo-go/v3/registry"
 )
 
-// MetadataService is a implement of metadata service which will delegate the 
remote metadata report
-// This is singleton
-type RemoteMetadataServiceImpl struct {
+type MetadataService struct {
        *inmemory.MetadataService
        exportedRevision   atomic.String
        subscribedRevision atomic.String
@@ -48,16 +46,16 @@ type RemoteMetadataServiceImpl struct {
 }
 
 var (
-       metadataServiceOnce               sync.Once
-       remoteMetadataServiceImplInstance remote.RemoteMetadataService
+       metadataServiceOnce             sync.Once
+       remotingMetadataServiceInstance service.RemotingMetadataService
 )
 
 func init() {
-       extension.SetRemoteMetadataService(GetRemoteMetadataService)
+       extension.SetRemotingMetadataService(GetRemotingMetadataService)
 }
 
-// GetRemoteMetadataService will create a new remote MetadataService instance
-func GetRemoteMetadataService() (remote.RemoteMetadataService, error) {
+// GetRemotingMetadataService will create a new remote MetadataService instance
+func GetRemotingMetadataService() (service.RemotingMetadataService, error) {
        var err error
        metadataServiceOnce.Do(func() {
                var mr *delegate.MetadataReport
@@ -67,19 +65,19 @@ func GetRemoteMetadataService() 
(remote.RemoteMetadataService, error) {
                }
                // it will never return error
                inms, _ := inmemory.GetInMemoryMetadataService()
-               remoteMetadataServiceImplInstance = &RemoteMetadataServiceImpl{
+               remotingMetadataServiceInstance = &MetadataService{
                        // todo serviceName
                        //BaseMetadataService:     
service.NewBaseMetadataService(""),
                        MetadataService: inms.(*inmemory.MetadataService),
                        delegateReport:  mr,
                }
        })
-       return remoteMetadataServiceImplInstance, err
+       return remotingMetadataServiceInstance, err
 }
 
 // PublishMetadata publishes the metadata info of @service to remote metadata 
center
-func (mts *RemoteMetadataServiceImpl) PublishMetadata(service string) {
-       info, err := mts.MetadataService.GetMetadataInfo("")
+func (s *MetadataService) PublishMetadata(service string) {
+       info, err := s.MetadataService.GetMetadataInfo("")
        if err != nil {
                logger.Errorf("GetMetadataInfo error[%v]", err)
                return
@@ -88,7 +86,7 @@ func (mts *RemoteMetadataServiceImpl) PublishMetadata(service 
string) {
                return
        }
        id := identifier.NewSubscriberMetadataIdentifier(service, 
info.CalAndGetRevision())
-       err = mts.delegateReport.PublishAppMetadata(id, info)
+       err = s.delegateReport.PublishAppMetadata(id, info)
        if err != nil {
                logger.Errorf("Publishing metadata to error[%v]", err)
                return
@@ -97,14 +95,14 @@ func (mts *RemoteMetadataServiceImpl) 
PublishMetadata(service string) {
 }
 
 // GetMetadata get the medata info of service from report
-func (mts *RemoteMetadataServiceImpl) GetMetadata(instance 
registry.ServiceInstance) (*common.MetadataInfo, error) {
+func (s *MetadataService) GetMetadata(instance registry.ServiceInstance) 
(*common.MetadataInfo, error) {
        revision := 
instance.GetMetadata()[constant.EXPORTED_SERVICES_REVISION_PROPERTY_NAME]
        id := 
identifier.NewSubscriberMetadataIdentifier(instance.GetServiceName(), revision)
-       return mts.delegateReport.GetAppMetadata(id)
+       return s.delegateReport.GetAppMetadata(id)
 }
 
 // PublishServiceDefinition will call remote metadata's StoreProviderMetadata 
to store url info and service definition
-func (mts *RemoteMetadataServiceImpl) PublishServiceDefinition(url 
*common.URL) error {
+func (s *MetadataService) PublishServiceDefinition(url *common.URL) error {
        interfaceName := url.GetParam(constant.INTERFACE_KEY, "")
        isGeneric := url.GetParamBool(constant.GENERIC_KEY, false)
        if common.RoleType(common.PROVIDER).Role() == 
url.GetParam(constant.SIDE_KEY, "") {
@@ -119,7 +117,7 @@ func (mts *RemoteMetadataServiceImpl) 
PublishServiceDefinition(url *common.URL)
                                        Side:             
url.GetParam(constant.SIDE_KEY, constant.PROVIDER_PROTOCOL),
                                },
                        }
-                       mts.delegateReport.StoreProviderMetadata(id, sd)
+                       s.delegateReport.StoreProviderMetadata(id, sd)
                        return nil
                }
                logger.Errorf("publishProvider interfaceName is empty . 
providerUrl:%v ", url)
@@ -137,7 +135,7 @@ func (mts *RemoteMetadataServiceImpl) 
PublishServiceDefinition(url *common.URL)
                                Side:             
url.GetParam(constant.SIDE_KEY, "consumer"),
                        },
                }
-               mts.delegateReport.StoreConsumerMetadata(id, params)
+               s.delegateReport.StoreConsumerMetadata(id, params)
                return nil
        }
 
diff --git a/metadata/service/remote/remote_impl/service_test.go 
b/metadata/service/remoting/service_test.go
similarity index 98%
rename from metadata/service/remote/remote_impl/service_test.go
rename to metadata/service/remoting/service_test.go
index ddc680d..a493214 100644
--- a/metadata/service/remote/remote_impl/service_test.go
+++ b/metadata/service/remoting/service_test.go
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package remote_impl
+package remoting
 
 import (
        "fmt"
@@ -104,7 +104,7 @@ func TestMetadataService(t *testing.T) {
        u, err := common.NewURL("mock://127.0.0.1:20000/?sync.report=true")
        assert.NoError(t, err)
        instance.GetMetadataReportInstance(u)
-       mts, err := GetRemoteMetadataService()
+       mts, err := GetRemotingMetadataService()
        assert.NoError(t, err)
        assert.NotNil(t, mts)
 }
diff --git a/metadata/service/remote/remote.go 
b/metadata/service/remoting_service.go
similarity index 92%
rename from metadata/service/remote/remote.go
rename to metadata/service/remoting_service.go
index 1a574fd..ec7653c 100644
--- a/metadata/service/remote/remote.go
+++ b/metadata/service/remoting_service.go
@@ -15,15 +15,14 @@
  * limitations under the License.
  */
 
-package remote
+package service
 
 import (
        "dubbo.apache.org/dubbo-go/v3/common"
        "dubbo.apache.org/dubbo-go/v3/registry"
 )
 
-// RemoteMetadataService for save and get metadata
-type RemoteMetadataService interface {
+type RemotingMetadataService interface {
        // PublishMetadata publish the medata info of service from report
        PublishMetadata(service string)
        // GetMetadata get the medata info of service from report
diff --git a/registry/event/service_instances_changed_listener_impl.go 
b/registry/event/service_instances_changed_listener_impl.go
index 6d6ab00..cd1993c 100644
--- a/registry/event/service_instances_changed_listener_impl.go
+++ b/registry/event/service_instances_changed_listener_impl.go
@@ -151,7 +151,7 @@ func (lstn *ServiceInstancesChangedListenerImpl) 
getMetadataInfo(instance regist
                metadataStorageType = 
instance.GetMetadata()[constant.METADATA_STORAGE_TYPE_PROPERTY_NAME]
        }
        if metadataStorageType == constant.REMOTE_METADATA_STORAGE_TYPE {
-               remoteMetadataServiceImpl, err := 
extension.GetRemoteMetadataService()
+               remoteMetadataServiceImpl, err := 
extension.GetRemotingMetadataService()
                if err != nil {
                        return nil, err
                }

Reply via email to