easier for client to delete file

This commit is contained in:
Chris Lu
2013-08-14 00:31:02 -07:00
parent d5e7c1de0a
commit 48e4ced29d
3 changed files with 22 additions and 9 deletions

View File

@@ -1,10 +1,11 @@
package storage
import (
"code.google.com/p/weed-fs/go/glog"
"code.google.com/p/weed-fs/go/util"
"encoding/hex"
"errors"
"strings"
"code.google.com/p/weed-fs/go/glog"
)
type FileId struct {
@@ -16,16 +17,16 @@ type FileId struct {
func NewFileId(VolumeId VolumeId, Key uint64, Hashcode uint32) *FileId {
return &FileId{VolumeId: VolumeId, Key: Key, Hashcode: Hashcode}
}
func ParseFileId(fid string) *FileId {
func ParseFileId(fid string) (*FileId, error) {
a := strings.Split(fid, ",")
if len(a) != 2 {
glog.V(1).Infoln("Invalid fid", fid, ", split length", len(a))
return nil
glog.V(1).Infoln("Invalid fid ", fid, ", split length ", len(a))
return nil, errors.New("Invalid fid " + fid)
}
vid_string, key_hash_string := a[0], a[1]
volumeId, _ := NewVolumeId(vid_string)
key, hash := ParseKeyHash(key_hash_string)
return &FileId{VolumeId: volumeId, Key: key, Hashcode: hash}
return &FileId{VolumeId: volumeId, Key: key, Hashcode: hash}, nil
}
func (n *FileId) String() string {
bytes := make([]byte, 12)

View File

@@ -3,7 +3,6 @@ package storage
import (
"code.google.com/p/weed-fs/go/util"
"encoding/hex"
"errors"
"io/ioutil"
"code.google.com/p/weed-fs/go/glog"
"mime"
@@ -54,10 +53,8 @@ func ParseUpload(r *http.Request) (fileName string, data []byte, mimeType string
fileName = part.FileName()
if fileName != "" {
fileName = path.Base(fileName)
} else {
e = errors.New("No file found!")
return
}
data, e = ioutil.ReadAll(part)
if e != nil {
glog.V(0).Infoln("Reading Content [ERROR]", e)