Package de.umass.lastfm
Class Artist
- java.lang.Object
-
- de.umass.lastfm.ImageHolder
-
- de.umass.lastfm.MusicEntry
-
- de.umass.lastfm.Artist
-
public class Artist extends MusicEntry
Bean that contains artist information.
This class contains static methods that executes API methods relating to artists.
Method names are equivalent to the last.fm API method names.- Author:
- Janni Kovacs
-
-
Field Summary
-
Fields inherited from class de.umass.lastfm.MusicEntry
id, listeners, mbid, name, percentageChange, playcount, streamable, tags, url, userPlaycount
-
Fields inherited from class de.umass.lastfm.ImageHolder
imageUrls
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Result
addTags(java.lang.String artist, java.lang.String tags, Session session)
Tag an artist with one or more user supplied tags.static Artist
getCorrection(java.lang.String artist, java.lang.String apiKey)
Use the last.fm corrections data to check whether the supplied artist has a correction to a canonical artist.static java.util.Collection<Event>
getEvents(java.lang.String artist, java.lang.String apiKey)
Returns a list of upcoming events for an artist.static PaginatedResult<Image>
getImages(java.lang.String artist, int page, int limit, java.lang.String apiKey)
GetImage
s for this artist in a variety of sizes.static PaginatedResult<Image>
getImages(java.lang.String artist, java.lang.String apiKey)
GetImage
s for this artist in a variety of sizes.static Artist
getInfo(java.lang.String artistOrMbid, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.static Artist
getInfo(java.lang.String artistOrMbid, java.lang.String username, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.static Artist
getInfo(java.lang.String artistOrMbid, java.util.Locale locale, java.lang.String username, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.static PaginatedResult<Event>
getPastEvents(java.lang.String artist, int page, int limit, java.lang.String apiKey)
Get a paginated list of all the events this artist has played at in the past.static PaginatedResult<Event>
getPastEvents(java.lang.String artist, java.lang.String apiKey)
Get a paginated list of all the events this artist has played at in the past.java.util.Collection<Artist>
getSimilar()
Returns a list of similarArtist
s.static java.util.Collection<Artist>
getSimilar(java.lang.String artist, int limit, java.lang.String apiKey)
Returnslimit
similar artists to the given one.static java.util.Collection<Artist>
getSimilar(java.lang.String artist, java.lang.String apiKey)
CallsgetSimilar(String, int, String)
with the default limit of 100.float
getSimilarityMatch()
static java.util.Collection<java.lang.String>
getTags(java.lang.String artist, Session session)
Get the tags applied by an individual user to an artist on Last.fm.static java.util.Collection<Album>
getTopAlbums(java.lang.String artist, java.lang.String apiKey)
Returns a list of the given artist's top albums.static java.util.Collection<User>
getTopFans(java.lang.String artist, java.lang.String apiKey)
Retrieves a list of the top fans of the given artist.static java.util.Collection<Tag>
getTopTags(java.lang.String artist, java.lang.String apiKey)
Retrieves the top tags for the given artist.static java.util.Collection<Track>
getTopTracks(java.lang.String artist, java.lang.String apiKey)
Get the top tracks by an artist on Last.fm, ordered by popularitystatic Result
removeTag(java.lang.String artist, java.lang.String tag, Session session)
Remove a user's tag from an artist.static java.util.Collection<Artist>
search(java.lang.String name, java.lang.String apiKey)
Searches for an artist and returns aCollection
of possible matches.static Result
share(java.lang.String artist, java.lang.String recipients, java.lang.String message, Session session)
Share an artist with one or more Last.fm users or other friends.static Result
shout(java.lang.String artist, java.lang.String message, Session session)
Shout on this artist's shoutbox-
Methods inherited from class de.umass.lastfm.MusicEntry
getId, getListeners, getMbid, getName, getPercentageChange, getPlaycount, getTags, getUrl, getUserPlaycount, getWikiLastChanged, getWikiSummary, getWikiText, isStreamable, loadStandardInfo
-
Methods inherited from class de.umass.lastfm.ImageHolder
availableSizes, getImageURL, loadImages
-
-
-
-
Method Detail
-
getSimilarityMatch
public float getSimilarityMatch()
-
getSimilar
public java.util.Collection<Artist> getSimilar()
Returns a list of similarArtist
s. Note that this method does not retrieve this list from the server but instead returns the result of anartist.getInfo
call.
If you need to retrieve similar artists to a specified artist use thegetSimilar(String, String)
method.- Returns:
- list of similar artists
- See Also:
getSimilar(String, String)
,getSimilar(String, int, String)
-
getInfo
public static Artist getInfo(java.lang.String artistOrMbid, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.- Parameters:
artistOrMbid
- Name of the artist or an mbidapiKey
- The API key- Returns:
- detailed artist info
-
getInfo
public static Artist getInfo(java.lang.String artistOrMbid, java.lang.String username, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.- Parameters:
artistOrMbid
- Name of the artist or an mbidusername
- The username for the context of the request, ornull
. If supplied, the user's playcount for this artist is included in the responseapiKey
- The API key- Returns:
- detailed artist info
-
getInfo
public static Artist getInfo(java.lang.String artistOrMbid, java.util.Locale locale, java.lang.String username, java.lang.String apiKey)
Retrieves detailed artist info for the given artist or mbid entry.- Parameters:
artistOrMbid
- Name of the artist or an mbidlocale
- The language to fetch info in, ornull
username
- The username for the context of the request, ornull
. If supplied, the user's playcount for this artist is included in the responseapiKey
- The API key- Returns:
- detailed artist info
-
getSimilar
public static java.util.Collection<Artist> getSimilar(java.lang.String artist, java.lang.String apiKey)
CallsgetSimilar(String, int, String)
with the default limit of 100.- Parameters:
artist
- Artist's nameapiKey
- The API key- Returns:
- similar artists
- See Also:
getSimilar(String, int, String)
-
getSimilar
public static java.util.Collection<Artist> getSimilar(java.lang.String artist, int limit, java.lang.String apiKey)
Returnslimit
similar artists to the given one.- Parameters:
artist
- Artist's namelimit
- Number of maximum resultsapiKey
- The API key- Returns:
- similar artists
-
search
public static java.util.Collection<Artist> search(java.lang.String name, java.lang.String apiKey)
Searches for an artist and returns aCollection
of possible matches.- Parameters:
name
- The artist name to look upapiKey
- The API key- Returns:
- a list of possible matches
-
getTopAlbums
public static java.util.Collection<Album> getTopAlbums(java.lang.String artist, java.lang.String apiKey)
Returns a list of the given artist's top albums.- Parameters:
artist
- Artist's nameapiKey
- The API key- Returns:
- list of top albums
-
getTopFans
public static java.util.Collection<User> getTopFans(java.lang.String artist, java.lang.String apiKey)
Retrieves a list of the top fans of the given artist.- Parameters:
artist
- Artist's nameapiKey
- The API key- Returns:
- list of top fans
-
getTopTags
public static java.util.Collection<Tag> getTopTags(java.lang.String artist, java.lang.String apiKey)
Retrieves the top tags for the given artist.- Parameters:
artist
- Artist's nameapiKey
- The API key- Returns:
- list of top tags
-
getTopTracks
public static java.util.Collection<Track> getTopTracks(java.lang.String artist, java.lang.String apiKey)
Get the top tracks by an artist on Last.fm, ordered by popularity- Parameters:
artist
- The artist name in questionapiKey
- A Last.fm API key.- Returns:
- list of top tracks
-
addTags
public static Result addTags(java.lang.String artist, java.lang.String tags, Session session)
Tag an artist with one or more user supplied tags.- Parameters:
artist
- The artist name in question.tags
- A comma delimited list of user supplied tags to apply to this artist. Accepts a maximum of 10 tags.session
- A Session instance- Returns:
- the result of the operation
-
removeTag
public static Result removeTag(java.lang.String artist, java.lang.String tag, Session session)
Remove a user's tag from an artist.- Parameters:
artist
- The artist name in question.tag
- A single user tag to remove from this artist.session
- A Session instance- Returns:
- the result of the operation
-
share
public static Result share(java.lang.String artist, java.lang.String recipients, java.lang.String message, Session session)
Share an artist with one or more Last.fm users or other friends.- Parameters:
artist
- The artist to share.recipients
- A comma delimited list of email addresses or Last.fm usernames. Maximum is 10.message
- An optional message to send with the recommendation.session
- A Session instance- Returns:
- the Result of the operation
-
getTags
public static java.util.Collection<java.lang.String> getTags(java.lang.String artist, Session session)
Get the tags applied by an individual user to an artist on Last.fm.- Parameters:
artist
- The artist name in questionsession
- A Session instance- Returns:
- a list of tags
-
getEvents
public static java.util.Collection<Event> getEvents(java.lang.String artist, java.lang.String apiKey)
Returns a list of upcoming events for an artist.- Parameters:
artist
- The artist name in questionapiKey
- A Last.fm API key.- Returns:
- a list of events
-
getPastEvents
public static PaginatedResult<Event> getPastEvents(java.lang.String artist, java.lang.String apiKey)
Get a paginated list of all the events this artist has played at in the past.- Parameters:
artist
- The name of the artist you would like to fetch event listings forapiKey
- A Last.fm API key- Returns:
- a list of past events
-
getPastEvents
public static PaginatedResult<Event> getPastEvents(java.lang.String artist, int page, int limit, java.lang.String apiKey)
Get a paginated list of all the events this artist has played at in the past.- Parameters:
artist
- The name of the artist you would like to fetch event listings forpage
- The page of results to returnlimit
- The maximum number of results to return per pageapiKey
- A Last.fm API key- Returns:
- a list of past events
-
getImages
public static PaginatedResult<Image> getImages(java.lang.String artist, java.lang.String apiKey)
GetImage
s for this artist in a variety of sizes.- Parameters:
artist
- The artist name in questionapiKey
- A Last.fm API key- Returns:
- a list of
Image
s
-
getImages
public static PaginatedResult<Image> getImages(java.lang.String artist, int page, int limit, java.lang.String apiKey)
GetImage
s for this artist in a variety of sizes.- Parameters:
artist
- The artist name in questionpage
- Which page of limit amount to displaylimit
- How many to return. Defaults and maxes out at 50apiKey
- A Last.fm API key- Returns:
- a list of
Image
s
-
shout
public static Result shout(java.lang.String artist, java.lang.String message, Session session)
Shout on this artist's shoutbox- Parameters:
artist
- The name of the artist to shout onmessage
- The message to post to the shoutboxsession
- A Session instance- Returns:
- the result of the operation
-
getCorrection
public static Artist getCorrection(java.lang.String artist, java.lang.String apiKey)
Use the last.fm corrections data to check whether the supplied artist has a correction to a canonical artist. This method returns a newArtist
object containing the corrected data, ornull
if the supplied Artist was not found.- Parameters:
artist
- The artist name to correctapiKey
- A Last.fm API key- Returns:
- a new
Artist
, ornull
-
-