MCPcopy Create free account
hub / github.com/couchbase/moss / Persist

Method Persist

segment.go:606–623  ·  view source on GitHub ↗

------------------------------------------------------ Persist persists a basic segment, and allows a segment to meet the SegmentPersister interface.

(file File, options *StoreOptions)

Source from the content-addressed store, hash-verified

604// Persist persists a basic segment, and allows a segment to meet the
605// SegmentPersister interface.
606func (a *segment) Persist(file File, options *StoreOptions) (rv SegmentLoc, err error) {
607 finfo, err := file.Stat()
608 if err != nil {
609 return rv, err
610 }
611
612 persistKind := DefaultPersistKind
613 if options.PersistKind != "" {
614 persistKind = options.PersistKind
615 }
616
617 segmentPersister, exists := SegmentPersisters[persistKind]
618 if !exists || segmentPersister == nil {
619 return rv, fmt.Errorf("store: unknown PersistKind: %+v", persistKind)
620 }
621
622 return segmentPersister(a, file, finfo.Size(), nil)
623}
624
625// ------------------------------------------------------
626

Callers

nothing calls this directly

Calls 1

StatMethod · 0.80

Tested by

no test coverage detected