package cloud

import (
	"github.com/pingcap-inc/clinic/pkg/account_sdk"
	"github.com/pingcap-inc/clinic/pkg/config"
	"github.com/pingcap-inc/clinic/pkg/datasource/internal/cloud/internal/dbaas_core"
	"github.com/pingcap-inc/clinic/pkg/serverlesscli"
)

var (
	accountC    *account_sdk.Client
	serverlessC *serverlesscli.Client
)

func Initialize(cfg config.DBaasConfig, accountClient *account_sdk.Client) error {
	accountC = accountClient
	serverlessC, _ = serverlesscli.NewClient(cfg.ServerlessEndpoint)
	return dbaas_core.Initialize(cfg)
}

func InitializeCoresvc(endpoint string) {
	dbaas_core.InitializeCoresvc(endpoint)
}

func InitializeCloudSvc(endpoint string) {
	dbaas_core.InitializeCloudSvc(endpoint)
}

func InitializeMgmtSvc(endpoint string) {
	dbaas_core.InitializeMgmtSvc(endpoint)
}
