gitea: Index | Files

package lfs

import ""


Package Files

content_store.go locks.go pointers.go server.go

func BatchHandler Uses

func BatchHandler(ctx *context.Context)

BatchHandler provides the batch api

func GetListLockHandler Uses

func GetListLockHandler(ctx *context.Context)

GetListLockHandler list locks

func IsPointerFile Uses

func IsPointerFile(buf *[]byte) *models.LFSMetaObject

IsPointerFile will return a partially filled LFSMetaObject if the provided byte slice is a pointer file

func MetaMatcher Uses

func MetaMatcher(r macaron.Request) bool

MetaMatcher provides a mux.MatcherFunc that only allows requests that contain an Accept header with the metaMediaType

func ObjectOidHandler Uses

func ObjectOidHandler(ctx *context.Context)

ObjectOidHandler is the main request routing entry point into LFS server functions

func PostHandler Uses

func PostHandler(ctx *context.Context)

PostHandler instructs the client how to upload data

func PostLockHandler Uses

func PostLockHandler(ctx *context.Context)

PostLockHandler create lock

func PutHandler Uses

func PutHandler(ctx *context.Context)

PutHandler receives data from the client and puts it into the content store

func ReadMetaObject Uses

func ReadMetaObject(meta *models.LFSMetaObject) (io.ReadCloser, error)

ReadMetaObject will read a models.LFSMetaObject and return a reader

func ReadPointerFile Uses

func ReadPointerFile(reader io.Reader) (*models.LFSMetaObject, *[]byte)

ReadPointerFile will return a partially filled LFSMetaObject if the provided reader is a pointer file

func UnLockHandler Uses

func UnLockHandler(ctx *context.Context)

UnLockHandler delete locks

func VerifyHandler Uses

func VerifyHandler(ctx *context.Context)

VerifyHandler verify oid and its size from the content store

func VerifyLockHandler Uses

func VerifyLockHandler(ctx *context.Context)

VerifyLockHandler list locks for verification

type BatchResponse Uses

type BatchResponse struct {
    Transfer string            `json:"transfer,omitempty"`
    Objects  []*Representation `json:"objects"`

BatchResponse contains multiple object metadata Representation structures for use with the batch API.

type BatchVars Uses

type BatchVars struct {
    Transfers []string       `json:"transfers,omitempty"`
    Operation string         `json:"operation"`
    Objects   []*RequestVars `json:"objects"`

BatchVars contains multiple RequestVars processed in one batch operation.

type ContentStore Uses

type ContentStore struct {
    BasePath string

ContentStore provides a simple file system based storage.

func (*ContentStore) Exists Uses

func (s *ContentStore) Exists(meta *models.LFSMetaObject) bool

Exists returns true if the object exists in the content store.

func (*ContentStore) Get Uses

func (s *ContentStore) Get(meta *models.LFSMetaObject, fromByte int64) (io.ReadCloser, error)

Get takes a Meta object and retrieves the content from the store, returning it as an io.Reader. If fromByte > 0, the reader starts from that byte

func (*ContentStore) Put Uses

func (s *ContentStore) Put(meta *models.LFSMetaObject, r io.Reader) error

Put takes a Meta object and an io.Reader and writes the content to the store.

func (*ContentStore) Verify Uses

func (s *ContentStore) Verify(meta *models.LFSMetaObject) (bool, error)

Verify returns true if the object exists in the content store and size is correct.

type ObjectError Uses

type ObjectError struct {
    Code    int    `json:"code"`
    Message string `json:"message"`

ObjectError defines the JSON structure returned to the client in case of an error

type Representation Uses

type Representation struct {
    Oid     string           `json:"oid"`
    Size    int64            `json:"size"`
    Actions map[string]*link `json:"actions"`
    Error   *ObjectError     `json:"error,omitempty"`

Representation is object metadata as seen by clients of the lfs server.

func Represent Uses

func Represent(rv *RequestVars, meta *models.LFSMetaObject, download, upload bool) *Representation

Represent takes a RequestVars and Meta and turns it into a Representation suitable for json encoding

type RequestVars Uses

type RequestVars struct {
    Oid           string
    Size          int64
    User          string
    Password      string
    Repo          string
    Authorization string

RequestVars contain variables from the HTTP request. Variables from routing, json body decoding, and some headers are stored.

func (v *RequestVars) ObjectLink() string

ObjectLink builds a URL linking to the object.

func (v *RequestVars) VerifyLink() string

VerifyLink builds a URL for verifying the object.

Package lfs imports 23 packages (graph) and is imported by 45 packages. Updated 2020-01-18. Refresh now. Tools for package owners.