Пример #1
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	if DBG {
		fmt.Println("-----> CreateUser")
	}
	var usrID string = args.UserID

	_, err := ts.libStore.Get(util.FormatUserKey(usrID))

	if err == nil {
		//user not found
		reply.Status = tribrpc.Exists
		return nil
		//return err
	}

	err = ts.libStore.Put(util.FormatUserKey(usrID), "exists")

	if err != nil {

		return nil
	}

	//populate reply struct
	reply.Status = tribrpc.OK
	return nil
}
Пример #2
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	if ts.userExist(args.UserID) == true {
		reply.Status = tribrpc.Exists
		return nil
	}
	reply.Status = tribrpc.OK
	ts.ls.Put(util.FormatUserKey(args.UserID), util.FormatUserKey(args.UserID))
	return nil
}
Пример #3
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {

	user := util.FormatUserKey(args.UserID)

	// Check that this user doesn't already exist
	if _, err := ts.ls.Get(user); err != nil {
		ts.ls.Put(user, user)
		reply.Status = tribrpc.OK
	} else {
		reply.Status = tribrpc.Exists
	}
	return nil
}
Пример #4
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	key := util.FormatUserKey(args.UserID)
	if ts.checkIfKnown(key) {
		reply.Status = tribrpc.Exists
	} else {
		err := ts.storage.Put(key, args.UserID)
		if err != nil {
			return err
		}
		reply.Status = tribrpc.OK
	}
	return nil
}
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {

	key := util.FormatUserKey(args.UserID)
	_, err := ts.libstore.Get(key)

	if err == nil {
		reply.Status = tribrpc.Exists
	} else {
		err2 := ts.libstore.Put(key, key)
		if err2 != nil {
			return err2
		}
		reply.Status = tribrpc.OK
	}

	return nil
}
Пример #6
0
/*Creating users:
Before a user can either subscribe, add Tribbles, or be subscribed to,it must rst be created using the
CreateUser method. On success, it replies with tribrpc.OK. If the user already is in the system,
it replies with tribrpc.Exists.
There is no interface to delete users (once a user is created, it can never be deleted).*/
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	LOGE.Printf("CreateUser:: args=%s\n", string(marshal(*args)))
	userIDKey := GetUserKey(args.UserID)
	_, err := ts.lib.Get(userIDKey)
	if err == nil {
		reply.Status = tribrpc.Exists
		return err
	}
	err = ts.lib.Put(userIDKey, args.UserID)
	if err != nil {
		reply.Status = tribrpc.Exists
		return nil
	}
	reply.Status = tribrpc.OK
	LOGE.Printf("CreateUser:: reply=%s\n", string(marshal(reply)))
	return nil
}
Пример #7
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	user_id := util.FormatUserKey(args.UserID)

	_, err := ts.lib_store.Get(user_id)
	if err == nil {
		reply.Status = tribrpc.Exists
		return nil
	}

	err = ts.lib_store.Put(user_id, args.UserID)
	if err != nil {
		reply.Status = tribrpc.Exists
		return err
	}
	reply.Status = tribrpc.OK
	return nil
}
Пример #8
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	userid := args.UserID
	useridkey := util.FormatUserKey(userid)
	_, err := ts.ls.Get(useridkey)

	if err == nil {
		reply.Status = tribrpc.Exists
		return nil
	}

	err2 := ts.ls.Put(useridkey, userid)
	if err2 != nil {
		reply.Status = tribrpc.Exists
		return err2
	}

	reply.Status = tribrpc.OK
	return nil
}
Пример #9
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	_, err := ts.Libstore.Get(args.UserID)
	if err == nil {
		reply.Status = tribrpc.Exists
		return nil
	}
	switch err {
	case libstore.ErrorKeyNotFound: // expected error, do nothing
	default:
		return err
	}

	err = ts.Libstore.Put(args.UserID, "")
	if err != nil {
		return err
	}

	reply.Status = tribrpc.OK
	return nil
}
Пример #10
0
func (ts *tribServer) CreateUser(args *tribrpc.CreateUserArgs, reply *tribrpc.CreateUserReply) error {
	// generate user key
	UserKey := GenerateUserKey(args.UserID)

	// check if same user exists
	_, err := ts.lib.Get(UserKey)
	if err == nil {
		reply.Status = tribrpc.Exists
		return nil
	}

	// put username in the storage
	err = ts.lib.Put(UserKey, args.UserID)
	if err != nil {
		reply.Status = tribrpc.Exists
		return nil
	}

	reply.Status = tribrpc.OK
	return nil
}