Documentation
¶
Index ¶
- func AddPieceHandler(db *gorm.DB, datasetName string, request AddPieceRequest) (*model.Car, *handler.Error)
- func CreateHandler(db *gorm.DB, request CreateRequest) (*model.Dataset, *handler.Error)
- func ListHandler(db *gorm.DB) ([]model.Dataset, *handler.Error)
- func ListPiecesHandler(db *gorm.DB, datasetName string) ([]model.Car, *handler.Error)
- func RemoveHandler(db *gorm.DB, datasetName string) *handler.Error
- func UpdateHandler(db *gorm.DB, datasetName string, request UpdateRequest) (*model.Dataset, *handler.Error)
- type AddPieceRequest
- type CreateRequest
- type UpdateRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddPieceHandler ¶
func AddPieceHandler( db *gorm.DB, datasetName string, request AddPieceRequest, ) (*model.Car, *handler.Error)
AddPieceHandler godoc @Summary Manually register a piece (CAR file) with the dataset for deal making purpose @Tags Dataset Piece @Produce json @Accept json @Param datasetName path string true "Dataset name" @Param request body AddPieceRequest true "Request body" @Success 200 {object} model.Car @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /dataset/{datasetName}/piece [post]
func CreateHandler ¶
CreateHandler godoc @Summary Create a new dataset @Tags Dataset @Accept json @Produce json @Description The dataset is a top level object to distinguish different dataset. @Param request body CreateRequest true "Request body" @Success 200 {object} model.Dataset @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /dataset [post]
func ListHandler ¶
ListHandler godoc @Summary List all datasets @Tags Dataset @Produce json @Success 200 {array} model.Dataset @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /datasets [get]
func ListPiecesHandler ¶
ListPiecesHandler godoc @Summary List all pieces for the dataset that are available for deal making" @Tags Dataset Piece @Produce json @Accept json @Param datasetName path string true "Dataset name" @Success 200 {array} model.Car @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /dataset/{datasetName}/pieces [get]
func RemoveHandler ¶
RemoveHandler godoc @Summary Remove a specific dataset. This will not remove the CAR files. @Description Important! If the dataset is large, this command will take some time to remove all relevant data. @Tags Dataset @Param datasetName path string true "Dataset name" @Success 204 @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /dataset/{datasetName} [delete]
func UpdateHandler ¶
func UpdateHandler( db *gorm.DB, datasetName string, request UpdateRequest, ) (*model.Dataset, *handler.Error)
UpdateHandler godoc @Summary Update a dataset @Tags Dataset @Accept json @Produce json @Param datasetName path string true "Dataset name" @Param request body UpdateRequest true "Request body" @Success 200 {object} model.Dataset @Failure 400 {object} handler.HTTPError @Failure 500 {object} handler.HTTPError @Router /dataset/{datasetName} [patch]
Types ¶
type AddPieceRequest ¶
type CreateRequest ¶
type CreateRequest struct {
Name string `json:"name" validate:"required"` // Name must be a unique identifier for a dataset
MinSizeStr string `json:"minSize" default:"30GiB" validate:"required"` // Minimum size of the CAR files to be created
MaxSizeStr string `json:"maxSize" default:"31.5GiB" validate:"required"` // Maximum size of the CAR files to be created
PieceSizeStr string `json:"pieceSize" default:"" validate:"optional"` // Target piece size of the CAR files used for piece commitment calculation
OutputDirs []string `json:"outputDirs" validate:"optional"` // Output directory for CAR files. Do not set if using inline preparation
EncryptionRecipients []string `json:"encryptionRecipients" validate:"optional"` // Public key of the encryption recipient
EncryptionScript string `json:"encryptionScript" validate:"optional"` // EncryptionScript command to run for custom encryption
}
type UpdateRequest ¶
type UpdateRequest struct {
MinSizeStr *string `json:"minSize" default:"30GiB" validate:"optional"` // Minimum size of the CAR files to be created
MaxSizeStr *string `json:"maxSize" default:"31.5GiB" validate:"optional"` // Maximum size of the CAR files to be created
PieceSizeStr *string `json:"pieceSize" default:"" validate:"optional"` // Target piece size of the CAR files used for piece commitment calculation
OutputDirs []string `json:"outputDirs" validate:"optional"` // Output directory for CAR files. Do not set if using inline preparation
EncryptionRecipients []string `json:"encryptionRecipients" validate:"optional"` // Public key of the encryption recipient
EncryptionScript *string `json:"encryptionScript" validate:"optional"` // EncryptionScript command to run for custom encryption
}