Package de.umass.lastfm
Class User
- java.lang.Object
-
- de.umass.lastfm.ImageHolder
-
- de.umass.lastfm.User
-
public class User extends ImageHolder
Contains user information and provides bindings to the methods in the user. namespace.- Author:
- Janni Kovacs
-
-
Field Summary
-
Fields inherited from class de.umass.lastfm.ImageHolder
imageUrls
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetAge()static PaginatedResult<Track>getArtistTracks(java.lang.String user, java.lang.String artist, int page, long startTimestamp, long endTimestamp, java.lang.String apiKey)Get a list of tracks by a given artist scrobbled by this user, including scrobble time.static PaginatedResult<Track>getArtistTracks(java.lang.String user, java.lang.String artist, java.lang.String apiKey)Get a list of tracks by a given artist scrobbled by this user, including scrobble time.static PaginatedResult<Track>getBannedTracks(java.lang.String user, int page, java.lang.String apiKey)Returns the tracks banned by the user.static PaginatedResult<Track>getBannedTracks(java.lang.String user, java.lang.String apiKey)Returns the tracks banned by the user.java.lang.StringgetCountry()static java.util.Collection<Event>getEvents(java.lang.String user, java.lang.String apiKey)GetS a list of upcoming events that this user is attending.static java.util.Collection<User>getFriends(java.lang.String user, boolean recenttracks, int limit, java.lang.String apiKey)static java.util.Collection<User>getFriends(java.lang.String user, java.lang.String apiKey)java.lang.StringgetGender()java.lang.StringgetId()java.lang.StringgetImageURL()static UsergetInfo(java.lang.String user, java.lang.String apiKey)Retrieves profile information about the specified user.java.lang.StringgetLanguage()static PaginatedResult<Track>getLovedTracks(java.lang.String user, int page, java.lang.String apiKey)Retrieves the loved tracks by a user.static PaginatedResult<Track>getLovedTracks(java.lang.String user, java.lang.String apiKey)Retrieves the loved tracks by a user.java.lang.StringgetName()static java.util.Collection<User>getNeighbours(java.lang.String user, int limit, java.lang.String apiKey)static java.util.Collection<User>getNeighbours(java.lang.String user, java.lang.String apiKey)static java.util.Collection<Album>getNewReleases(java.lang.String user, boolean useRecommendations, java.lang.String apiKey)Gets a list of forthcoming releases based on a user's musical taste.static java.util.Collection<Album>getNewReleases(java.lang.String user, java.lang.String apiKey)Gets a list of forthcoming releases based on a user's musical taste.intgetNumPlaylists()static PaginatedResult<Event>getPastEvents(java.lang.String user, int page, java.lang.String apiKey)Gets a paginated list of all events a user has attended in the past.static PaginatedResult<Event>getPastEvents(java.lang.String user, java.lang.String apiKey)Get the first page of a paginated result of all events a user has attended in the past.intgetPlaycount()static java.util.Collection<Playlist>getPlaylists(java.lang.String user, java.lang.String apiKey)Gets a list of a user's playlists on Last.fm.java.lang.StringgetRealname()static PaginatedResult<Track>getRecentTracks(java.lang.String user, int limit, java.lang.String apiKey, int page)static PaginatedResult<Track>getRecentTracks(java.lang.String user, java.lang.String apiKey)static PaginatedResult<Artist>getRecommendedArtists(int page, Session session)Get Last.fm artist recommendations for a user.static PaginatedResult<Artist>getRecommendedArtists(Session session)Get Last.fm artist recommendations for a user.static PaginatedResult<Event>getRecommendedEvents(int page, Session session)static PaginatedResult<Event>getRecommendedEvents(Session session)java.util.DategetRegisteredDate()static java.util.Collection<Album>getTopAlbums(java.lang.String user, Period period, java.lang.String apiKey)static java.util.Collection<Album>getTopAlbums(java.lang.String user, java.lang.String apiKey)static java.util.Collection<Artist>getTopArtists(java.lang.String user, Period period, java.lang.String apiKey)static java.util.Collection<Artist>getTopArtists(java.lang.String user, java.lang.String apiKey)static java.util.Collection<Tag>getTopTags(java.lang.String user, int limit, java.lang.String apiKey)static java.util.Collection<Tag>getTopTags(java.lang.String user, java.lang.String apiKey)static java.util.Collection<Track>getTopTracks(java.lang.String user, Period period, java.lang.String apiKey)static java.util.Collection<Track>getTopTracks(java.lang.String user, java.lang.String apiKey)java.lang.StringgetUrl()static Chart<Album>getWeeklyAlbumChart(java.lang.String user, int limit, java.lang.String apiKey)static Chart<Album>getWeeklyAlbumChart(java.lang.String user, java.lang.String apiKey)static Chart<Album>getWeeklyAlbumChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)static Chart<Artist>getWeeklyArtistChart(java.lang.String user, int limit, java.lang.String apiKey)static Chart<Artist>getWeeklyArtistChart(java.lang.String user, java.lang.String apiKey)static Chart<Artist>getWeeklyArtistChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)static java.util.LinkedHashMap<java.lang.String,java.lang.String>getWeeklyChartList(java.lang.String user, java.lang.String apiKey)static java.util.Collection<Chart>getWeeklyChartListAsCharts(java.lang.String user, java.lang.String apiKey)static Chart<Track>getWeeklyTrackChart(java.lang.String user, int limit, java.lang.String apiKey)static Chart<Track>getWeeklyTrackChart(java.lang.String user, java.lang.String apiKey)static Chart<Track>getWeeklyTrackChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)booleanisSubscriber()static Resultshout(java.lang.String user, java.lang.String message, Session session)Shout on this user's shoutbox-
Methods inherited from class de.umass.lastfm.ImageHolder
availableSizes, getImageURL, loadImages
-
-
-
-
Method Detail
-
getName
public java.lang.String getName()
-
getRealname
public java.lang.String getRealname()
-
getUrl
public java.lang.String getUrl()
-
getAge
public int getAge()
-
getCountry
public java.lang.String getCountry()
-
getGender
public java.lang.String getGender()
-
getLanguage
public java.lang.String getLanguage()
-
getNumPlaylists
public int getNumPlaylists()
-
getPlaycount
public int getPlaycount()
-
isSubscriber
public boolean isSubscriber()
-
getImageURL
public java.lang.String getImageURL()
-
getId
public java.lang.String getId()
-
getRegisteredDate
public java.util.Date getRegisteredDate()
-
getArtistTracks
public static PaginatedResult<Track> getArtistTracks(java.lang.String user, java.lang.String artist, java.lang.String apiKey)
Get a list of tracks by a given artist scrobbled by this user, including scrobble time. Can be limited to specific timeranges, defaults to all time.- Parameters:
user- The last.fm username to fetch the recent tracks ofartist- The artist name you are interested inapiKey- A Last.fm API key- Returns:
- a list of Tracks
-
getArtistTracks
public static PaginatedResult<Track> getArtistTracks(java.lang.String user, java.lang.String artist, int page, long startTimestamp, long endTimestamp, java.lang.String apiKey)
Get a list of tracks by a given artist scrobbled by this user, including scrobble time. Can be limited to specific timeranges, defaults to all time.- Parameters:
user- The last.fm username to fetch the recent tracks ofartist- The artist name you are interested inpage- An integer used to fetch a specific page of tracksstartTimestamp- An unix timestamp to start atendTimestamp- An unix timestamp to end atapiKey- A Last.fm API key- Returns:
- a list of Tracks
-
getFriends
public static java.util.Collection<User> getFriends(java.lang.String user, java.lang.String apiKey)
-
getFriends
public static java.util.Collection<User> getFriends(java.lang.String user, boolean recenttracks, int limit, java.lang.String apiKey)
-
getNeighbours
public static java.util.Collection<User> getNeighbours(java.lang.String user, java.lang.String apiKey)
-
getNeighbours
public static java.util.Collection<User> getNeighbours(java.lang.String user, int limit, java.lang.String apiKey)
-
getRecentTracks
public static PaginatedResult<Track> getRecentTracks(java.lang.String user, java.lang.String apiKey)
-
getRecentTracks
public static PaginatedResult<Track> getRecentTracks(java.lang.String user, int limit, java.lang.String apiKey, int page)
-
getTopAlbums
public static java.util.Collection<Album> getTopAlbums(java.lang.String user, java.lang.String apiKey)
-
getTopAlbums
public static java.util.Collection<Album> getTopAlbums(java.lang.String user, Period period, java.lang.String apiKey)
-
getTopArtists
public static java.util.Collection<Artist> getTopArtists(java.lang.String user, java.lang.String apiKey)
-
getTopArtists
public static java.util.Collection<Artist> getTopArtists(java.lang.String user, Period period, java.lang.String apiKey)
-
getTopTracks
public static java.util.Collection<Track> getTopTracks(java.lang.String user, java.lang.String apiKey)
-
getTopTracks
public static java.util.Collection<Track> getTopTracks(java.lang.String user, Period period, java.lang.String apiKey)
-
getTopTags
public static java.util.Collection<Tag> getTopTags(java.lang.String user, java.lang.String apiKey)
-
getTopTags
public static java.util.Collection<Tag> getTopTags(java.lang.String user, int limit, java.lang.String apiKey)
-
getWeeklyAlbumChart
public static Chart<Album> getWeeklyAlbumChart(java.lang.String user, java.lang.String apiKey)
-
getWeeklyAlbumChart
public static Chart<Album> getWeeklyAlbumChart(java.lang.String user, int limit, java.lang.String apiKey)
-
getWeeklyAlbumChart
public static Chart<Album> getWeeklyAlbumChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)
-
getWeeklyArtistChart
public static Chart<Artist> getWeeklyArtistChart(java.lang.String user, java.lang.String apiKey)
-
getWeeklyArtistChart
public static Chart<Artist> getWeeklyArtistChart(java.lang.String user, int limit, java.lang.String apiKey)
-
getWeeklyArtistChart
public static Chart<Artist> getWeeklyArtistChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)
-
getWeeklyTrackChart
public static Chart<Track> getWeeklyTrackChart(java.lang.String user, java.lang.String apiKey)
-
getWeeklyTrackChart
public static Chart<Track> getWeeklyTrackChart(java.lang.String user, int limit, java.lang.String apiKey)
-
getWeeklyTrackChart
public static Chart<Track> getWeeklyTrackChart(java.lang.String user, java.lang.String from, java.lang.String to, int limit, java.lang.String apiKey)
-
getWeeklyChartList
public static java.util.LinkedHashMap<java.lang.String,java.lang.String> getWeeklyChartList(java.lang.String user, java.lang.String apiKey)
-
getWeeklyChartListAsCharts
public static java.util.Collection<Chart> getWeeklyChartListAsCharts(java.lang.String user, java.lang.String apiKey)
-
getEvents
public static java.util.Collection<Event> getEvents(java.lang.String user, java.lang.String apiKey)
GetS a list of upcoming events that this user is attending.- Parameters:
user- The user to fetch the events for.apiKey- A Last.fm API key.- Returns:
- a list of upcoming events
-
getPastEvents
public static PaginatedResult<Event> getPastEvents(java.lang.String user, java.lang.String apiKey)
Get the first page of a paginated result of all events a user has attended in the past.- Parameters:
user- The username to fetch the events for.apiKey- A Last.fm API key.- Returns:
- a list of past
Events
-
getPastEvents
public static PaginatedResult<Event> getPastEvents(java.lang.String user, int page, java.lang.String apiKey)
Gets a paginated list of all events a user has attended in the past.- Parameters:
user- The username to fetch the events for.page- The page number to scan to.apiKey- A Last.fm API key.- Returns:
- a list of past
Events
-
getRecommendedEvents
public static PaginatedResult<Event> getRecommendedEvents(Session session)
-
getRecommendedEvents
public static PaginatedResult<Event> getRecommendedEvents(int page, Session session)
-
getPlaylists
public static java.util.Collection<Playlist> getPlaylists(java.lang.String user, java.lang.String apiKey)
Gets a list of a user's playlists on Last.fm. Note that this method only fetches metadata regarding the user's playlists. If you want to retrieve the list of tracks in a playlist usePlaylist.fetch().- Parameters:
user- The last.fm username to fetch the playlists of.apiKey- A Last.fm API key.- Returns:
- a list of Playlists
-
getLovedTracks
public static PaginatedResult<Track> getLovedTracks(java.lang.String user, java.lang.String apiKey)
Retrieves the loved tracks by a user.- Parameters:
user- The user name to fetch the loved tracks for.apiKey- A Last.fm API key.- Returns:
- the loved tracks
-
getLovedTracks
public static PaginatedResult<Track> getLovedTracks(java.lang.String user, int page, java.lang.String apiKey)
Retrieves the loved tracks by a user.- Parameters:
user- The user name to fetch the loved tracks for.page- The page number to scan toapiKey- A Last.fm API key.- Returns:
- the loved tracks
-
getInfo
public static User getInfo(java.lang.String user, java.lang.String apiKey)
Retrieves profile information about the specified user.- Parameters:
user- A usernameapiKey- A Last.fm API key.- Returns:
- User info
-
getRecommendedArtists
public static PaginatedResult<Artist> getRecommendedArtists(Session session)
Get Last.fm artist recommendations for a user.- Parameters:
session- A Session instance- Returns:
- a list of
Artists
-
getRecommendedArtists
public static PaginatedResult<Artist> getRecommendedArtists(int page, Session session)
Get Last.fm artist recommendations for a user.- Parameters:
page- The page to fetchsession- A Session instance- Returns:
- a list of
Artists
-
shout
public static Result shout(java.lang.String user, java.lang.String message, Session session)
Shout on this user's shoutbox- Parameters:
user- The name of the user to shout onmessage- The message to post to the shoutboxsession- A Session instance- Returns:
- the result of the operation
-
getNewReleases
public static java.util.Collection<Album> getNewReleases(java.lang.String user, java.lang.String apiKey)
Gets a list of forthcoming releases based on a user's musical taste.- Parameters:
user- The Last.fm usernameapiKey- A Last.fm API key- Returns:
- a Collection of new
Albumreleases
-
getNewReleases
public static java.util.Collection<Album> getNewReleases(java.lang.String user, boolean useRecommendations, java.lang.String apiKey)
Gets a list of forthcoming releases based on a user's musical taste.- Parameters:
user- The Last.fm usernameuseRecommendations- Iftrue, the feed contains new releases based on Last.fm's artist recommendations for this user. Otherwise, it is based on their library (the default)apiKey- A Last.fm API key- Returns:
- a Collection of new
Albumreleases
-
getBannedTracks
public static PaginatedResult<Track> getBannedTracks(java.lang.String user, java.lang.String apiKey)
Returns the tracks banned by the user.- Parameters:
user- The user nameapiKey- A Last.fm API key- Returns:
- the banned tracks
-
getBannedTracks
public static PaginatedResult<Track> getBannedTracks(java.lang.String user, int page, java.lang.String apiKey)
Returns the tracks banned by the user.- Parameters:
user- The user namepage- The page number to fetchapiKey- A Last.fm API key- Returns:
- the banned tracks
-
-