summaryrefslogtreecommitdiff
path: root/pkg/domain/entities/containers.go
diff options
context:
space:
mode:
authorValentin Rothberg <rothberg@redhat.com>2020-09-23 13:32:58 +0200
committerValentin Rothberg <rothberg@redhat.com>2020-09-23 15:39:25 +0200
commit376ba349bfadc47a938084ccb3c2d112c92f09ca (patch)
treefa8acd364392a28b0f0cddc361b83806b4da4458 /pkg/domain/entities/containers.go
parent5cedd830f7275e8dc3382502908b846bfa57a3b8 (diff)
downloadpodman-376ba349bfadc47a938084ccb3c2d112c92f09ca.tar.gz
podman-376ba349bfadc47a938084ccb3c2d112c92f09ca.tar.bz2
podman-376ba349bfadc47a938084ccb3c2d112c92f09ca.zip
stats refactor
Refactor the entities' stats API to simplify using it and reduce the risk of running into concurrency issues at the call sites. Further simplify the stats code by de-spaghetti-ing the logic and reducing duplicate code. `ContainerStats` now returns a data channel and an error. If the error is nil, callers can read from the channel. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
Diffstat (limited to 'pkg/domain/entities/containers.go')
-rw-r--r--pkg/domain/entities/containers.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/pkg/domain/entities/containers.go b/pkg/domain/entities/containers.go
index 16997cdd1..b6f86785f 100644
--- a/pkg/domain/entities/containers.go
+++ b/pkg/domain/entities/containers.go
@@ -416,5 +416,10 @@ type ContainerStatsOptions struct {
Latest bool
NoReset bool
NoStream bool
- StatChan chan []*define.ContainerStats
+}
+
+// ContainerStatsReport is used for streaming container stats.
+type ContainerStatsReport struct {
+ Error error
+ Stats []define.ContainerStats
}