Add initial implementation of Agate snapshot library
Introduces core functionality for the Agate library, including snapshot creation, restoration, listing, and deletion. Adds examples for basic usage, gRPC proto definitions, and build/configuration files such as `go.mod` and `Makefile`. The implementation establishes the framework for store integration and placeholder server functionality.
This commit is contained in:
45
errors.go
Normal file
45
errors.go
Normal file
@ -0,0 +1,45 @@
|
||||
package agate
|
||||
|
||||
import "errors"
|
||||
|
||||
// Определяем стандартные ошибки, которые могут возникать при работе со снапшотами.
|
||||
// Использование стандартных переменных ошибок позволяет легко проверять тип ошибки
|
||||
// с помощью errors.Is().
|
||||
var (
|
||||
// ErrNotFound означает, что снапшот с указанным ID не найден.
|
||||
ErrNotFound = errors.New("snapshot not found")
|
||||
|
||||
// ErrAlreadyExists означает, что снапшот с таким ID или именем уже существует
|
||||
// (если требуется уникальность имен).
|
||||
ErrAlreadyExists = errors.New("snapshot already exists")
|
||||
|
||||
// ErrInvalidID означает, что предоставленный ID имеет неверный формат (например, не UUID).
|
||||
ErrInvalidID = errors.New("invalid snapshot ID format")
|
||||
|
||||
// ErrParentNotFound означает, что указанный родительский снапшот (ParentID) не найден.
|
||||
ErrParentNotFound = errors.New("parent snapshot not found")
|
||||
|
||||
// ErrSourceNotFound означает, что исходный путь (директория или файл) не найден.
|
||||
ErrSourceNotFound = errors.New("source path not found")
|
||||
|
||||
// ErrSourceNotDirectory означает, что исходный путь не является директорией.
|
||||
ErrSourceNotDirectory = errors.New("source path is not a directory")
|
||||
|
||||
// ErrCreateFailed общая ошибка при создании снапшота.
|
||||
ErrCreateFailed = errors.New("failed to create snapshot")
|
||||
|
||||
// ErrDeleteFailed общая ошибка при удалении снапшота.
|
||||
ErrDeleteFailed = errors.New("failed to delete snapshot")
|
||||
|
||||
// ErrListFailed общая ошибка при получении списка снапшотов.
|
||||
ErrListFailed = errors.New("failed to list snapshots")
|
||||
|
||||
// ErrGetDetailsFailed общая ошибка при получении деталей снапшота.
|
||||
ErrGetDetailsFailed = errors.New("failed to get snapshot details")
|
||||
|
||||
// ErrFileNotFound общая ошибка, если файл не найден (может использоваться внутри OpenFile).
|
||||
ErrFileNotFound = errors.New("file not found within snapshot")
|
||||
|
||||
// ErrOperationFailed общая ошибка для неудачных операций.
|
||||
ErrOperationFailed = errors.New("snapshot operation failed")
|
||||
)
|
Reference in New Issue
Block a user