summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukasz Wojciechowski <l.wojciechow@partner.samsung.com>2017-10-24 11:11:34 +0200
committerLukasz Wojciechowski <l.wojciechow@partner.samsung.com>2018-04-27 17:14:51 +0200
commitcc1e4fe0fc4e6d0eba172c74e9a6cf62e1bae8eb (patch)
tree38e07e0f66cff229cc05e86813bca79ac8d986d0
parente94a71c390f0b21c876c33c2c03509771c96ea3d (diff)
downloadboruta-cc1e4fe0fc4e6d0eba172c74e9a6cf62e1bae8eb.tar.gz
boruta-cc1e4fe0fc4e6d0eba172c74e9a6cf62e1bae8eb.tar.bz2
boruta-cc1e4fe0fc4e6d0eba172c74e9a6cf62e1bae8eb.zip
Add WorkerChange interface
WorkerChange interface defines API for implementation to be informed about changes in workers. The mock implementation of interface is provided in workers package. It is generated using mockgen command: mockgen -package workers \ -destination=workers/workerchange_mock_test.go \ -write_package_comment=false \ git.tizen.org/tools/boruta/workers WorkerChange Change-Id: Ia17aefd747057868bf2b4b57332397a591ac038a Signed-off-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
-rw-r--r--workers/workerchange.go34
-rw-r--r--workers/workerchange_mock_test.go53
2 files changed, 87 insertions, 0 deletions
diff --git a/workers/workerchange.go b/workers/workerchange.go
new file mode 100644
index 0000000..c75a040
--- /dev/null
+++ b/workers/workerchange.go
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2017-2018 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+// File workers/workerchange.go defines WorkerChange interface with API
+// for notification about changes in workers' states.
+
+package workers
+
+import (
+ . "git.tizen.org/tools/boruta"
+)
+
+// WorkerChange defines API for implementation to be informed about
+// changes in workers.
+type WorkerChange interface {
+ // OnWorkerIdle notifies about available idle worker.
+ OnWorkerIdle(WorkerUUID)
+ // OnWorkerFail notifies about breaking execution of job by a running worker and
+ // putting it into FAIL or MAINTENANCE state.
+ OnWorkerFail(WorkerUUID)
+}
diff --git a/workers/workerchange_mock_test.go b/workers/workerchange_mock_test.go
new file mode 100644
index 0000000..e15f5a7
--- /dev/null
+++ b/workers/workerchange_mock_test.go
@@ -0,0 +1,53 @@
+// Code generated by MockGen. DO NOT EDIT.
+// Source: git.tizen.org/tools/boruta/workers (interfaces: WorkerChange)
+
+package workers
+
+import (
+ boruta "git.tizen.org/tools/boruta"
+ gomock "github.com/golang/mock/gomock"
+ reflect "reflect"
+)
+
+// MockWorkerChange is a mock of WorkerChange interface
+type MockWorkerChange struct {
+ ctrl *gomock.Controller
+ recorder *MockWorkerChangeMockRecorder
+}
+
+// MockWorkerChangeMockRecorder is the mock recorder for MockWorkerChange
+type MockWorkerChangeMockRecorder struct {
+ mock *MockWorkerChange
+}
+
+// NewMockWorkerChange creates a new mock instance
+func NewMockWorkerChange(ctrl *gomock.Controller) *MockWorkerChange {
+ mock := &MockWorkerChange{ctrl: ctrl}
+ mock.recorder = &MockWorkerChangeMockRecorder{mock}
+ return mock
+}
+
+// EXPECT returns an object that allows the caller to indicate expected use
+func (m *MockWorkerChange) EXPECT() *MockWorkerChangeMockRecorder {
+ return m.recorder
+}
+
+// OnWorkerFail mocks base method
+func (m *MockWorkerChange) OnWorkerFail(arg0 boruta.WorkerUUID) {
+ m.ctrl.Call(m, "OnWorkerFail", arg0)
+}
+
+// OnWorkerFail indicates an expected call of OnWorkerFail
+func (mr *MockWorkerChangeMockRecorder) OnWorkerFail(arg0 interface{}) *gomock.Call {
+ return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OnWorkerFail", reflect.TypeOf((*MockWorkerChange)(nil).OnWorkerFail), arg0)
+}
+
+// OnWorkerIdle mocks base method
+func (m *MockWorkerChange) OnWorkerIdle(arg0 boruta.WorkerUUID) {
+ m.ctrl.Call(m, "OnWorkerIdle", arg0)
+}
+
+// OnWorkerIdle indicates an expected call of OnWorkerIdle
+func (mr *MockWorkerChangeMockRecorder) OnWorkerIdle(arg0 interface{}) *gomock.Call {
+ return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OnWorkerIdle", reflect.TypeOf((*MockWorkerChange)(nil).OnWorkerIdle), arg0)
+}