瀏覽代碼

feature(manager): worker => workerStatus

walkerning 9 年之前
父節點
當前提交
734826fa67
共有 4 個文件被更改,包括 20 次插入20 次删除
  1. 7 7
      manager/db.go
  2. 1 1
      manager/db_test.go
  3. 2 2
      manager/server.go
  4. 10 10
      manager/server_test.go

+ 7 - 7
manager/db.go

@@ -10,9 +10,9 @@ import (
 
 type dbAdapter interface {
 	Init() error
-	ListWorkers() ([]worker, error)
-	GetWorker(workerID string) (worker, error)
-	CreateWorker(w worker) (worker, error)
+	ListWorkers() ([]workerStatus, error)
+	GetWorker(workerID string) (workerStatus, error)
+	CreateWorker(w workerStatus) (workerStatus, error)
 	UpdateMirrorStatus(workerID, mirrorID string, status mirrorStatus) (mirrorStatus, error)
 	GetMirrorStatus(workerID, mirrorID string) (mirrorStatus, error)
 	ListMirrorStatus(workerID string) ([]mirrorStatus, error)
@@ -61,11 +61,11 @@ func (b *boltAdapter) Init() (err error) {
 	})
 }
 
-func (b *boltAdapter) ListWorkers() (ws []worker, err error) {
+func (b *boltAdapter) ListWorkers() (ws []workerStatus, err error) {
 	err = b.db.View(func(tx *bolt.Tx) error {
 		bucket := tx.Bucket([]byte(_workerBucketKey))
 		c := bucket.Cursor()
-		var w worker
+		var w workerStatus
 		for k, v := c.First(); k != nil; k, v = c.Next() {
 			jsonErr := json.Unmarshal(v, &w)
 			if jsonErr != nil {
@@ -79,7 +79,7 @@ func (b *boltAdapter) ListWorkers() (ws []worker, err error) {
 	return
 }
 
-func (b *boltAdapter) GetWorker(workerID string) (w worker, err error) {
+func (b *boltAdapter) GetWorker(workerID string) (w workerStatus, err error) {
 	err = b.db.View(func(tx *bolt.Tx) error {
 		bucket := tx.Bucket([]byte(_workerBucketKey))
 		v := bucket.Get([]byte(workerID))
@@ -92,7 +92,7 @@ func (b *boltAdapter) GetWorker(workerID string) (w worker, err error) {
 	return
 }
 
-func (b *boltAdapter) CreateWorker(w worker) (worker, error) {
+func (b *boltAdapter) CreateWorker(w workerStatus) (workerStatus, error) {
 	err := b.db.Update(func(tx *bolt.Tx) error {
 		bucket := tx.Bucket([]byte(_workerBucketKey))
 		v, err := json.Marshal(w)

+ 1 - 1
manager/db_test.go

@@ -31,7 +31,7 @@ func TestBoltAdapter(t *testing.T) {
 		testWorkerIDs := []string{"test_worker1", "test_worker2"}
 		Convey("create worker", func() {
 			for _, id := range testWorkerIDs {
-				w := worker{
+				w := workerStatus{
 					ID:         id,
 					Token:      "token_" + id,
 					LastOnline: time.Now(),

+ 2 - 2
manager/server.go

@@ -21,7 +21,7 @@ const (
 	_infoKey  = "message"
 )
 
-type worker struct {
+type workerStatus struct {
 	ID         string    `json:"id"`          // worker name
 	Token      string    `json:"token"`       // session token
 	LastOnline time.Time `json:"last_online"` // last seen
@@ -72,7 +72,7 @@ func (s *managerServer) listWorkers(c *gin.Context) {
 
 // registerWorker register an newly-online worker
 func (s *managerServer) registerWorker(c *gin.Context) {
-	var _worker worker
+	var _worker workerStatus
 	c.BindJSON(&_worker)
 	newWorker, err := s.adapter.CreateWorker(_worker)
 	if err != nil {

+ 10 - 10
manager/server_test.go

@@ -31,8 +31,8 @@ func TestHTTPServer(t *testing.T) {
 		s := makeHTTPServer(false)
 		So(s, ShouldNotBeNil)
 		s.setDBAdapter(&mockDBAdapter{
-			workerStore: map[string]worker{
-				_magicBadWorkerID: worker{
+			workerStore: map[string]workerStatus{
+				_magicBadWorkerID: workerStatus{
 					ID: _magicBadWorkerID,
 				}},
 			statusStore: make(map[string]mirrorStatus),
@@ -67,7 +67,7 @@ func TestHTTPServer(t *testing.T) {
 		})
 
 		Convey("when register a worker", func() {
-			w := worker{
+			w := workerStatus{
 				ID: "test_worker1",
 			}
 			resp, err := postJSON(baseURL+"/workers", w)
@@ -153,7 +153,7 @@ func TestHTTPServer(t *testing.T) {
 }
 
 type mockDBAdapter struct {
-	workerStore map[string]worker
+	workerStore map[string]workerStatus
 	statusStore map[string]mirrorStatus
 }
 
@@ -161,8 +161,8 @@ func (b *mockDBAdapter) Init() error {
 	return nil
 }
 
-func (b *mockDBAdapter) ListWorkers() ([]worker, error) {
-	workers := make([]worker, len(b.workerStore))
+func (b *mockDBAdapter) ListWorkers() ([]workerStatus, error) {
+	workers := make([]workerStatus, len(b.workerStore))
 	idx := 0
 	for _, w := range b.workerStore {
 		workers[idx] = w
@@ -171,18 +171,18 @@ func (b *mockDBAdapter) ListWorkers() ([]worker, error) {
 	return workers, nil
 }
 
-func (b *mockDBAdapter) GetWorker(workerID string) (worker, error) {
+func (b *mockDBAdapter) GetWorker(workerID string) (workerStatus, error) {
 	w, ok := b.workerStore[workerID]
 	if !ok {
-		return worker{}, fmt.Errorf("invalid workerId")
+		return workerStatus{}, fmt.Errorf("invalid workerId")
 	}
 	return w, nil
 }
 
-func (b *mockDBAdapter) CreateWorker(w worker) (worker, error) {
+func (b *mockDBAdapter) CreateWorker(w workerStatus) (workerStatus, error) {
 	// _, ok := b.workerStore[w.ID]
 	// if ok {
-	// 	return worker{}, fmt.Errorf("duplicate worker name")
+	// 	return workerStatus{}, fmt.Errorf("duplicate worker name")
 	// }
 	b.workerStore[w.ID] = w
 	return w, nil