gateway

package
v0.0.0-...-89def8d Latest Latest
Warning

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

Go to latest
Published: May 24, 2021 License: MIT Imports: 41 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Assets = assets.NewFileSystem(map[string][]string{"/": []string{"gateway.go", "Makefile", "ipfs.go", "threads.go", "buckets.go"}, "/public": []string{}, "/public/css": []string{"all.min.css", "style.css"}, "/public/html": []string{"unixfs.gohtml", "error.gohtml", "confirm.gohtml", "index.gohtml", "consent.gohtml", "404.gohtml"}, "/public/img": []string{"favicon-16x16.png", "hex.svg", "favicon.ico", "android-chrome-192x192.png", "apple-touch-icon.png", "android-chrome-512x512.png", "site.webmanifest", "favicon-32x32.png"}, "/public/webfonts": []string{"fa-solid-900.ttf", "fa-regular-400.svg", "fa-regular-400.woff2", "fa-solid-900.eot", "fa-brands-400.svg", "fa-regular-400.woff", "fa-brands-400.eot", "fa-solid-900.svg", "fa-solid-900.woff", "fa-regular-400.ttf", "fa-solid-900.woff2", "fa-brands-400.woff2", "fa-brands-400.woff", "fa-brands-400.ttf", "fa-regular-400.eot"}}, map[string]*assets.File{
	"/buckets.go": &assets.File{
		Path:     "/buckets.go",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1615227995, 1615227995412698070),
		Data:     []byte(_Assets9af9b32d4979a14fbf6f85fef5e28a54c6ceb4d8),
	}, "/gateway.go": &assets.File{
		Path:     "/gateway.go",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1615223779, 1615223779175702978),
		Data:     []byte(_Assetsb289e24e7683deca2454781b8d3914d88103d97a),
	}, "/public/html": &assets.File{
		Path:     "/public/html",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1614356683, 1614356683750633621),
		Data:     nil,
	}, "/public/webfonts/fa-regular-400.ttf": &assets.File{
		Path:     "/public/webfonts/fa-regular-400.ttf",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683756906181),
		Data:     []byte(_Assetsaf1761e86eb6c63bb3e05e2d74c4e2f792ae10b3),
	}, "/public/img/site.webmanifest": &assets.File{
		Path:     "/public/img/site.webmanifest",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751711838),
		Data:     []byte(_Assets8391991a0f9445efcc483e87a0508f7472f04dab),
	}, "/public/webfonts/fa-regular-400.svg": &assets.File{
		Path:     "/public/webfonts/fa-regular-400.svg",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683753853023),
		Data:     []byte(_Assets64f30b43055dd09ec44f8eadb40269023d03229e),
	}, "/public/webfonts/fa-regular-400.woff2": &assets.File{
		Path:     "/public/webfonts/fa-regular-400.woff2",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683754073559),
		Data:     []byte(_Assetsbddb83b9a8840e063a3c00a419998f20584423c9),
	}, "/Makefile": &assets.File{
		Path:     "/Makefile",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683749300245),
		Data:     []byte(_Assets5e70439c4378bfd4d8fad0377484821d8d3176bb),
	}, "/public/css/all.min.css": &assets.File{
		Path:     "/public/css/all.min.css",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683749756189),
		Data:     []byte(_Assets0f3873af67026ef9adff5293b531a01d11ae6c96),
	}, "/public/html/consent.gohtml": &assets.File{
		Path:     "/public/html/consent.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750573248),
		Data:     []byte(_Assetsee5a7899492dd689fa51716a10baa72c11b0a277),
	}, "/public/webfonts/fa-brands-400.svg": &assets.File{
		Path:     "/public/webfonts/fa-brands-400.svg",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683755036946),
		Data:     []byte(_Assetsaeddafb109d244dccf51e6a0309f04536e6c7eb7),
	}, "/public/webfonts/fa-regular-400.woff": &assets.File{
		Path:     "/public/webfonts/fa-regular-400.woff",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683755442309),
		Data:     []byte(_Assets9ec4cdb6b9a1b4a014c65fbde9dbb7ca62e478ab),
	}, "/public/webfonts/fa-solid-900.svg": &assets.File{
		Path:     "/public/webfonts/fa-solid-900.svg",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683756317240),
		Data:     []byte(_Assets3937419623a4cdffaf5c05b0d497629e127d85b5),
	}, "/public/webfonts/fa-regular-400.eot": &assets.File{
		Path:     "/public/webfonts/fa-regular-400.eot",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683758059854),
		Data:     []byte(_Assetsbea737c26084085e55f9d5af779b4b5af1c1e4f2),
	}, "/public/html/error.gohtml": &assets.File{
		Path:     "/public/html/error.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750232967),
		Data:     []byte(_Assets86cd0824fababa1fde259c0e52ec8ca0455e8965),
	}, "/public/html/confirm.gohtml": &assets.File{
		Path:     "/public/html/confirm.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750337088),
		Data:     []byte(_Assets78386ead3fb287ea2e07758fc3d0fe2187e0d0ad),
	}, "/public/webfonts": &assets.File{
		Path:     "/public/webfonts",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1614356683, 1614356683757915567),
		Data:     nil,
	}, "/public/img": &assets.File{
		Path:     "/public/img",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1614356683, 1614356683751775962),
		Data:     nil,
	}, "/public/img/favicon-16x16.png": &assets.File{
		Path:     "/public/img/favicon-16x16.png",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683750876489),
		Data:     []byte(_Assetsd13d7a53abf40be3e0fd76e8a51bb4835b035bb0),
	}, "/public/img/android-chrome-192x192.png": &assets.File{
		Path:     "/public/img/android-chrome-192x192.png",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751327517),
		Data:     []byte(_Assets8adebf81a81a55248a107972d373b02d60a4d498),
	}, "/public/webfonts/fa-solid-900.eot": &assets.File{
		Path:     "/public/webfonts/fa-solid-900.eot",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683754433464),
		Data:     []byte(_Assetsc8e5f53dbe9ae4243f36350d1e222609f6af178b),
	}, "/public/webfonts/fa-brands-400.woff": &assets.File{
		Path:     "/public/webfonts/fa-brands-400.woff",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683757617034),
		Data:     []byte(_Assets2b8ba0ba9ee6d47753727f8c81b09020b5f9249c),
	}, "/public": &assets.File{
		Path:     "/public",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1614356683, 1614356683751871959),
		Data:     nil,
	}, "/public/css": &assets.File{
		Path:     "/public/css",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1614356683, 1614356683749819729),
		Data:     nil,
	}, "/public/html/index.gohtml": &assets.File{
		Path:     "/public/html/index.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750465168),
		Data:     []byte(_Assets131cd67b6dd480f64ec4b1e6dc1172c43a81c7a9),
	}, "/public/img/hex.svg": &assets.File{
		Path:     "/public/img/hex.svg",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683751084649),
		Data:     []byte(_Assets747353a94cf1b19b7a2e5c9fbc50b3ea0972f088),
	}, "/public/img/favicon.ico": &assets.File{
		Path:     "/public/img/favicon.ico",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751197687),
		Data:     []byte(_Assets0d77b2008fc5e76d7d489317fc8f0df507d753c5),
	}, "/public/img/favicon-32x32.png": &assets.File{
		Path:     "/public/img/favicon-32x32.png",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751822668),
		Data:     []byte(_Assets73d5f881dc044ff1def628efb1b6c854a3374148),
	}, "/public/webfonts/fa-brands-400.eot": &assets.File{
		Path:     "/public/webfonts/fa-brands-400.eot",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683755718217),
		Data:     []byte(_Assets0d82f92ba8c7e829dd63af485d6dfd5cfee1968d),
	}, "/public/webfonts/fa-solid-900.woff2": &assets.File{
		Path:     "/public/webfonts/fa-solid-900.woff2",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683757139382),
		Data:     []byte(_Assetse5228f4473380f8aaf60204d3214f579490bdba3),
	}, "/": &assets.File{
		Path:     "/",
		FileMode: 0x800001ed,
		Mtime:    time.Unix(1615395711, 1615395711587454534),
		Data:     nil,
	}, "/ipfs.go": &assets.File{
		Path:     "/ipfs.go",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614576517, 1614576517258932274),
		Data:     []byte(_Assetsb83960ccf65b57d0332e33d148e2165646ceb9bb),
	}, "/public/html/404.gohtml": &assets.File{
		Path:     "/public/html/404.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750677162),
		Data:     []byte(_Assets4bf0d0667fe4719e513a3edfeb3a25a2377cf2b7),
	}, "/public/webfonts/fa-brands-400.ttf": &assets.File{
		Path:     "/public/webfonts/fa-brands-400.ttf",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683757847402),
		Data:     []byte(_Assetsd049223eb2ab91ac66001a116d54e31249bb6996),
	}, "/public/css/style.css": &assets.File{
		Path:     "/public/css/style.css",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683749866186),
		Data:     []byte(_Assetsdde0973434b88ffc53b81b28400233e4fde8bb40),
	}, "/public/img/android-chrome-512x512.png": &assets.File{
		Path:     "/public/img/android-chrome-512x512.png",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751578634),
		Data:     []byte(_Assets5505a97055e70f2214132a49de39b49ea42721ef),
	}, "/threads.go": &assets.File{
		Path:     "/threads.go",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1615227039, 1615227039134627047),
		Data:     []byte(_Assets20bbcb56854340073ddda797ede16b7f86c7d3a3),
	}, "/public/webfonts/fa-brands-400.woff2": &assets.File{
		Path:     "/public/webfonts/fa-brands-400.woff2",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683757377583),
		Data:     []byte(_Assets88d58097382a74c60911983bc1037b4ca4d863cc),
	}, "/public/html/unixfs.gohtml": &assets.File{
		Path:     "/public/html/unixfs.gohtml",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683750122887),
		Data:     []byte(_Assetsd05f64fbc9bda08199115722ef3368a3ded9a593),
	}, "/public/webfonts/fa-solid-900.ttf": &assets.File{
		Path:     "/public/webfonts/fa-solid-900.ttf",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683752321945),
		Data:     []byte(_Assetsa778db74bb0610978d68bf45c1d84ed40dc5e19e),
	}, "/public/webfonts/fa-solid-900.woff": &assets.File{
		Path:     "/public/webfonts/fa-solid-900.woff",
		FileMode: 0x1a4,
		Mtime:    time.Unix(1614356683, 1614356683756776643),
		Data:     []byte(_Assets7f20ca1245bb8b3d9d2ba4abac70f5fb42bab011),
	}, "/public/img/apple-touch-icon.png": &assets.File{
		Path:     "/public/img/apple-touch-icon.png",
		FileMode: 0x1ed,
		Mtime:    time.Unix(1614356683, 1614356683751455680),
		Data:     []byte(_Assetsd02de8458478b9207bcc182c71f64095eebd83f2),
	}}, "")

