New NowPlaying and Skip detection implementation
This commit is contained in:
+12
-3
@@ -12,8 +12,17 @@ type NowPlayingInfo struct {
|
||||
PlayerName string
|
||||
}
|
||||
|
||||
// This repo has the semantics of a FIFO queue, for each playerId
|
||||
type NowPlayingRepository interface {
|
||||
Set(trackId, username string, playerId int, playerName string) error
|
||||
Clear(playerId int) (*NowPlayingInfo, error)
|
||||
GetAll() (*[]NowPlayingInfo, error)
|
||||
// Insert at the head of the queue
|
||||
Enqueue(playerId int, playerName string, trackId, username string) error
|
||||
|
||||
// Returns the element at the head of the queue (last inserted one)
|
||||
Head(playerId int) (*NowPlayingInfo, error)
|
||||
|
||||
// Removes and returns the element at the end of the queue
|
||||
Dequeue(playerId int) (*NowPlayingInfo, error)
|
||||
|
||||
// Returns all heads from all playerIds
|
||||
GetAll() ([]*NowPlayingInfo, error)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user