package cvt

import (
	globalcommonv1 "github.com/tidbcloud/tidb-management-service/api/spec/global/common/v1"
	regionalserverlessv1 "github.com/tidbcloud/tidb-management-service/api/spec/regional/serverless/v1"
)

func CloudProviderEnum2Name(provider regionalserverlessv1.CloudProvider) globalcommonv1.CloudProvider_Name {
	switch provider {
	case regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_AWS:
		return globalcommonv1.CloudProvider_AWS
	case regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_GCP:
		return globalcommonv1.CloudProvider_GCP
	case regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_AZURE:
		return globalcommonv1.CloudProvider_AZURE
	case regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_ALICLOUD:
		return globalcommonv1.CloudProvider_ALICLOUD
	default:
		return globalcommonv1.CloudProvider_NAME_UNSPECIFIED
	}
}

func Name2CloudProviderEnum(name string) regionalserverlessv1.CloudProvider {
	switch name {
	case "aws":
		return regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_AWS
	case "gcp":
		return regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_GCP
	case "azure":
		return regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_AZURE
	case "alicloud":
		return regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_ALICLOUD
	default:
		return regionalserverlessv1.CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
	}
}
