func()

in internal/command/lfstransfer/gitlab_backend.go [367:402]


func (b *gitlabLockBackend) Range(cursor string, limit int, iter func(transfer.Lock) error) (string, error) {
	res, err := b.client.ListLocksVerify(b.args["path"], b.args["id"], cursor, limit, b.args["refname"])
	if err != nil {
		return "", err
	}
	for _, lock := range res.Ours {
		tlock := &gitlabLock{
			gitlabLockBackend: b,
			id:                lock.ID,
			path:              lock.Path,
			timestamp:         lock.LockedAt,
			owner:             lock.Owner.Name,
			ownerid:           "ours",
		}
		err = iter(tlock)
		if err != nil {
			return "", err
		}
	}
	for _, lock := range res.Theirs {
		tlock := &gitlabLock{
			gitlabLockBackend: b,
			id:                lock.ID,
			path:              lock.Path,
			timestamp:         lock.LockedAt,
			owner:             lock.Owner.Name,
			ownerid:           "theirs",
		}
		err = iter(tlock)
		if err != nil {
			return "", err
		}
	}

	return res.NextCursor, nil
}