ObservableArtistCatalog

JavaFX-compatible artist catalog interface exposing catalog data as observable properties.

Extends ReactiveArtistCatalog with JavaFX property bindings, enabling automatic UI updates when the catalog contents change. All observable property updates are dispatched on the JavaFX Application Thread via Platform.runLater, ensuring thread-safe UI binding.

See also

ReactiveArtistCatalog

Properties

Link copied to clipboard
abstract val albumCountProperty: ReadOnlyIntegerProperty

Observable count of albums in this artist's catalog.

Link copied to clipboard
abstract val albums: Set<AlbumSet<ObservableAudioItem>>
Link copied to clipboard
abstract val albumsProperty: ReadOnlySetProperty<Album>

Observable set of albums in this artist's catalog.

Link copied to clipboard
abstract val artist: Artist
Link copied to clipboard
abstract val artistProperty: ReadOnlyObjectProperty<Artist>

Observable artist associated with this catalog.

Link copied to clipboard
abstract val changes: SharedFlow<MutationEvent<Artist, ObservableArtistCatalog>>
Link copied to clipboard
abstract val emptyProperty: ReadOnlyBooleanProperty

Observable boolean indicating whether this catalog is empty.

Link copied to clipboard
abstract val id: Artist
Link copied to clipboard
abstract val isClosed: Boolean
Link copied to clipboard
abstract val isEmpty: Boolean
Link copied to clipboard
Link copied to clipboard
abstract val size: Int
Link copied to clipboard
abstract val sizeProperty: ReadOnlyIntegerProperty

Observable total count of audio items across all albums in this catalog.

Link copied to clipboard
abstract val uniqueId: String

Functions

Link copied to clipboard
abstract fun albumAudioItems(albumName: String): Set<ObservableAudioItem>
open fun albumAudioItems(album: Album): Set<ObservableAudioItem>
Link copied to clipboard
abstract fun albumAudioItemsProperty(albumName: String): ReadOnlyListProperty<ObservableAudioItem>

Returns an observable list of audio items for the specified album.

Link copied to clipboard
abstract override fun clone(): ReactiveEntity<Artist, ObservableArtistCatalog>
Link copied to clipboard
abstract override fun close()
Link copied to clipboard
abstract operator fun compareTo(other: ObservableArtistCatalog): Int
Link copied to clipboard
abstract fun emitAsync(event: MutationEvent<Artist, ObservableArtistCatalog>)
Link copied to clipboard
abstract fun subscribe(p0: Flow.Subscriber<in MutationEvent<Artist, ObservableArtistCatalog>?>?)
open fun subscribe(action: Consumer<in MutationEvent<Artist, ObservableArtistCatalog>>): LirpEventSubscription<in ObservableArtistCatalog, MutationEvent.Type, MutationEvent<Artist, ObservableArtistCatalog>>
abstract fun subscribe(action: suspend (MutationEvent<Artist, ObservableArtistCatalog>) -> Unit): LirpEventSubscription<in ObservableArtistCatalog, MutationEvent.Type, MutationEvent<Artist, ObservableArtistCatalog>>
abstract fun subscribe(vararg eventTypes: MutationEvent.Type, action: Consumer<in MutationEvent<Artist, ObservableArtistCatalog>>): LirpEventSubscription<in ObservableArtistCatalog, MutationEvent.Type, MutationEvent<Artist, ObservableArtistCatalog>>
Link copied to clipboard
abstract fun <T> withEventsDisabled(action: () -> T): T