ObservableAudioItem

interface ObservableAudioItem : ReactiveAudioItem<ObservableAudioItem>

JavaFX-compatible audio item interface exposing metadata as observable properties.

Extends ReactiveAudioItem with JavaFX property bindings, enabling automatic UI updates when metadata changes. All mutable fields are accessible both as regular properties and as JavaFX properties for seamless integration with JavaFX data binding.

Inheritors

Properties

Link copied to clipboard
abstract var album: Album
Link copied to clipboard
abstract val albumProperty: ObjectProperty<Album>
Link copied to clipboard
abstract var artist: Artist
Link copied to clipboard
abstract val artistProperty: ObjectProperty<Artist>
Link copied to clipboard
abstract val artistsInvolved: Set<Artist>
Link copied to clipboard
abstract val artistsInvolvedProperty: ReadOnlySetProperty<Artist>
Link copied to clipboard
abstract val bitRate: Int
Link copied to clipboard
abstract var bpm: Float?
Link copied to clipboard
abstract val bpmProperty: FloatProperty
Link copied to clipboard
abstract val changes: SharedFlow<MutationEvent<Int, ObservableAudioItem>>
Link copied to clipboard
abstract var comments: String?
Link copied to clipboard
abstract val commentsProperty: StringProperty
Link copied to clipboard
abstract var coverImageBytes: ByteArray?
Link copied to clipboard
abstract val coverImageProperty: ReadOnlyObjectProperty<Optional<Image>>
Link copied to clipboard
Link copied to clipboard
abstract val dateOfCreationProperty: ReadOnlyProperty<LocalDateTime>
Link copied to clipboard
abstract var discNumber: Short?
Link copied to clipboard
abstract val discNumberProperty: IntegerProperty
Link copied to clipboard
abstract val duration: Duration
Link copied to clipboard
abstract val encoder: String?
Link copied to clipboard
abstract val encoding: String?
Link copied to clipboard
abstract val extension: String
Link copied to clipboard
abstract val fileName: String
Link copied to clipboard
abstract var genres: Set<Genre>
Link copied to clipboard
abstract val genresProperty: ObjectProperty<Set<Genre>>
Link copied to clipboard
abstract val id: Int
Link copied to clipboard
abstract val isClosed: Boolean
Link copied to clipboard
Link copied to clipboard
abstract val lastDateModifiedProperty: ReadOnlyObjectProperty<LocalDateTime>
Link copied to clipboard
abstract val length: Long
Link copied to clipboard
abstract val path: Path
Link copied to clipboard
abstract val playCount: Short
Link copied to clipboard
abstract val playCountProperty: ReadOnlyIntegerProperty
Link copied to clipboard
abstract var title: String
Link copied to clipboard
abstract val titleProperty: StringProperty
Link copied to clipboard
abstract var trackNumber: Short?
Link copied to clipboard
abstract val trackNumberProperty: IntegerProperty
Link copied to clipboard
abstract val uniqueId: String

Functions

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