package shadowpool

import (
	"context"

	tidbmgmtservicev1 "github.com/tidbcloud/tidb-management-service/api/spec/tidb_mgmt_service/v1"
)

func (s *serverImpl) CreateShadowPool(
	ctx context.Context,
	req *tidbmgmtservicev1.CreateShadowPoolRequest,
) (*tidbmgmtservicev1.ShadowPool, error) {
	return s.shadowPoolSvc.CreateShadowPool(ctx, req)
}

func (s *serverImpl) GetShadowPool(
	ctx context.Context,
	req *tidbmgmtservicev1.GetShadowPoolRequest,
) (*tidbmgmtservicev1.ShadowPool, error) {
	return s.shadowPoolSvc.GetShadowPool(ctx, req)
}

func (s *serverImpl) ListShadowPools(
	ctx context.Context,
	req *tidbmgmtservicev1.ListShadowPoolsRequest,
) (*tidbmgmtservicev1.ListShadowPoolsResponse, error) {
	return s.shadowPoolSvc.ListShadowPools(ctx, req)
}

func (s *serverImpl) UpdateShadowPool(
	ctx context.Context,
	req *tidbmgmtservicev1.UpdateShadowPoolRequest,
) (*tidbmgmtservicev1.ShadowPool, error) {
	return s.shadowPoolSvc.UpdateShadowPool(ctx, req)
}

func (s *serverImpl) DeleteShadowPool(
	ctx context.Context,
	req *tidbmgmtservicev1.DeleteShadowPoolRequest,
) (*tidbmgmtservicev1.DeleteShadowPoolResponse, error) {
	return s.shadowPoolSvc.DeleteShadowPool(ctx, req)
}
