Documentation ¶
Index ¶
- Variables
- type MongoDB
- type MongoMetadataOptions
- type MongoMetadataRepository
- type MongoOptions
- type OperationOptions
- type OperationRepository
- func (s *OperationRepository) DeleteOperationResult(ctx context.Context, id, songID string) error
- func (s *OperationRepository) GetOperationResult(ctx context.Context, id, songID string) (*model.OperationResult, error)
- func (s *OperationRepository) SaveOperationsResult(ctx context.Context, result *model.OperationResult) error
- func (s *OperationRepository) UpdateOperationResult(ctx context.Context, operationID string, ...) error
- func (s *OperationRepository) UpdateOperationStatus(ctx context.Context, operationID string, songID string, status string) error
Constants ¶
This section is empty.
Variables ¶
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") )
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
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) 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 ¶
SaveMetadata guarda los metadatos en MongoDB
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.