@@ -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
@@ -182,16 +167,12 @@ class PlayerHolder private constructor() {
182167 )
183168 }
184169 playerService = s
185- if (listener != null ) {
186- listener!! .onServiceConnected(s)
187- this @PlayerHolder.player.ifPresent(
188- Consumer { p: Player ? ->
189- listener!! .onPlayerConnected(
190- p!! ,
191- playAfterConnect
192- )
193- }
194- )
170+ val l = listener
171+ if (l != null ) {
172+ l.onServiceConnected(s)
173+ player?.let {
174+ l.onPlayerConnected(it, playAfterConnect)
175+ }
195176 }
196177 startPlayerListener()
197178
@@ -252,14 +233,14 @@ class PlayerHolder private constructor() {
252233 // player in the service is (not) already active, also see playerStateListener below
253234 playerService!! .setPlayerListener(playerStateListener)
254235 }
255- this .player.ifPresent( Consumer { p : Player ? -> p !! .setFragmentListener(internalListener) } )
236+ this .player? .setFragmentListener(internalListener)
256237 }
257238
258239 private fun stopPlayerListener () {
259240 if (playerService != null ) {
260241 playerService!! .setPlayerListener(null )
261242 }
262- this .player.ifPresent( Consumer { p : Player ? -> p !! .removeFragmentListener(internalListener) } )
243+ this .player? .removeFragmentListener(internalListener)
263244 }
264245
265246 /* *
0 commit comments