2023-11-10 19:37:25 +08:00
|
|
|
package discoveryregister
|
2023-10-16 18:02:12 +08:00
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"errors"
|
2023-11-02 12:27:59 +08:00
|
|
|
|
2023-12-13 20:14:45 +08:00
|
|
|
"github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister/kubernetes"
|
|
|
|
|
"github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister/zookeeper"
|
2023-11-02 12:27:59 +08:00
|
|
|
|
2023-12-13 20:14:45 +08:00
|
|
|
"github.com/OpenIMSDK/tools/discoveryregistry"
|
2023-10-16 18:02:12 +08:00
|
|
|
)
|
|
|
|
|
|
2023-12-13 20:14:45 +08:00
|
|
|
// NewDiscoveryRegister creates a new service discovery and registry client based on the provided environment type.
|
2023-10-16 18:02:12 +08:00
|
|
|
func NewDiscoveryRegister(envType string) (discoveryregistry.SvcDiscoveryRegistry, error) {
|
|
|
|
|
switch envType {
|
|
|
|
|
case "zookeeper":
|
2023-12-13 20:14:45 +08:00
|
|
|
return zookeeper.NewZookeeperDiscoveryRegister()
|
2023-10-16 18:02:12 +08:00
|
|
|
case "k8s":
|
2023-12-13 20:14:45 +08:00
|
|
|
return kubernetes.NewK8sDiscoveryRegister()
|
2023-10-16 18:02:12 +08:00
|
|
|
default:
|
2023-12-13 20:14:45 +08:00
|
|
|
return nil, errors.New("envType not correct")
|
2023-10-16 18:02:12 +08:00
|
|
|
}
|
2023-10-26 12:22:43 +08:00
|
|
|
}
|