summaryrefslogtreecommitdiff
path: root/src/hub/src/spreadspace.org/sfive/s5store.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/hub/src/spreadspace.org/sfive/s5store.go')
-rw-r--r--src/hub/src/spreadspace.org/sfive/s5store.go26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/hub/src/spreadspace.org/sfive/s5store.go b/src/hub/src/spreadspace.org/sfive/s5store.go
index e23c3db..e50daf3 100644
--- a/src/hub/src/spreadspace.org/sfive/s5store.go
+++ b/src/hub/src/spreadspace.org/sfive/s5store.go
@@ -175,13 +175,15 @@ func getFilteredDataUpdateSelect(filter *StatsFilter) (string, map[string]interf
if filter.start != nil {
query += insertAnd(&needsAnd)
- query += " Start >= :filterstart"
+ query += " StartTime >= :filterstart"
parameters["filterstart"] = filter.start
+ needsAnd = true
}
if filter.end != nil {
query += insertAnd(&needsAnd)
- query += " Start < :filterend"
+ query += " StartTime < :filterend"
parameters["filterend"] = filter.end
+ needsAnd = true
}
// TODO other fields
@@ -359,6 +361,26 @@ func (s sqliteStore) GetSource(id int) (res sourceDb, err error) {
return
}
+func (s sqliteStore) GetUpdate(id int) (res dataUpdateDb, err error) {
+ err = s.db.SelectOne(&res, "select * from "+dataUpdatesTn+" where Id = ?", id)
+ return
+}
+
+func (s sqliteStore) GetUpdates(filter *StatsFilter) (res []dataUpdateDb, err error) {
+ sourceSql, parameters := getFilteredDataUpdateSelect(filter)
+ updates, err := s.db.Select(
+ dataUpdateDb{},
+ "select Id, SourceId, StartTime, ClientCount, BytesReceived, BytesSent from "+sourceSql,
+ parameters)
+ if err == nil {
+ res = make([]dataUpdateDb, len(updates))
+ for i := range updates {
+ res[i] = *updates[i].(*dataUpdateDb)
+ }
+ }
+ return
+}
+
func (s sqliteStore) CountUpdateEntries(filter *StatsFilter) (count int64, err error) {
sourceSql, parameters := getFilteredDataUpdateSelect(filter)
count, err = s.db.SelectInt("select count(*) from "+sourceSql, parameters)