MCPcopy
hub / github.com/cloudreve/cloudreve / sqlAll

Method sqlAll

ent/node_query.go:369–403  ·  view source on GitHub ↗
(ctx context.Context, hooks ...queryHook)

Source from the content-addressed store, hash-verified

367}
368
369func (nq *NodeQuery) sqlAll(ctx context.Context, hooks ...queryHook) ([]*Node, error) {
370 var (
371 nodes = []*Node{}
372 _spec = nq.querySpec()
373 loadedTypes = [1]bool{
374 nq.withStoragePolicy != nil,
375 }
376 )
377 _spec.ScanValues = func(columns []string) ([]any, error) {
378 return (*Node).scanValues(nil, columns)
379 }
380 _spec.Assign = func(columns []string, values []any) error {
381 node := &Node{config: nq.config}
382 nodes = append(nodes, node)
383 node.Edges.loadedTypes = loadedTypes
384 return node.assignValues(columns, values)
385 }
386 for i := range hooks {
387 hooks[i](ctx, _spec)
388 }
389 if err := sqlgraph.QueryNodes(ctx, nq.driver, _spec); err != nil {
390 return nil, err
391 }
392 if len(nodes) == 0 {
393 return nodes, nil
394 }
395 if query := nq.withStoragePolicy; query != nil {
396 if err := nq.loadStoragePolicy(ctx, query, nodes,
397 func(n *Node) { n.Edges.StoragePolicy = []*StoragePolicy{} },
398 func(n *Node, e *StoragePolicy) { n.Edges.StoragePolicy = append(n.Edges.StoragePolicy, e) }); err != nil {
399 return nil, err
400 }
401 }
402 return nodes, nil
403}
404
405func (nq *NodeQuery) loadStoragePolicy(ctx context.Context, query *StoragePolicyQuery, nodes []*Node, init func(*Node), assign func(*Node, *StoragePolicy)) error {
406 fks := make([]driver.Value, 0, len(nodes))

Callers 1

querierAllFunction · 0.45

Calls 4

querySpecMethod · 0.95
assignValuesMethod · 0.95
loadStoragePolicyMethod · 0.95
scanValuesMethod · 0.45

Tested by

no test coverage detected