mirror of https://github.com/minio/minio.git
Merge pull request #380 from fkautz/pr_out_adding_iodine_to_donut_bucket
This commit is contained in:
commit
28355c7aa6
|
@ -2,6 +2,7 @@ package donut
|
|||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/minio-io/iodine"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
@ -12,7 +13,7 @@ type donutBucket struct {
|
|||
}
|
||||
|
||||
// GetNodes - get list of associated nodes for a given bucket
|
||||
func (b donutBucket) GetNodes() ([]string, error) {
|
||||
func (b donutBucket) GetNodes() ([]string, *iodine.Error) {
|
||||
var nodes []string
|
||||
for _, node := range b.nodes {
|
||||
nodes = append(nodes, node)
|
||||
|
@ -20,17 +21,17 @@ func (b donutBucket) GetNodes() ([]string, error) {
|
|||
return nodes, nil
|
||||
}
|
||||
|
||||
func (b donutBucket) AddNode(nodeID, bucketID string) error {
|
||||
func (b donutBucket) AddNode(nodeID, bucketID string) *iodine.Error {
|
||||
tokens := strings.Split(bucketID, ":")
|
||||
if len(tokens) != 3 {
|
||||
return errors.New("Bucket ID malformed: " + bucketID)
|
||||
return iodine.New(errors.New("Bucket ID malformed: "+bucketID), map[string]string{"nodeID": nodeID, "bucketID": bucketID})
|
||||
}
|
||||
// bucketName := tokens[0]
|
||||
// aggregate := tokens[1]
|
||||
// aggregate := "0"
|
||||
part, err := strconv.Atoi(tokens[2])
|
||||
if err != nil {
|
||||
return errors.New("Part malformed: " + tokens[2])
|
||||
return iodine.New(errors.New("Part malformed: "+tokens[2]), map[string]string{"nodeID": nodeID, "bucketID": bucketID})
|
||||
}
|
||||
b.nodes[part] = nodeID
|
||||
return nil
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package donut
|
||||
|
||||
import (
|
||||
"github.com/minio-io/iodine"
|
||||
"io"
|
||||
)
|
||||
|
||||
|
@ -18,8 +19,8 @@ type Donut interface {
|
|||
|
||||
// Bucket interface
|
||||
type Bucket interface {
|
||||
GetNodes() ([]string, error)
|
||||
AddNode(nodeID, bucketID string) error
|
||||
GetNodes() ([]string, *iodine.Error)
|
||||
AddNode(nodeID, bucketID string) *iodine.Error
|
||||
}
|
||||
|
||||
// Node interface
|
||||
|
|
Loading…
Reference in New Issue