Documentation ¶
Index ¶
- Variables
- func WaitTellFinished[T any](job *Job, onStatusComplete chan T, beforeCallingFinish func())
- type Change
- type Changes
- type EventsReporter
- type File
- type IFile
- type Job
- func (r *Job) Add(report IFile)
- func (r *Job) All(t ...Status) bool
- func (r *Job) Any(t ...Status) (b bool)
- func (r *Job) Cancel()
- func (r *Job) ClearCalled()
- func (r *Job) ClearStatuses() Job
- func (r *Job) Count(t ...Status) int
- func (r *Job) ETA(t ...Status) time.Duration
- func (r *Job) ElapsedTime() time.Duration
- func (r *Job) EndScan()
- func (r *Job) EnqueueNext() (f IFile, ok bool)
- func (r *Job) Files() []filesSDK.File
- func (r *Job) Find(t Status) (IFile, bool)
- func (r *Job) FindRemoteFile(file IFile) (filesSDK.File, bool, error)
- func (r *Job) Finish()
- func (r *Job) Idle(t ...Status) bool
- func (r Job) Init() *Job
- func (r *Job) Job() *Job
- func (r *Job) Percentage(t ...Status) int
- func (r *Job) RegisterFileEvent(callback Reporter, events ...Status)
- func (r *Job) RemainingBytes(t ...Status) int64
- func (r *Job) Reset()
- func (r *Job) Scan()
- func (r *Job) SetEventsReporter(e EventsReporter)
- func (r *Job) SetManager(m *manager.Manager)
- func (r *Job) Start(ignoreCodeStart ...bool)
- func (r *Job) StatusFromError(s IFile, err error)
- func (r *Job) Sub(t ...Status) *Job
- func (r *Job) SubscribeAll() Subscriptions
- func (r *Job) TotalBytes(t ...Status) int64
- func (r *Job) TransferBytes(t ...Status) int64
- func (r *Job) TransferRate(t ...Status) int64
- func (r *Job) UpdateStatus(status Status, file IFile, err error)
- func (r *Job) Wait()
- func (r *Job) WithContext(ctx context.Context) context.Context
- type Log
- type MashableError
- type Reporter
- type Signal
- type Status
- type Subscriptions
- type UnwrappedError
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Null = Status{"", -1} Indexed = Status{"indexed", 0} Retrying = Status{"retrying", 0} Queued = Status{"queued", 1} Downloading = Status{"downloading", 2} Uploading = Status{"uploading", 2} Skipped = Status{"skipped", 3} Ignored = Status{"ignored", 3} Complete = Status{"complete", 4} Canceled = Status{"canceled", 5} Errored = Status{"errored", 5} Included = []Status{Indexed, Queued, Retrying, Downloading, Uploading, Complete, Canceled, Errored} Excluded = []Status{Skipped, Ignored} Valid = []Status{Indexed, Queued, Retrying, Downloading, Uploading, Complete} Invalid = []Status{Null, Canceled, Errored, Skipped, Ignored} Running = []Status{Downloading, Uploading} Ended = []Status{Complete, Canceled, Errored, Skipped, Ignored} )
Functions ¶
func WaitTellFinished ¶
Types ¶
type EventsReporter ¶
type File ¶
type File struct { StatusName string `json:"status"` TransferBytes int64 `json:"transferred_bytes"` Size int64 `json:"size_bytes"` LocalPath string `json:"local_path"` RemotePath string `json:"remote_path"` EndedAt time.Time `json:"transferred_at"` Err error `json:"error"` Id string `json:"-"` Attempts int `json:"attempts"` Mutex *sync.RWMutex `json:"-"` LastByte time.Time `json:"-"` Status `json:"-"` filesSDK.File `json:"-"` *Job `json:"-"` }
func ToStatusFile ¶
type Job ¶
type Job struct { Id string *timer.Timer Statuses []IFile Direction direction.Direction LocalPath string RemotePath string Sync bool CodeStart func() context.CancelFunc Params interface{} Client interface{} Config interface{} EventsReporter directory.Type *manager.Manager RetryPolicy interface{} *ignore.GitIgnore Started *Signal Finished *Signal Canceled *Signal Scanning *Signal EndScanning *Signal retryablehttp.Logger RemoteFs fs.FS // contains filtered or unexported fields }
func (*Job) ClearCalled ¶
func (r *Job) ClearCalled()
func (*Job) ClearStatuses ¶
func (*Job) ElapsedTime ¶
func (*Job) EnqueueNext ¶
func (*Job) Percentage ¶
func (*Job) RegisterFileEvent ¶
func (*Job) RemainingBytes ¶
func (*Job) SetEventsReporter ¶
func (r *Job) SetEventsReporter(e EventsReporter)
func (*Job) SetManager ¶
func (*Job) StatusFromError ¶
func (*Job) SubscribeAll ¶
func (r *Job) SubscribeAll() Subscriptions
func (*Job) TotalBytes ¶
func (*Job) TransferBytes ¶
func (*Job) TransferRate ¶
type MashableError ¶
type MashableError struct {
// contains filtered or unexported fields
}
func (MashableError) Err ¶
func (me MashableError) Err() error
func (MashableError) MarshalJSON ¶
func (me MashableError) MarshalJSON() ([]byte, error)
type Signal ¶
type Signal struct {
// contains filtered or unexported fields
}
func (*Signal) TrySubscribe ¶
type Subscriptions ¶
type UnwrappedError ¶
type UnwrappedError struct { OriginalError error // contains filtered or unexported fields }
Click to show internal directories.
Click to hide internal directories.