mongodb

package
v0.0.0-...-9941730 Latest Latest
Warning

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

Go to latest
Published: Dec 27, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrMetadataNotFound se retorna cuando no se encuentran los metadatos
	ErrMetadataNotFound = errors.New("metadatos no encontrados en MongoDB")
	// ErrInvalidMetadata se retorna cuando los metadatos son inválidos
	ErrInvalidMetadata = errors.New("metadatos invalidos")
	// ErrDuplicateKey se retorna cuando se intenta insertar un documento con un ID que ya existe
	ErrDuplicateKey = errors.New("el ID ya existe en la base de datos")
)
View Source
var (
	ErrOperationNotFound = errors.New("operación no encontrada") // Error si la operación no se encuentra
	ErrInvalidUUID       = errors.New("UUID inválido")           // Error si un UUID no es válido
	ErrInvalidStatus     = errors.New("estado inválido")         // Error si el estado es inválido
)

Errores predefinidos para condiciones específicas

View Source
var ValidStatus = map[string]bool{
	"starting": true,
	"failed":   true,
	"success":  true,
}

ValidStatus define los estados permitidos para una operación.

Functions

This section is empty.

Types

type MongoDB

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

func NewMongoDB

func NewMongoDB(opts MongoOptions) (*MongoDB, error)

func (*MongoDB) Close

func (db *MongoDB) Close(ctx context.Context) error

func (*MongoDB) GetCollection

func (db *MongoDB) GetCollection(collectionName string) *mongo.Collection

type MongoMetadataOptions

type MongoMetadataOptions struct {
	Log        logger.Logger
	Collection *mongo.Collection
}

MongoMetadataOptions contiene las opciones para crear un nuevo MongoMetadataRepository

type MongoMetadataRepository

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

MongoMetadataRepository implementa la interfaz repository.MetadataRepository usando MongoDB

func NewMongoMetadataRepository

func NewMongoMetadataRepository(opts MongoMetadataOptions) (*MongoMetadataRepository, error)

NewMongoMetadataRepository crea una nueva instancia de MongoMetadataRepository

func (*MongoMetadataRepository) DeleteMetadata

func (m *MongoMetadataRepository) DeleteMetadata(ctx context.Context, id string) error

DeleteMetadata elimina los metadatos por ID

func (*MongoMetadataRepository) GetMetadata

func (m *MongoMetadataRepository) GetMetadata(ctx context.Context, id string) (*model.Metadata, error)

GetMetadata recupera los metadatos por ID

func (*MongoMetadataRepository) SaveMetadata

func (m *MongoMetadataRepository) SaveMetadata(ctx context.Context, metadata *model.Metadata) error

SaveMetadata guarda los metadatos en MongoDB

type MongoOptions

type MongoOptions struct {
	Config *config.Config
	Log    logger.Logger
}

type OperationOptions

type OperationOptions struct {
	Collection *mongo.Collection // Colección de MongoDB
	Log        logger.Logger     // Logger para registrar eventos
}

OperationOptions agrupa las opciones necesarias para inicializar OperationRepository.

type OperationRepository

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

OperationRepository define el repositorio de operaciones con MongoDB.

func NewOperationRepository

func NewOperationRepository(opts OperationOptions) (*OperationRepository, error)

NewOperationRepository crea un nuevo repositorio de operaciones con las opciones proporcionadas.

func (*OperationRepository) DeleteOperationResult

func (s *OperationRepository) DeleteOperationResult(ctx context.Context, id, songID string) error

DeleteOperationResult elimina el resultado de una operación específica en MongoDB.

func (*OperationRepository) GetOperationResult

func (s *OperationRepository) GetOperationResult(ctx context.Context, id, songID string) (*model.OperationResult, error)

GetOperationResult obtiene el resultado de una operación a partir de su ID y songID.

func (*OperationRepository) SaveOperationsResult

func (s *OperationRepository) SaveOperationsResult(ctx context.Context, result *model.OperationResult) error

SaveOperationsResult guarda un resultado de operación en la colección MongoDB.

func (*OperationRepository) UpdateOperationResult

func (s *OperationRepository) UpdateOperationResult(ctx context.Context, operationID string, operationResult *model.OperationResult) error

func (*OperationRepository) UpdateOperationStatus

func (s *OperationRepository) UpdateOperationStatus(ctx context.Context, operationID string, songID string, status string) error

UpdateOperationStatus actualiza el estado de una operación, si el estado es válido.

Jump to

Keyboard shortcuts

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