@@ -32,25 +32,12 @@ class PlayerHolder private constructor() {
3232 private set
3333 private var playerService: PlayerService ? = null
3434
35- private val player: Optional <Player ?>
36- get() = Optional .ofNullable<PlayerService ?>(playerService)
37- .flatMap<Player ?>(
38- Function { s: PlayerService ? ->
39- Optional .ofNullable<Player ?>(
40- s!! .player
41- )
42- }
43- )
35+ private val player: Player ?
36+ get() = playerService?.player
4437
45- private val playQueue: Optional < PlayQueue ?>
38+ private val playQueue: PlayQueue ?
4639 get() = // player play queue might be null e.g. while player is starting
47- this .player.flatMap<PlayQueue ?>(
48- Function { p: Player ? ->
49- Optional .ofNullable<PlayQueue ?>(
50- p!! .getPlayQueue()
51- )
52- }
53- )
40+ this .player?.playQueue
5441
5542 val type: PlayerType ?
5643 /* *
@@ -59,29 +46,27 @@ class PlayerHolder private constructor() {
5946 *
6047 * @return Current PlayerType
6148 */
62- get() = this .player.map<PlayerType ?>(Function { obj: Player ? -> obj!! .getPlayerType() })
63- .orElse(null )
49+ get() = this .player?.playerType
6450
6551 val isPlaying: Boolean
66- get() = this .player.map<Boolean ?>(Function { obj: Player ? -> obj!! .isPlaying() })
67- .orElse(false )
52+ get() = this .player?.isPlaying == true
6853
6954 val isPlayerOpen: Boolean
70- get() = this .player.isPresent()
55+ get() = this .player != null
7156
7257 val isPlayQueueReady: Boolean
7358 /* *
7459 * Use this method to only allow the user to manipulate the play queue (e.g. by enqueueing via
7560 * the stream long press menu) when there actually is a play queue to manipulate.
7661 * @return true only if the player is open and its play queue is ready (i.e. it is not null)
7762 */
78- get() = this .playQueue.isPresent()
63+ get() = this .playQueue != null
7964
8065 val queueSize: Int
81- get() = this .playQueue.map< Int ?>( Function { obj : PlayQueue ? -> obj !! .size() }).orElse( 0 )
66+ get() = this .playQueue? .size() ? : 0
8267
8368 val queuePosition: Int
84- get() = this .playQueue.map< Int ?>( Function { obj : PlayQueue ? -> obj !! .getIndex() }).orElse( 0 )
69+ get() = this .playQueue?.index ? : 0
8570
8671 fun setListener (newListener : PlayerServiceExtendedEventListener ? ) {
8772 listener = newListener
@@ -177,16 +162,12 @@ class PlayerHolder private constructor() {
177162 )
178163 }
179164 playerService = s
180- if (listener != null ) {
181- listener!! .onServiceConnected(s)
182- this @PlayerHolder.player.ifPresent(
183- Consumer { p: Player ? ->
184- listener!! .onPlayerConnected(
185- p!! ,
186- playAfterConnect
187- )
188- }
189- )
165+ val l = listener
166+ if (l != null ) {
167+ l.onServiceConnected(s)
168+ player?.let {
169+ l.onPlayerConnected(it, playAfterConnect)
170+ }
190171 }
191172 startPlayerListener()
192173
@@ -247,14 +228,14 @@ class PlayerHolder private constructor() {
247228 // player in the service is (not) already active, also see playerStateListener below
248229 playerService!! .setPlayerListener(playerStateListener)
249230 }
250- this .player.ifPresent( Consumer { p : Player ? -> p !! .setFragmentListener(internalListener) } )
231+ this .player? .setFragmentListener(internalListener)
251232 }
252233
253234 private fun stopPlayerListener () {
254235 if (playerService != null ) {
255236 playerService!! .setPlayerListener(null )
256237 }
257- this .player.ifPresent( Consumer { p : Player ? -> p !! .removeFragmentListener(internalListener) } )
238+ this .player? .removeFragmentListener(internalListener)
258239 }
259240
260241 /* *
0 commit comments