mirror of
https://github.com/Warky-Devs/ResolveSpec.git
synced 2025-05-18 20:57:29 +00:00
RegisterModel on resolvespec main export
This commit is contained in:
parent
2ac0404222
commit
d0741d90fe
@ -16,7 +16,7 @@ var (
|
||||
// RegisterModel registers a model type with the registry
|
||||
// The model must be a struct or a pointer to a struct
|
||||
// e.g RegisterModel(&ModelPublicUser{},"public.user")
|
||||
func RegisterModel(model interface{}, name string) {
|
||||
func RegisterModel(model interface{}, name string) error {
|
||||
modelRegistryMutex.Lock()
|
||||
defer modelRegistryMutex.Unlock()
|
||||
|
||||
@ -28,6 +28,7 @@ func RegisterModel(model interface{}, name string) {
|
||||
name = modelType.Name()
|
||||
}
|
||||
modelRegistry[name] = model
|
||||
return nil
|
||||
}
|
||||
|
||||
// RegisterFunction register a function with the registry
|
||||
|
@ -65,3 +65,14 @@ func (h *APIHandler) getModelForEntity(schema, name string) (interface{}, error)
|
||||
}
|
||||
return model, err
|
||||
}
|
||||
|
||||
func (h *APIHandler) RegisterModel(schema, name string, model interface{}) error {
|
||||
fullname := fmt.Sprintf("%s.%s", schema, name)
|
||||
model, err := models.GetModelByName(fullname)
|
||||
if model != nil && err != nil {
|
||||
return fmt.Errorf("model %s already exists", fullname)
|
||||
}
|
||||
err = models.RegisterModel(model, fullname)
|
||||
|
||||
return err
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user