Version: v1.4.1 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: May 3, 2018 License: MIT, MIT Imports: 22 Imported by: 0




This section is empty.


This section is empty.


func BatchHandler

func BatchHandler(ctx *context.Context)

BatchHandler provides the batch api

func ContentMatcher

func ContentMatcher(r macaron.Request) bool

ContentMatcher provides a mux.MatcherFunc that only allows requests that contain an Accept header with the contentMediaType

func GetListLockHandler added in v1.4.0

func GetListLockHandler(ctx *context.Context)

GetListLockHandler list locks

func MetaMatcher

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

func ObjectOidHandler(ctx *context.Context)

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

func PostHandler

func PostHandler(ctx *context.Context)

PostHandler instructs the client how to upload data

func PostLockHandler added in v1.4.0

func PostLockHandler(ctx *context.Context)

PostLockHandler create lock

func PutHandler

func PutHandler(ctx *context.Context)

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

func UnLockHandler added in v1.4.0

func UnLockHandler(ctx *context.Context)

UnLockHandler delete locks

func VerifyHandler added in v1.3.0

func VerifyHandler(ctx *context.Context)

VerifyHandler verify oid and its size from the content store

func VerifyLockHandler added in v1.4.0

func VerifyLockHandler(ctx *context.Context)

VerifyLockHandler list locks for verification


type BatchResponse

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

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. https://github.com/git-lfs/git-lfs/blob/master/docs/api/batch.md

type ContentStore

type ContentStore struct {
	BasePath string

ContentStore provides a simple file system based storage.

func (*ContentStore) Exists

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

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

func (*ContentStore) Get

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

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 added in v1.3.0

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

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

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

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

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL