Package com.tagtraum.beatunes
Class SongFilters
- java.lang.Object
-
- com.tagtraum.beatunes.SongFilters
-
public final class SongFilters extends Object
SongFilters.- Author:
- Hendrik Schreiber
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SongFilters.IdFilter
Filter that matches specific song ids.static class
SongFilters.OrFilter
-
Field Summary
Fields Modifier and Type Field Description static SongPropertyFilter
ACCEPT_FILTER
Creates a SongFilter that accepts every song.static SongPropertyFilter
EXCLUDE_AUDIOBOOKS_FILTER
Excludes Audiobooks.static SongPropertyFilter
EXCLUDE_ITUNES_U_FILTER
Excludes iTunes U.static SongPropertyFilter
EXCLUDE_MOVIES_FILTER
Excludes movies.static SongPropertyFilter
EXCLUDE_MUSIC_VIDEO_FILTER
Excludes Music Videos.static SongPropertyFilter
EXCLUDE_PODCASTS_FILTER
Excludes podcasts.static SongPropertyFilter
EXCLUDE_PROTECTED_FILTER
Excludes Music Videos.static SongPropertyFilter
EXCLUDE_SHARED_FILTER
Excludes shared songs.static SongPropertyFilter
EXCLUDE_TVSHOW_FILTER
Excludes TV shows.static SongPropertyFilter
EXCLUDE_UNSELECTED_FILTER
Excludes unselected songs.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
accept(AudioSong song, Collection<SongFilter> songFilters)
Filters song.static SongPropertyFilter
createAndFilter(SongPropertyFilter... songPropertyFilters)
Creates an AND SongFilter.static SongPropertyFilter
createExcludeGenreFilter(String genre)
Creates a SongFilter that excludes a certain genre.static SongPropertyFilter
createNotFilter(SongPropertyFilter songPropertyFilter)
Creates a NOT SongFilter.static SongPropertyFilter
createOrFilter(SongPropertyFilter... songPropertyFilters)
Creates an OR SongFilter.static List<AudioSong>
filterSongs(Iterable<AudioSong> songs, Collection<? extends SongFilter> songFilters)
Filters songs.
-
-
-
Field Detail
-
ACCEPT_FILTER
public static SongPropertyFilter ACCEPT_FILTER
Creates a SongFilter that accepts every song.
-
EXCLUDE_UNSELECTED_FILTER
public static final SongPropertyFilter EXCLUDE_UNSELECTED_FILTER
Excludes unselected songs.
-
EXCLUDE_PODCASTS_FILTER
public static final SongPropertyFilter EXCLUDE_PODCASTS_FILTER
Excludes podcasts.
-
EXCLUDE_MOVIES_FILTER
public static final SongPropertyFilter EXCLUDE_MOVIES_FILTER
Excludes movies.
-
EXCLUDE_TVSHOW_FILTER
public static final SongPropertyFilter EXCLUDE_TVSHOW_FILTER
Excludes TV shows.
-
EXCLUDE_MUSIC_VIDEO_FILTER
public static final SongPropertyFilter EXCLUDE_MUSIC_VIDEO_FILTER
Excludes Music Videos.
-
EXCLUDE_PROTECTED_FILTER
public static final SongPropertyFilter EXCLUDE_PROTECTED_FILTER
Excludes Music Videos.
-
EXCLUDE_ITUNES_U_FILTER
public static final SongPropertyFilter EXCLUDE_ITUNES_U_FILTER
Excludes iTunes U.
-
EXCLUDE_AUDIOBOOKS_FILTER
public static final SongPropertyFilter EXCLUDE_AUDIOBOOKS_FILTER
Excludes Audiobooks.
-
EXCLUDE_SHARED_FILTER
public static final SongPropertyFilter EXCLUDE_SHARED_FILTER
Excludes shared songs.
-
-
Method Detail
-
createExcludeGenreFilter
public static SongPropertyFilter createExcludeGenreFilter(String genre)
Creates a SongFilter that excludes a certain genre.- Parameters:
genre
- genre to exclude- Returns:
- song filter that excludes a certain genre
-
createOrFilter
public static SongPropertyFilter createOrFilter(SongPropertyFilter... songPropertyFilters)
Creates an OR SongFilter.- Parameters:
songPropertyFilters
- songPropertyFilters to be connected with OR
-
createAndFilter
public static SongPropertyFilter createAndFilter(SongPropertyFilter... songPropertyFilters)
Creates an AND SongFilter.- Parameters:
songPropertyFilters
- songPropertyFilters to be connected with OR
-
createNotFilter
public static SongPropertyFilter createNotFilter(SongPropertyFilter songPropertyFilter)
Creates a NOT SongFilter.- Parameters:
songPropertyFilter
- songPropertyFilter to be negated
-
accept
public static boolean accept(AudioSong song, Collection<SongFilter> songFilters)
Filters song.- Parameters:
song
- song to filtersongFilters
- filters to use- Returns:
- true, if the song passes all filters
-
filterSongs
public static List<AudioSong> filterSongs(Iterable<AudioSong> songs, Collection<? extends SongFilter> songFilters)
Filters songs.- Parameters:
songs
- songs to filtersongFilters
- filters to use- Returns:
- list of filtered songs
-
-