34 lines
836 B
Go
34 lines
836 B
Go
|
package datacenter
|
||
|
|
||
|
import (
|
||
|
logs "oc-lib/logs"
|
||
|
"oc-lib/mongo"
|
||
|
)
|
||
|
|
||
|
type DatacenterMongoAccessor struct{}
|
||
|
|
||
|
func (dca *DatacenterMongoAccessor) StoreOne(datacenter Datacenter) string {
|
||
|
id, err := mongo.StoreOne(datacenter, "datacenter")
|
||
|
if err != nil {
|
||
|
l := logs.CreateLogger("oclib", "")
|
||
|
l.Error().Msg("Could not store " + datacenter.Name + " to db. Error: " + err.Error())
|
||
|
return ""
|
||
|
}
|
||
|
return id
|
||
|
}
|
||
|
|
||
|
func (dca *DatacenterMongoAccessor) LoadOne(id string) Datacenter {
|
||
|
var datacenter Datacenter
|
||
|
|
||
|
res_mongo, err := mongo.LoadOne(id, "datacenter")
|
||
|
if err != nil {
|
||
|
l := logs.CreateLogger("oclib", "")
|
||
|
l.Error().Msg("Could not retrieve " + id + " from db. Error: " + err.Error())
|
||
|
return Datacenter{}
|
||
|
}
|
||
|
|
||
|
res_mongo.Decode(&datacenter)
|
||
|
|
||
|
return datacenter
|
||
|
}
|