package organizationdb import ( "context" "github.com/tech/sendico/pkg/auth" "github.com/tech/sendico/pkg/db/policy" "github.com/tech/sendico/pkg/mlogger" "github.com/tech/sendico/pkg/model" "github.com/tech/sendico/pkg/mservice" "go.mongodb.org/mongo-driver/mongo" ) type OrganizationDB struct { auth.ProtectedDBImp[*model.Organization] } func Create(ctx context.Context, logger mlogger.Logger, enforcer auth.Enforcer, pdb policy.DB, db *mongo.Database, ) (*OrganizationDB, error) { p, err := auth.CreateDBImp[*model.Organization](ctx, logger, pdb, enforcer, mservice.Organizations, db) if err != nil { return nil, err } res := &OrganizationDB{ ProtectedDBImp: *p, } p.DBImp.SetDeleter(res.DeleteCascade) return res, nil }