oc-lib/entrypoint.go
2024-07-18 14:39:54 +02:00

36 lines
982 B
Go

package oclib
import (
"cloud.o-forge.io/core/oc-lib/dbs/mongo"
"cloud.o-forge.io/core/oc-lib/models"
"cloud.o-forge.io/core/oc-lib/models/resources"
"cloud.o-forge.io/core/oc-lib/utils"
)
type LibData resources.ResourceType
const (
WORKFLOW LibData = 5
)
func Init() {
mongo.MONGOService.Init(models.GetModelsNames(), GetConfig())
}
func LoadOne(name string, driver utils.Driver, id string) interface{} {
return models.Model(name).GetAccessor(driver).LoadOne(id)
}
func UpdateOne(name string, driver utils.Driver, set map[string]interface{}, id string) interface{} {
return models.Model(name).GetAccessor(driver).UpdateOne(set, id)
}
func DeleteOne(name string, driver utils.Driver, id string) interface{} {
return models.Model(name).GetAccessor(driver).DeleteOne(id)
}
func StoreOne(name string, driver utils.Driver, object map[string]interface{}) interface{} {
model := models.Model(name)
return model.GetAccessor(driver).StoreOne(model.Deserialize(object))
}