MCPcopy Create free account
hub / github.com/GitbookIO/micro-analytics / Query

Method Query

database/sqlite/sqlite.go:26–58  ·  view source on GitHub ↗
(params database.Params)

Source from the content-addressed store, hash-verified

24}
25
26func (driver *SQLite) Query(params database.Params) (*database.Analytics, error) {
27 // Construct DBPath
28 dbPath := manager.DBPath{
29 Name: params.DBName,
30 Directory: driver.directory,
31 }
32
33 // Check if DB file exists
34 dbExists, err := driver.DBManager.DBExists(dbPath)
35 if err != nil {
36 return nil, &errors.InternalError
37 }
38
39 // DB doesn't exist
40 if !dbExists {
41 return nil, &errors.InvalidDatabaseName
42 }
43
44 // Get DB from manager
45 db, err := driver.DBManager.Acquire(dbPath)
46 if err != nil {
47 return nil, &errors.InternalError
48 }
49 defer driver.DBManager.Release(db)
50
51 // Return query result
52 analytics, err := query.Query(db.DB, params.TimeRange)
53 if err != nil {
54 return nil, &errors.InternalError
55 }
56
57 return analytics, nil
58}
59
60func (driver *SQLite) Count(params database.Params) (*database.Count, error) {
61 // Construct DBPath

Callers

nothing calls this directly

Calls 4

DBExistsMethod · 0.80
AcquireMethod · 0.80
ReleaseMethod · 0.80
QueryMethod · 0.65

Tested by

no test coverage detected