MCPcopy Create free account
hub / github.com/cloudreve/cloudreve / sqlAll

Method sqlAll

ent/group_query.go:405–446  ·  view source on GitHub ↗
(ctx context.Context, hooks ...queryHook)

Source from the content-addressed store, hash-verified

403}
404
405func (gq *GroupQuery) sqlAll(ctx context.Context, hooks ...queryHook) ([]*Group, error) {
406 var (
407 nodes = []*Group{}
408 _spec = gq.querySpec()
409 loadedTypes = [2]bool{
410 gq.withUsers != nil,
411 gq.withStoragePolicies != nil,
412 }
413 )
414 _spec.ScanValues = func(columns []string) ([]any, error) {
415 return (*Group).scanValues(nil, columns)
416 }
417 _spec.Assign = func(columns []string, values []any) error {
418 node := &Group{config: gq.config}
419 nodes = append(nodes, node)
420 node.Edges.loadedTypes = loadedTypes
421 return node.assignValues(columns, values)
422 }
423 for i := range hooks {
424 hooks[i](ctx, _spec)
425 }
426 if err := sqlgraph.QueryNodes(ctx, gq.driver, _spec); err != nil {
427 return nil, err
428 }
429 if len(nodes) == 0 {
430 return nodes, nil
431 }
432 if query := gq.withUsers; query != nil {
433 if err := gq.loadUsers(ctx, query, nodes,
434 func(n *Group) { n.Edges.Users = []*User{} },
435 func(n *Group, e *User) { n.Edges.Users = append(n.Edges.Users, e) }); err != nil {
436 return nil, err
437 }
438 }
439 if query := gq.withStoragePolicies; query != nil {
440 if err := gq.loadStoragePolicies(ctx, query, nodes, nil,
441 func(n *Group, e *StoragePolicy) { n.Edges.StoragePolicies = e }); err != nil {
442 return nil, err
443 }
444 }
445 return nodes, nil
446}
447
448func (gq *GroupQuery) loadUsers(ctx context.Context, query *UserQuery, nodes []*Group, init func(*Group), assign func(*Group, *User)) error {
449 fks := make([]driver.Value, 0, len(nodes))

Callers

nothing calls this directly

Calls 5

querySpecMethod · 0.95
assignValuesMethod · 0.95
loadUsersMethod · 0.95
loadStoragePoliciesMethod · 0.95
scanValuesMethod · 0.45

Tested by

no test coverage detected