( code opCode, item *Item, addExtras bool)
| 392 | } |
| 393 | |
| 394 | func (c *RawBinaryClient) sendMutateRequest( |
| 395 | code opCode, |
| 396 | item *Item, |
| 397 | addExtras bool) MutateResponse { |
| 398 | |
| 399 | if item == nil { |
| 400 | return NewMutateErrorResponse("", errors.New("item is nil")) |
| 401 | } |
| 402 | |
| 403 | if !isValidKeyString(item.Key) { |
| 404 | return NewMutateErrorResponse( |
| 405 | item.Key, |
| 406 | errors.New("Invalid key")) |
| 407 | } |
| 408 | |
| 409 | if err := validateValue(item.Value, c.maxValueLength); err != nil { |
| 410 | return NewMutateErrorResponse(item.Key, err) |
| 411 | } |
| 412 | |
| 413 | extras := make([]interface{}, 0, 2) |
| 414 | if addExtras { |
| 415 | extras = append(extras, item.Flags) |
| 416 | extras = append(extras, item.Expiration) |
| 417 | } |
| 418 | |
| 419 | err := c.sendRequest( |
| 420 | code, |
| 421 | item.DataVersionId, |
| 422 | []byte(item.Key), |
| 423 | item.Value, |
| 424 | extras...) |
| 425 | if err != nil { |
| 426 | return NewMutateErrorResponse(item.Key, err) |
| 427 | } |
| 428 | return nil |
| 429 | } |
| 430 | |
| 431 | func (c *RawBinaryClient) receiveMutateResponse( |
| 432 | code opCode, |
no test coverage detected