sdk

package
v1.0.6 Latest Latest
Warning

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

Go to latest
Published: Jun 20, 2019 License: MIT Imports: 35 Imported by: 14

Documentation

Index

Constants

View Source
const (
	OpUpload   int = 0
	OpDownload int = 1
	OpRepair   int = 2
)
View Source
const STORAGE_SCADDRESS = "6dba10422e368813802877a85039d3985d96760ed844092319743fb3a76712d7"

Variables

This section is empty.

Functions

func AddBlockDownloadReq

func AddBlockDownloadReq(req *BlockDownloadRequest)

func AddCommitRequest

func AddCommitRequest(req *CommitRequest)

func CreateAllocation

func CreateAllocation(datashards int, parityshards int, size int64, expiry int64) (string, error)

func InitBlockDownloader

func InitBlockDownloader(blobbers []*blockchain.StorageNode)

func InitCommitWorker

func InitCommitWorker(blobbers []*blockchain.StorageNode)

func InitStorageSDK

func InitStorageSDK(clientJson string, miners []string, sharders []string, chainID string, signatureScheme string) error

func SetLogFile

func SetLogFile(logFile string, verbose bool)

logFile - Log file verbose - true - console output; false - no console output

Types

type Allocation

type Allocation struct {
	ID           string                    `json:"id"`
	DataShards   int                       `json:"data_shards"`
	ParityShards int                       `json:"parity_shards"`
	Size         int64                     `json:"size"`
	Expiration   int64                     `json:"expiration_date"`
	Blobbers     []*blockchain.StorageNode `json:"blobbers"`
	Stats        *AllocationStats          `json:"stats"`
	// contains filtered or unexported fields
}

func GetAllocation

func GetAllocation(allocationID string) (*Allocation, error)

func GetAllocationFromAuthTicket

func GetAllocationFromAuthTicket(authTicket string) (*Allocation, error)

func GetAllocations

func GetAllocations() ([]*Allocation, error)

func (*Allocation) CancelDownload

func (a *Allocation) CancelDownload(remotepath string) error

func (*Allocation) DeleteFile

func (a *Allocation) DeleteFile(path string) error

func (*Allocation) DownloadFile

func (a *Allocation) DownloadFile(localPath string, remotePath string, status StatusCallback) error

func (*Allocation) DownloadFromAuthTicket

func (a *Allocation) DownloadFromAuthTicket(localPath string, authTicket string, remoteLookupHash string, remoteFilename string, status StatusCallback) error

func (*Allocation) GetAuthTicketForShare

func (a *Allocation) GetAuthTicketForShare(path string, filename string, referenceType string, refereeClientID string) (string, error)

func (*Allocation) GetFileStats

func (a *Allocation) GetFileStats(path string) (map[string]*FileStats, error)

func (*Allocation) GetStats

func (a *Allocation) GetStats() *AllocationStats

func (*Allocation) InitAllocation

func (a *Allocation) InitAllocation()

func (*Allocation) ListDir

func (a *Allocation) ListDir(path string) (*ListResult, error)

func (*Allocation) ListDirFromAuthTicket

func (a *Allocation) ListDirFromAuthTicket(authTicket string, lookupHash string) (*ListResult, error)

func (*Allocation) UpdateFile

func (a *Allocation) UpdateFile(localpath string, remotepath string, status StatusCallback) error

func (*Allocation) UploadFile

func (a *Allocation) UploadFile(localpath string, remotepath string, status StatusCallback) error

type AllocationStats

type AllocationStats struct {
	UsedSize                  int64  `json:"used_size"`
	NumWrites                 int64  `json:"num_of_writes"`
	NumReads                  int64  `json:"num_of_reads"`
	TotalChallenges           int64  `json:"total_challenges"`
	OpenChallenges            int64  `json:"num_open_challenges"`
	SuccessChallenges         int64  `json:"num_success_challenges"`
	FailedChallenges          int64  `json:"num_failed_challenges"`
	LastestClosedChallengeTxn string `json:"latest_closed_challenge"`
}

type AuthTicket

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

func InitAuthTicket

func InitAuthTicket(authTicket string) *AuthTicket

func (*AuthTicket) GetFileName

func (at *AuthTicket) GetFileName() (string, error)

func (*AuthTicket) IsDir

func (at *AuthTicket) IsDir() (bool, error)

type BlockDownloadRequest

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

type CommitRequest

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

type CommitResult

type CommitResult struct {
	Success      bool   `json:"success"`
	ErrorMessage string `json:"error_msg,omitempty"`
}

func ErrorCommitResult

func ErrorCommitResult(errMsg string) *CommitResult

func SuccessCommitResult

func SuccessCommitResult() *CommitResult

type Consensus

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

type DeleteRequest

type DeleteRequest struct {
	Consensus
	// contains filtered or unexported fields
}

func (*DeleteRequest) ProcessDelete

func (req *DeleteRequest) ProcessDelete() error

type DownloadRequest

type DownloadRequest struct {
	Consensus
	// contains filtered or unexported fields
}

type FileMeta added in v1.0.3

type FileMeta struct {
	Name     string
	Path     string
	Hash     string
	MimeType string
	Size     int64
}

type FileStats

type FileStats struct {
	Name                     string `json:"name"`
	Size                     int64  `json:"size"`
	PathHash                 string `json:"path_hash"`
	Path                     string `json:"path"`
	NumBlocks                int64  `json:"num_of_blocks"`
	NumUpdates               int64  `json:"num_of_updates"`
	NumBlockDownloads        int64  `json:"num_of_block_downloads"`
	SuccessChallenges        int64  `json:"num_of_challenges"`
	FailedChallenges         int64  `json:"num_of_failed_challenges"`
	LastChallengeResponseTxn string `json:"last_challenge_txn"`
	WriteMarkerRedeemTxn     string `json:"write_marker_txn"`
	BlobberID                string `json:"blobber_id"`
	BlobberURL               string `json:"blobber_url"`
	BlockchainAware          bool   `json:"blockchain_aware"`
}

type ListRequest

type ListRequest struct {
	Consensus
	// contains filtered or unexported fields
}

func (*ListRequest) GetListFromBlobbers

func (req *ListRequest) GetListFromBlobbers() *ListResult

type ListResult

type ListResult struct {
	Name       string        `json:"name"`
	Path       string        `json:"path,omitempty"`
	Type       string        `json:"type"`
	Size       int64         `json:"size"`
	Hash       string        `json:"hash,omitempty"`
	MimeType   string        `json:"mimetype,omitempty"`
	NumBlocks  int64         `json:"num_blocks"`
	LookupHash string        `json:"lookup_hash"`
	Children   []*ListResult `json:"list"`
	Consensus  `json:"-"`
}

type ReferencePathResult

type ReferencePathResult struct {
	*fileref.ReferencePath
	LatestWM *marker.WriteMarker `json:"latest_write_marker"`
}

type ShareRequest

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

func (*ShareRequest) GetAuthTicket

func (req *ShareRequest) GetAuthTicket(clientID string) (string, error)

type StatusCallback

type StatusCallback interface {
	Started(allocationId, filePath string, op int, totalBytes int)
	InProgress(allocationId, filePath string, op int, completedBytes int)
	Error(allocationID string, filePath string, op int, err error)
	Completed(allocationId, filePath string, filename string, mimetype string, size int, op int)
}

type UploadRequest

type UploadRequest struct {
	Consensus
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

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