本文整理汇总了Golang中github.com/cmu440/tribbler/rpc/tribrpc.DeleteTribbleReply.Status方法的典型用法代码示例。如果您正苦于以下问题:Golang DeleteTribbleReply.Status方法的具体用法?Golang DeleteTribbleReply.Status怎么用?Golang DeleteTribbleReply.Status使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cmu440/tribbler/rpc/tribrpc.DeleteTribbleReply
的用法示例。
在下文中一共展示了DeleteTribbleReply.Status方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
key := util.FormatUserKey(args.UserID)
post_key := args.PostKey
if !ts.checkIfKnown(key) {
reply.Status = tribrpc.NoSuchUser
} else if !ts.checkIfKnown(post_key) {
reply.Status = tribrpc.NoSuchPost
} else {
err := ts.storage.Delete(post_key)
if err != nil {
return err
}
triblist_key := util.FormatTribListKey(args.UserID)
err = ts.storage.RemoveFromList(triblist_key, post_key)
if err != nil {
return err
}
reply.Status = tribrpc.OK
}
return nil
}
示例2: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
userkey := util.FormatUserKey(args.UserID)
_, userErr := ts.libstore.Get(userkey)
if userErr != nil {
reply.Status = tribrpc.NoSuchUser
} else {
delErr := ts.libstore.Delete(args.PostKey)
if delErr != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
tribkey := util.FormatTribListKey(args.UserID)
delListErr := ts.libstore.RemoveFromList(tribkey, args.PostKey)
if delListErr != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
reply.Status = tribrpc.OK
}
return nil
}
示例3: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
if args == nil {
return errors.New("ts: Can't delete nil")
}
if reply == nil {
return errors.New("ts: Can't reply with nil in Delete")
}
_, err := ts.ls.Get(util.FormatUserKey(args.UserID))
if err != nil {
reply.Status = tribrpc.NoSuchUser
return nil
}
err = ts.ls.RemoveFromList(util.FormatTribListKey(args.UserID), args.PostKey)
if err != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
if ts.ls.Delete(args.PostKey) != nil {
reply.Status = tribrpc.NoSuchPost
return errors.New("Fatal, failed to delete a key")
}
reply.Status = tribrpc.OK
return nil
}
示例4: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
user_id := util.FormatUserKey(args.UserID)
// If the user_id doesn't exist
// Reture NoSuchUser
_, err := ts.lib_store.Get(user_id)
if err != nil {
reply.Status = tribrpc.NoSuchUser
return nil
}
user_trib_list_key := util.FormatTribListKey(args.UserID)
err = ts.lib_store.RemoveFromList(user_trib_list_key, args.PostKey)
if err != nil {
reply.Status = tribrpc.NoSuchPost
fmt.Println(2)
return nil
}
err = ts.lib_store.Delete(args.PostKey)
if err != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
reply.Status = tribrpc.OK
return nil
}
示例5: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
if ts.userExist(args.UserID) == false {
reply.Status = tribrpc.NoSuchUser
return nil
}
reply.Status = tribrpc.OK
err := ts.ls.Delete(args.PostKey)
if err != nil {
reply.Status = tribrpc.NoSuchPost
}
err = ts.ls.RemoveFromList(util.FormatTribListKey(args.UserID), args.PostKey)
if err != nil {
reply.Status = tribrpc.NoSuchPost
}
return nil
}
示例6: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
userkey := util.FormatUserKey(args.UserID)
// Make sure user exists
if _, eu := ts.ls.Get(userkey); eu != nil {
reply.Status = tribrpc.NoSuchUser
return nil
}
postkey := args.PostKey
// Make sure the Tribble exists
if err := ts.ls.Delete(postkey); err != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
// Make sure the Tribble is in this user's list
if err := ts.ls.RemoveFromList(util.FormatTribListKey(args.UserID), postkey); err != nil {
reply.Status = tribrpc.NoSuchPost
return nil
}
reply.Status = tribrpc.OK
return nil
}
示例7: DeleteTribble
func (ts *tribServer) DeleteTribble(args *tribrpc.DeleteTribbleArgs, reply *tribrpc.DeleteTribbleReply) error {
if DBG {
fmt.Println("-----> Delete(), postKey: ", args.PostKey)
}
var usrID string = args.UserID
var postKey string = args.PostKey
if DBG {
fmt.Println("Delete(), postKey: ", postKey)
}
//check if user present in server
_, err := ts.libStore.Get(util.FormatUserKey(usrID))
if err != nil {
switch err.Error() {
case WRONG_SERVER:
fmt.Println("ERROR: WRONG SERVER in tribserver")
return errors.New("Wrong server contacted!")
case KEY_NOT_FOUND:
reply.Status = tribrpc.NoSuchUser
return nil
default:
fmt.Println("ERROR in tribserver: wrong error message received")
}
}
//check if postKey is stored
_, err = ts.libStore.Get(postKey)
if err != nil {
switch err.Error() {
case WRONG_SERVER:
fmt.Println("ERROR: WRONG SERVER in tribserver")
return errors.New("Wrong server contacted!")
case KEY_NOT_FOUND:
reply.Status = tribrpc.NoSuchPost
return nil
default:
fmt.Println("ERROR in tribserver: wrong error message received")
return nil
}
}
errDelPost := ts.libStore.Delete(postKey)
errDelKey :=
ts.libStore.RemoveFromList(util.FormatTribListKey(usrID), postKey)
if errDelPost != nil {
fmt.Println("Error deleting post")
return nil
}
if errDelKey != nil {
fmt.Println("Error removing key from list")
return nil
}
reply.Status = tribrpc.OK
return nil
}