(ctx context.Context, docid string, cas uint64, data []byte, dataType uint8, userXattrKey string)
| 601 | } |
| 602 | |
| 603 | func UnmarshalDocumentFromFeed(ctx context.Context, docid string, cas uint64, data []byte, dataType uint8, userXattrKey string) (doc *Document, err error) { |
| 604 | if dataType&base.MemcachedDataTypeXattr == 0 { |
| 605 | return unmarshalDocument(docid, data) |
| 606 | } |
| 607 | xattrKeys := []string{base.SyncXattrName} |
| 608 | if userXattrKey != "" { |
| 609 | xattrKeys = append(xattrKeys, userXattrKey) |
| 610 | } |
| 611 | body, xattrs, err := sgbucket.DecodeValueWithXattrs(xattrKeys, data) |
| 612 | if err != nil { |
| 613 | return nil, err |
| 614 | } |
| 615 | return unmarshalDocumentWithXattrs(ctx, docid, body, xattrs[base.SyncXattrName], xattrs[base.VvXattrName], xattrs[base.MouXattrName], xattrs[userXattrKey], xattrs[base.VirtualXattrRevSeqNo], nil, cas, DocUnmarshalAll) |
| 616 | } |
| 617 | |
| 618 | func (doc *SyncData) HasValidSyncData() bool { |
| 619 |
nothing calls this directly
no test coverage detected