diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 4771510ecb36b2d9f46c6c74289060453e9da150..ad378e10edad44871688c0c6c1bda68180a46e53 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -5,9 +5,9 @@ </component> <component name="ChangeListManager"> <list default="true" id="9979eb22-471e-4f2f-b624-fd3edb5e8c6e" name="Changes" comment=""> - <change beforePath="$PROJECT_DIR$/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/flake.nix" beforeDir="false" afterPath="$PROJECT_DIR$/flake.nix" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/manager_test.go" beforeDir="false" afterPath="$PROJECT_DIR$/manager_test.go" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/worker.go" beforeDir="false" afterPath="$PROJECT_DIR$/worker.go" afterDir="false" /> </list> <option name="SHOW_DIALOG" value="false" /> <option name="HIGHLIGHT_CONFLICTS" value="true" /> @@ -255,7 +255,8 @@ <option name="presentableId" value="Default" /> <updated>1734001333374</updated> <workItem from="1734001335693" duration="5602000" /> - <workItem from="1734012566872" duration="3847000" /> + <workItem from="1734012566872" duration="4517000" /> + <workItem from="1734022155342" duration="253000" /> </task> <servers /> </component> diff --git a/manager_test.go b/manager_test.go index ee2321d156c3f586a3b60afa3be4780ede5c4a7d..9dc493a83086cbd36f25fb2608efbce2a94e1277 100644 --- a/manager_test.go +++ b/manager_test.go @@ -37,6 +37,10 @@ func (m *MockWorker) SetManager(manager *Manager) { return } +func (m *MockWorker) GetStatistic() Statistic { + return Statistic{} +} + func (m *MockWorker) AssignJob(job GenericJob) error { return nil } diff --git a/worker.go b/worker.go index 922904f878e4999bc74bd1b8a9f3803920d7b42c..506ef9b52e95a17c536e88c26526cf8a7fad779c 100644 --- a/worker.go +++ b/worker.go @@ -37,15 +37,16 @@ type Worker interface { GetID() WorkerID SetManager(manager *Manager) + GetStatistic() Statistic } type Statistic struct { - TotalThreads int - ActiveThreads int - JobsAssigned int - JobsCompleted int - FailedJobs int - TotalExecutionTime time.Duration + TotalThreads int `json:"totalThreads"` + ActiveThreads int `json:"activeThreads"` + JobsAssigned int `json:"jobsAssigned"` + JobsCompleted int `json:"jobsVompleted"` + FailedJobs int `json:"failedJobs"` + TotalExecutionTime time.Duration `json:"totalExecution_time"` } func (s *Statistic) AverageExecutionTime() time.Duration {