// Copyright (c) 2024 Mattermost Community Enterprise // Registration of Metrics implementation package metrics import ( "github.com/mattermost/mattermost/server/public/shared/mlog" "github.com/mattermost/mattermost/server/v8/einterfaces" ) // MetricsFactory is a function type that creates a MetricsInterface type MetricsFactory func(logger mlog.LoggerIFace, driver string, dataSource string) einterfaces.MetricsInterface // NewMetricsFactory returns a factory function for creating Metrics interfaces func NewMetricsFactory() MetricsFactory { return func(logger mlog.LoggerIFace, driver string, dataSource string) einterfaces.MetricsInterface { return NewMetricsInterface(logger) } } // CreateMetricsInterface creates a new Metrics interface directly func CreateMetricsInterface(logger mlog.LoggerIFace) einterfaces.MetricsInterface { return NewMetricsInterface(logger) }