Skip to content

Commit dc63851

Browse files
committed
PlayerHolder: kotlinify getters
1 parent 15284a2 commit dc63851

1 file changed

Lines changed: 18 additions & 37 deletions

File tree

app/src/main/java/org/schabi/newpipe/player/helper/PlayerHolder.kt

Lines changed: 18 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)