Documentation ¶
Overview ¶
Package manifest contains the abstractions needed for collection representation in Penguin.
Index ¶
- Constants
- Variables
- type Entry
- type Interface
- func NewDefaultManifest(ls file.LoadSaver, encrypted bool) (Interface, error)
- func NewDefaultManifestReference(reference penguin.Address, ls file.LoadSaver) (Interface, error)
- func NewManifest(manifestType string, ls file.LoadSaver, encrypted bool) (Interface, error)
- func NewManifestReference(manifestType string, reference penguin.Address, ls file.LoadSaver) (Interface, error)
- func NewMantarayManifest(ls file.LoadSaver, encrypted bool) (Interface, error)
- func NewMantarayManifestReference(reference penguin.Address, ls file.LoadSaver) (Interface, error)
- func NewSimpleManifest(ls file.LoadSaver) (Interface, error)
- func NewSimpleManifestReference(ref penguin.Address, l file.LoadSaver) (Interface, error)
- type StoreSizeFunc
Constants ¶
View Source
const ( RootPath = "/" WebsiteIndexDocumentSuffixKey = "website-index-document" WebsiteErrorDocumentPathKey = "website-error-document" EntryMetadataContentTypeKey = "Content-Type" EntryMetadataFilenameKey = "Filename" )
View Source
const DefaultManifestType = ManifestMantarayContentType
View Source
const ( // ManifestMantarayContentType represents content type used for noting that // specific file should be processed as mantaray manifest. ManifestMantarayContentType = "application/pen-manifest-mantaray+octet-stream" )
View Source
const ( // ManifestSimpleContentType represents content type used for noting that // specific file should be processed as 'simple' manifest ManifestSimpleContentType = "application/pen-manifest-simple+json" )
Variables ¶
View Source
var ( // ErrNotFound is returned when an Entry is not found in the manifest. ErrNotFound = errors.New("manifest: not found") // ErrInvalidManifestType is returned when an unknown manifest type // is provided to the function. ErrInvalidManifestType = errors.New("manifest: invalid type") // ErrMissingReference is returned when the reference for the manifest file // is missing. ErrMissingReference = errors.New("manifest: missing reference") )
Functions ¶
This section is empty.
Types ¶
type Entry ¶
type Entry interface { // Reference returns the address of the file. Reference() penguin.Address // Metadata returns the metadata of the file. Metadata() map[string]string }
Entry represents a single manifest entry.
type Interface ¶
type Interface interface { // Type returns manifest implementation type information Type() string // Add a manifest entry to the specified path. Add(context.Context, string, Entry) error // Remove a manifest entry on the specified path. Remove(context.Context, string) error // Lookup returns a manifest entry if one is found in the specified path. Lookup(context.Context, string) (Entry, error) // HasPrefix tests whether the specified prefix path exists. HasPrefix(context.Context, string) (bool, error) // Store stores the manifest, returning the resulting address. Store(context.Context, ...StoreSizeFunc) (penguin.Address, error) // IterateAddresses is used to iterate over chunks addresses for // the manifest. IterateAddresses(context.Context, penguin.AddressIterFunc) error }
Interface for operations with manifest.
func NewDefaultManifest ¶
NewDefaultManifest creates a new manifest with default type.
func NewDefaultManifestReference ¶
func NewDefaultManifestReference( reference penguin.Address, ls file.LoadSaver, ) (Interface, error)
NewDefaultManifestReference creates a new manifest with default type.
func NewManifest ¶
NewManifest creates a new manifest.
func NewManifestReference ¶
func NewManifestReference( manifestType string, reference penguin.Address, ls file.LoadSaver, ) (Interface, error)
NewManifestReference loads existing manifest.
func NewMantarayManifest ¶
NewMantarayManifest creates a new mantaray-based manifest.
func NewMantarayManifestReference ¶
func NewMantarayManifestReference( reference penguin.Address, ls file.LoadSaver, ) (Interface, error)
NewMantarayManifestReference loads existing mantaray-based manifest.
func NewSimpleManifest ¶
NewSimpleManifest creates a new simple manifest.
type StoreSizeFunc ¶
StoreSizeFunc is a callback on every content size that will be stored by the Store function.
Click to show internal directories.
Click to hide internal directories.