mirror of
https://github.com/garethgeorge/backrest.git
synced 2026-05-05 04:20:31 +00:00
93becf3e32
Release Please / release-please (push) Has been cancelled
Release Preview / call-reusable-release (push) Has been cancelled
Test / test-nix (push) Has been cancelled
Test / test-win (push) Has been cancelled
Update Restic / update-restic-version (push) Has been cancelled
79 lines
1.6 KiB
Go
79 lines
1.6 KiB
Go
package syncapi
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/garethgeorge/backrest/gen/go/v1sync"
|
|
)
|
|
|
|
type SyncError struct {
|
|
State v1sync.ConnectionState
|
|
Message error
|
|
}
|
|
|
|
var _ error = (*SyncError)(nil)
|
|
|
|
func (e *SyncError) Error() string {
|
|
return fmt.Sprintf("syncerror %v: %s", e.State, e.Message.Error())
|
|
}
|
|
|
|
func (e *SyncError) Unwrap() error {
|
|
return e.Message
|
|
}
|
|
|
|
func NewSyncErrorDisconnected(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_DISCONNECTED,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorUnknown(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_UNKNOWN,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorPending(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_PENDING,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorConnected(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_CONNECTED,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorRetryWait(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_RETRY_WAIT,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorAuth(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_ERROR_AUTH,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorProtocol(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_ERROR_PROTOCOL,
|
|
Message: message,
|
|
}
|
|
}
|
|
|
|
func NewSyncErrorInternal(message error) *SyncError {
|
|
return &SyncError{
|
|
State: v1sync.ConnectionState_CONNECTION_STATE_ERROR_INTERNAL,
|
|
Message: message,
|
|
}
|
|
}
|