24 lines
594 B
Go
24 lines
594 B
Go
|
/*
|
||
|
* MumbleDJ
|
||
|
* By Matthieu Grieger
|
||
|
* interfaces/skiptracker.go
|
||
|
* Copyright (c) 2016 Matthieu Grieger (MIT License)
|
||
|
*/
|
||
|
|
||
|
package interfaces
|
||
|
|
||
|
import "github.com/layeh/gumble/gumble"
|
||
|
|
||
|
// SkipTracker is the interface which should be interacted with for skip operations.
|
||
|
// Using the SkipTracker interface ensures thread safety.
|
||
|
type SkipTracker interface {
|
||
|
AddTrackSkip(*gumble.User) error
|
||
|
AddPlaylistSkip(*gumble.User) error
|
||
|
RemoveTrackSkip(*gumble.User) error
|
||
|
RemovePlaylistSkip(*gumble.User) error
|
||
|
NumTrackSkips() int
|
||
|
NumPlaylistSkips() int
|
||
|
ResetTrackSkips()
|
||
|
ResetPlaylistSkips()
|
||
|
}
|