MCPcopy
hub / github.com/daptin/daptin / GetAllSites

Function GetAllSites

server/subsite/get_all_subsites.go:11–66  ·  view source on GitHub ↗
(resourceInterface dbresourceinterface.DbResourceInterface, transaction *sqlx.Tx)

Source from the content-addressed store, hash-verified

9)
10
11func GetAllSites(resourceInterface dbresourceinterface.DbResourceInterface, transaction *sqlx.Tx) ([]SubSite, error) {
12
13 var sites []SubSite
14
15 s, v, err := statementbuilder.Squirrel.Select(
16 goqu.I("s.name"), goqu.I("s.hostname"),
17 goqu.I("s.cloud_store_id"),
18 goqu.I("s."+"user_account_id"), goqu.I("s.path"),
19 goqu.I("s.reference_id"), goqu.I("s.id"), goqu.I("s.enable"),
20 goqu.I("s.site_type"), goqu.I("s.ftp_enabled")).Prepared(true).
21 From(goqu.T("site").As("s")).ToSQL()
22 if err != nil {
23 return sites, err
24 }
25
26 stmt1, err := transaction.Preparex(s)
27 if err != nil {
28 log.Errorf("[424] failed to prepare statment: %v", err)
29 return nil, err
30 }
31
32 rows, err := stmt1.Queryx(v...)
33 if err != nil {
34 return sites, err
35 }
36
37 for rows.Next() {
38 var site SubSite
39 err = rows.StructScan(&site)
40 if err != nil {
41 log.Errorf("Failed to scan site from db to struct: %v", err)
42 }
43 sites = append(sites, site)
44 }
45
46 err = rows.Close()
47 if err != nil {
48 log.Error("Failed to close rows after getting all sites", err)
49 return nil, err
50 }
51
52 err = stmt1.Close()
53 if err != nil {
54 log.Errorf("failed to close prepared statement: %v", err)
55 return nil, err
56 }
57
58 for i, site := range sites {
59 perm := resourceInterface.GetObjectPermissionByReferenceId("site", site.ReferenceId, transaction)
60 site.Permission = perm
61 sites[i] = site
62 }
63
64 return sites, nil
65
66}

Callers 3

CreateSubSitesFunction · 0.92
CreateFtpServersFunction · 0.92

Calls 6

QueryxMethod · 0.80
ErrorMethod · 0.80
SelectMethod · 0.65
PreparexMethod · 0.65
CloseMethod · 0.65

Tested by

no test coverage detected