Assets returns go-assets FileSystem

View Source
var UploadTimeout = time.Hour

UploadTimeout is the max time taken to push files to a bucket.

Functions

This section is empty.

Types

type Config

type Config struct {
	Addr       string
	URL        string
	Domain     string
	Subdomains bool
}

Config defines the gateway configuration.

type Gateway

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

Gateway provides HTTP-based access to buckets.

func NewGateway

func NewGateway(
	lib *buckets.Buckets,
	ipfs iface.CoreAPI,
	ipns *ipns.Manager,
	ps *pinning.Service,
	conf Config,
) (*Gateway, error)

NewGateway returns a new gateway.

func (*Gateway) Addr

func (g *Gateway) Addr() string

Addr returns the gateway's listen address.

func (*Gateway) Buckets

func (g *Gateway) Buckets() *buckets.Buckets

Buckets returns the gateway's bucket lib.

func (*Gateway) Close

func (g *Gateway) Close() error

Close the gateway.

func (*Gateway) Start

func (g *Gateway) Start()

Start the gateway.

func (*Gateway) Url

func (g *Gateway) Url() string

Url returns the gateway's externally configured URL.

type PostError

type PostError struct {
	Error string `json:"error"`
}

PostError wraps errors as JSON.

type PushPathsResult

type PushPathsResult struct {
	Path string `json:"path"`
	Cid  string `json:"cid"`
	Size int64  `json:"size"`
}

PushPathsResult wraps a single path result.

type PushPathsResults

type PushPathsResults struct {
	Results []PushPathsResult `json:"results"`
	Pinned  int64             `json:"pinned"`
	Bucket  *buckets.Bucket   `json:"bucket"`
}

PushPathsResults wraps all path results.

Jump to

Keyboard shortcuts

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