EdgexAgent/device-ble-go/vendor/github.com/openziti/identity/engines/engines.go
2025-07-10 20:40:32 +08:00

31 lines
455 B
Go

package engines
import (
"crypto"
"net/url"
)
func RegisterEngine(e Engine) {
engines[e.Id()] = e
}
type Engine interface {
Id() string
LoadKey(key *url.URL) (crypto.PrivateKey, error)
}
var engines = map[string]Engine{}
func ListEngines() []string {
res := make([]string, 0, len(engines))
for k := range engines {
res = append(res, k)
}
return res
}
func GetEngine(id string) (Engine, bool) {
e, found := engines[id]
return e, found
}