moosicbox_music_api_helpers

Crates.iomoosicbox_music_api_helpers
lib.rsmoosicbox_music_api_helpers
version0.1.4
created_at2025-07-21 19:32:56.851493+00
updated_at2025-07-21 19:32:56.851493+00
descriptionMoosicBox music API helpers package
homepage
repositoryhttps://github.com/MoosicBox/MoosicBox
max_upload_size
id1762522
size95,757
Braden Steffaniak (BSteffaniak)

documentation

README

MoosicBox Music API Helpers

Helper utilities for music API operations and scanning.

Overview

The MoosicBox Music API Helpers package provides:

  • Scan Helpers: Utilities for music API scanning operations
  • Database Integration: Helper functions for database operations
  • Profile Support: Multi-profile scanning utilities
  • Error Handling: Comprehensive error management for API operations

Features

Scan Operations

  • Enable Scan: Enable scanning for specific music APIs
  • Scan Status: Check if scanning is enabled for APIs
  • Trigger Scan: Execute scanning operations for music APIs
  • Authentication: Handle authentication requirements for scanning

Database Integration

  • Profile Management: Work with multi-profile databases
  • Origin Tracking: Track scan origins and sources
  • Error Handling: Comprehensive error management

Installation

Add this to your Cargo.toml:

[dependencies]
moosicbox_music_api_helpers = { path = "../music_api/helpers" }

# Enable scan functionality
moosicbox_music_api_helpers = {
    path = "../music_api/helpers",
    features = ["scan"]
}

Usage

Scan Operations

use moosicbox_music_api_helpers::scan::{enable_scan, scan_enabled, scan};
use moosicbox_music_api::MusicApi;

// Enable scanning for a music API
enable_scan(&*music_api, &db).await?;

// Check if scanning is enabled
let enabled = scan_enabled(&*music_api, &db).await?;

// Trigger a scan operation
if enabled {
    scan(&*music_api, &db).await?;
}

Error Handling

All operations return Result<T, moosicbox_music_api::Error> with comprehensive error handling:

  • Database Errors: Database operation failures
  • Scan Errors: Scanning operation failures
  • Authentication Errors: Unauthorized access attempts

Feature Flags

  • scan: Enable scanning helper utilities

Dependencies

  • MoosicBox Music API: Core music API traits
  • MoosicBox Scan: Library scanning functionality
  • Switchy Database: Database abstraction
Commit count: 5735

cargo fmt