transport

package
v0.0.0-...-c0337eb Latest Latest
Warning

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

Go to latest
Published: Oct 2, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GitHTTPService

type GitHTTPService struct {
	// contains filtered or unexported fields
}

GitHTTPService is a git http server

func NewGitHTTPService

func NewGitHTTPService(objstore storage.GitRepoStorage) *GitHTTPService

NewGitHTTPService instantiates the git http service with the provided repo store and object store.

func (*GitHTTPService) ListReferences

func (svr *GitHTTPService) ListReferences(w http.ResponseWriter, r *http.Request)

ListReferences per the git protocol

func (*GitHTTPService) ReceivePack

func (svr *GitHTTPService) ReceivePack(w http.ResponseWriter, r *http.Request)

ReceivePack implements the receive-pack protocol over http

func (*GitHTTPService) UploadPack

func (svr *GitHTTPService) UploadPack(w http.ResponseWriter, r *http.Request)

UploadPack implements upload-pack protocol over http

type GitHandler

type GitHandler interface {
	// clone, fetch, pull ???
	UploadPack(w http.ResponseWriter, r *http.Request)
	// push
	ReceivePack(w http.ResponseWriter, r *http.Request)
	// list refs based on receive or upload pack
	ListReferences(w http.ResponseWriter, r *http.Request)
}

GitHandler interface for git specific operations

type HTTPTransport

type HTTPTransport struct {
	// contains filtered or unexported fields
}

HTTPTransport handles routing git requests leaving the rest alone

func NewHTTPTransport

func NewHTTPTransport(gh GitHandler, rh http.Handler) *HTTPTransport

NewHTTPTransport given the git handler

func (*HTTPTransport) ListenAndServe

func (server *HTTPTransport) ListenAndServe(addr string) error

ListenAndServe starts and listener on addr and serves the router handlers

func (*HTTPTransport) ServeHTTP

func (server *HTTPTransport) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP assign context to requests and ID to all requests.

func (*HTTPTransport) UIHandler

func (server *HTTPTransport) UIHandler(h http.Handler)

UIHandler registers the ui handler

type RepoHTTPService

type RepoHTTPService struct {
	// contains filtered or unexported fields
}

func NewRepoHTTPService

func NewRepoHTTPService(store repository.RepositoryStore) *RepoHTTPService

func (*RepoHTTPService) ServeHTTP

func (svr *RepoHTTPService) ServeHTTP(w http.ResponseWriter, r *http.Request)

Jump to

Keyboard shortcuts

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