Builder
class Builder
Builder for FXMusicLibrary.
All storage configurations default to volatile (in-memory) unless overridden with a JSON file or SQL data source:
val library = FXMusicLibrary.builder()
.audioLibrarySql(dataSource, audioTableDef)
.playlistHierarchySql(dataSource, playlistTableDef)
.waveformRepositorySql(dataSource, waveformTableDef)
.build()Content copied to clipboard
Functions
Link copied to clipboard
Configures the audio library to use JSON file persistence at file.
Link copied to clipboard
fun audioLibrarySql(dataSource: DataSource, tableDef: SqlTableDef<ObservableAudioItem>): FXMusicLibrary.Builder
Configures the audio library to persist to a SQL database using dataSource and tableDef.
Link copied to clipboard
Builds the FXMusicLibrary, wiring all event subscriptions between components.
Link copied to clipboard
Configures the playlist hierarchy to use JSON file persistence at file.
Link copied to clipboard
fun playlistHierarchySql(dataSource: DataSource, tableDef: SqlTableDef<ObservablePlaylist>): FXMusicLibrary.Builder
Configures the playlist hierarchy to persist to a SQL database using dataSource and tableDef.
Link copied to clipboard
Configures the waveform repository to use JSON file persistence at file.
Link copied to clipboard
fun waveformRepositorySql(dataSource: DataSource, tableDef: SqlTableDef<AudioWaveform>): FXMusicLibrary.Builder
Configures the waveform repository to persist to a SQL database using dataSource and tableDef.