package loader

import (
	"context"

	"github.com/tidbcloud/aisupport/packages/sdk-go/infra/logger"
)

type ConfigurationSourceMemory[T any] struct {
	config *T
}

func NewConfigurationSourceMemory[T any](config *T) *ConfigurationSourceMemory[T] {
	return &ConfigurationSourceMemory[T]{
		config: config,
	}
}

func (s *ConfigurationSourceMemory[T]) Load(ctx context.Context, _ *T) (*T, error) {
	logger.FromContext(ctx).Info("loading config from memory")
	return s.config, nil
}
