package namer

import (
	"fmt"

	cloudv1 "github.com/tidbcloud/infra-api/api/v1"
	compatcst "github.com/tidbcloud/infra-provider/pkg/compat/consts"
	"github.com/tidbcloud/infra-provider/pkg/consts"
	legacynamer "github.com/tidbcloud/infra-provider/pkg/namer"
)

func LegacyBuildGCPNodePoolServiceAccountEmailName(network *cloudv1.Network, gcpProjectName string) string {
	if sa, ok := network.Annotations[compatcst.CompatGKESAAnnotation]; ok {
		return sa
	}
	return fmt.Sprintf("%s@%s.iam.gserviceaccount.com", legacynamer.LegacyBuildGCPNodePoolServiceAccountNameByNetwork(network), gcpProjectName)
}

func LegacyBuildClusterNameByNetwork(network *cloudv1.Network) string {
	if _, ok := network.Annotations[compatcst.CompatFlagAnnotation]; ok {
		return network.Annotations[consts.AnnotationKeyDataplaneName]
	}
	return legacynamer.LegacyBuildClusterNameByNetwork(network)
}
