...

Package channels

import "github.com/SpectraLogic/ds3_go_sdk/helpers/channels"
Overview
Index

Overview ▾

Index ▾

func NewDs3ObjectReadCloserDecorator(reader io.Reader) io.ReadCloser
func NewObjectReadChannelDecorator(reader io.Reader) models.ReadChannelBuilder
func NewPartialObjectChannelBuilder(name string, objRanges []ds3Models.Range) helperModels.WriteChannelBuilder
func NewReadChannelBuilder(name string) helperModels.ReadChannelBuilder
func NewWriteChannelBuilder(name string) helperModels.WriteChannelBuilder
type Ds3ObjectReadCloser
    func (Ds3ObjectReadCloser Ds3ObjectReadCloser) Close() error
type ObjectReadChannelBuilder
    func (builder *ObjectReadChannelBuilder) GetChannel(offset int64) (io.ReadCloser, error)
    func (builder *ObjectReadChannelBuilder) IsChannelAvailable(offset int64) bool
    func (ObjectReadChannelBuilder) OnDone(reader io.ReadCloser)
type ObjectReadChannelDecorator
    func (readChannelDecorator *ObjectReadChannelDecorator) GetChannel(offset int64) (io.ReadCloser, error)
    func (readChannelDecorator *ObjectReadChannelDecorator) IsChannelAvailable(offset int64) bool
    func (readChannelDecorator *ObjectReadChannelDecorator) OnDone(reader io.ReadCloser)
type ObjectWriteChannelBuilder
    func (builder *ObjectWriteChannelBuilder) GetChannel(offset int64) (io.WriteCloser, error)
    func (builder *ObjectWriteChannelBuilder) IsChannelAvailable(offset int64) bool
    func (builder *ObjectWriteChannelBuilder) OnDone(writer io.WriteCloser)
type PartialObjectWriteChannelBuilder
    func (builder *PartialObjectWriteChannelBuilder) GetChannel(objectOffset int64) (io.WriteCloser, error)
    func (builder *PartialObjectWriteChannelBuilder) IsChannelAvailable(objectOffset int64) bool
    func (builder *PartialObjectWriteChannelBuilder) OnDone(writer io.WriteCloser)

Package files

ds3OjectReadCloserDecorator.go objectReadChannelBuilder.go objectReadChannelDecorator.go objectWriteChannelBuilder.go partialObjectRangeMap.go partialObjectWriteChannelBuilder.go

func NewDs3ObjectReadCloserDecorator

func NewDs3ObjectReadCloserDecorator(reader io.Reader) io.ReadCloser

func NewObjectReadChannelDecorator

func NewObjectReadChannelDecorator(reader io.Reader) models.ReadChannelBuilder

func NewPartialObjectChannelBuilder

func NewPartialObjectChannelBuilder(name string, objRanges []ds3Models.Range) helperModels.WriteChannelBuilder

func NewReadChannelBuilder

func NewReadChannelBuilder(name string) helperModels.ReadChannelBuilder

func NewWriteChannelBuilder

func NewWriteChannelBuilder(name string) helperModels.WriteChannelBuilder

type Ds3ObjectReadCloser

type Ds3ObjectReadCloser struct {
    io.Reader
}

func (Ds3ObjectReadCloser) Close

func (Ds3ObjectReadCloser Ds3ObjectReadCloser) Close() error

type ObjectReadChannelBuilder

Implements the ReadChannelBuilder interface and uses a file as the ReadCloser implementation. This channel functions as a random-access and can be used concurrently.

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

func (*ObjectReadChannelBuilder) GetChannel

func (builder *ObjectReadChannelBuilder) GetChannel(offset int64) (io.ReadCloser, error)

func (*ObjectReadChannelBuilder) IsChannelAvailable

func (builder *ObjectReadChannelBuilder) IsChannelAvailable(offset int64) bool

func (ObjectReadChannelBuilder) OnDone

func (ObjectReadChannelBuilder) OnDone(reader io.ReadCloser)

type ObjectReadChannelDecorator

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

func (*ObjectReadChannelDecorator) GetChannel

func (readChannelDecorator *ObjectReadChannelDecorator) GetChannel(offset int64) (io.ReadCloser, error)

func (*ObjectReadChannelDecorator) IsChannelAvailable

func (readChannelDecorator *ObjectReadChannelDecorator) IsChannelAvailable(offset int64) bool

func (*ObjectReadChannelDecorator) OnDone

func (readChannelDecorator *ObjectReadChannelDecorator) OnDone(reader io.ReadCloser)

type ObjectWriteChannelBuilder

Implements the WriteChannelBuilder interface and uses a file as the WriteCloser implementation. This channel functions as a random-access and can be used concurrently so long as two writers are not writing to the same location within the file.

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

func (*ObjectWriteChannelBuilder) GetChannel

func (builder *ObjectWriteChannelBuilder) GetChannel(offset int64) (io.WriteCloser, error)

func (*ObjectWriteChannelBuilder) IsChannelAvailable

func (builder *ObjectWriteChannelBuilder) IsChannelAvailable(offset int64) bool

func (*ObjectWriteChannelBuilder) OnDone

func (builder *ObjectWriteChannelBuilder) OnDone(writer io.WriteCloser)

type PartialObjectWriteChannelBuilder

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

func (*PartialObjectWriteChannelBuilder) GetChannel

func (builder *PartialObjectWriteChannelBuilder) GetChannel(objectOffset int64) (io.WriteCloser, error)

func (*PartialObjectWriteChannelBuilder) IsChannelAvailable

func (builder *PartialObjectWriteChannelBuilder) IsChannelAvailable(objectOffset int64) bool

func (*PartialObjectWriteChannelBuilder) OnDone

func (builder *PartialObjectWriteChannelBuilder) OnDone(writer io.WriteCloser)