de.umass.lastfm
Class Tag

java.lang.Object
  extended by de.umass.lastfm.Tag
All Implemented Interfaces:
java.lang.Comparable<Tag>

public class Tag
extends java.lang.Object
implements java.lang.Comparable<Tag>

Bean for Tag data and provides methods for global tags.

Author:
Janni Kovacs

Method Summary
 int compareTo(Tag o)
           
static java.util.List<Tag> filter(java.util.Collection<Tag> tags, double percentage)
          Filters tags from the given list; retains only those tags with a count higher than the given percentage of the total sum as from getTagCountSum(Collection).
 int getCount()
           
static Tag getInfo(java.lang.String tag, java.util.Locale locale, java.lang.String apiKey)
          Gets the metadata for a tag.
static Tag getInfo(java.lang.String tag, java.lang.String apiKey)
          Gets the metadata for a tag.
 java.lang.String getName()
           
 int getReach()
           
static java.util.Collection<Tag> getSimilar(java.lang.String tag, java.lang.String apiKey)
          Search for tags similar to this one.
static long getTagCountSum(java.util.Collection<Tag> tags)
          Returns the sum of all count elements in the results.
 int getTaggings()
          Returns the number of taggings of this specific tag.
static java.util.Collection<Album> getTopAlbums(java.lang.String tag, java.lang.String apiKey)
           
static java.util.Collection<Artist> getTopArtists(java.lang.String tag, java.lang.String apiKey)
           
static java.util.Collection<Tag> getTopTags(java.lang.String apiKey)
           
static java.util.Collection<Track> getTopTracks(java.lang.String tag, java.lang.String apiKey)
           
 java.lang.String getUrl()
           
static Chart<Artist> getWeeklyArtistChart(java.lang.String tag, int limit, java.lang.String apiKey)
           
static Chart<Artist> getWeeklyArtistChart(java.lang.String tag, java.lang.String apiKey)
           
static Chart<Artist> getWeeklyArtistChart(java.lang.String tag, 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 tag, java.lang.String apiKey)
           
static java.util.Collection<Chart> getWeeklyChartListAsCharts(java.lang.String tag, java.lang.String apiKey)
           
 java.util.Date getWikiLastChanged()
           
 java.lang.String getWikiSummary()
           
 java.lang.String getWikiText()
           
 boolean isStreamable()
           
static java.util.Collection<Tag> search(java.lang.String tag, int limit, java.lang.String apiKey)
           
static java.util.Collection<Tag> search(java.lang.String tag, java.lang.String apiKey)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getCount

public int getCount()

getTaggings

public int getTaggings()
Returns the number of taggings of this specific tag. Alias for getCount().

Returns:
Number of Taggings
See Also:
getInfo(String, String)

getName

public java.lang.String getName()

getUrl

public java.lang.String getUrl()

isStreamable

public boolean isStreamable()

getReach

public int getReach()

getWikiLastChanged

public java.util.Date getWikiLastChanged()

getWikiSummary

public java.lang.String getWikiSummary()

getWikiText

public java.lang.String getWikiText()

getTagCountSum

public static long getTagCountSum(java.util.Collection<Tag> tags)
Returns the sum of all count elements in the results.

Parameters:
tags - a list of tags
Returns:
the total count of all tags

filter

public static java.util.List<Tag> filter(java.util.Collection<Tag> tags,
                                         double percentage)
Filters tags from the given list; retains only those tags with a count higher than the given percentage of the total sum as from getTagCountSum(Collection).

Parameters:
tags - list of tags
percentage - cut off percentage
Returns:
the filtered list of tags

getSimilar

public static java.util.Collection<Tag> getSimilar(java.lang.String tag,
                                                   java.lang.String apiKey)
Search for tags similar to this one. Returns tags ranked by similarity, based on listening data.

Parameters:
tag - The tag name
apiKey - A Last.fm API key
Returns:
a List of Tags

getTopTags

public static java.util.Collection<Tag> getTopTags(java.lang.String apiKey)

getTopAlbums

public static java.util.Collection<Album> getTopAlbums(java.lang.String tag,
                                                       java.lang.String apiKey)

getTopTracks

public static java.util.Collection<Track> getTopTracks(java.lang.String tag,
                                                       java.lang.String apiKey)

getTopArtists

public static java.util.Collection<Artist> getTopArtists(java.lang.String tag,
                                                         java.lang.String apiKey)

search

public static java.util.Collection<Tag> search(java.lang.String tag,
                                               java.lang.String apiKey)

search

public static java.util.Collection<Tag> search(java.lang.String tag,
                                               int limit,
                                               java.lang.String apiKey)

getWeeklyArtistChart

public static Chart<Artist> getWeeklyArtistChart(java.lang.String tag,
                                                 java.lang.String apiKey)

getWeeklyArtistChart

public static Chart<Artist> getWeeklyArtistChart(java.lang.String tag,
                                                 int limit,
                                                 java.lang.String apiKey)

getWeeklyArtistChart

public static Chart<Artist> getWeeklyArtistChart(java.lang.String tag,
                                                 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 tag,
                                                                                            java.lang.String apiKey)

getWeeklyChartListAsCharts

public static java.util.Collection<Chart> getWeeklyChartListAsCharts(java.lang.String tag,
                                                                     java.lang.String apiKey)

getInfo

public static Tag getInfo(java.lang.String tag,
                          java.lang.String apiKey)
Gets the metadata for a tag.

Parameters:
tag - The tag name
apiKey - A Last.fm API key
Returns:
Tag metdata such as Wiki Text, reach and tag count

getInfo

public static Tag getInfo(java.lang.String tag,
                          java.util.Locale locale,
                          java.lang.String apiKey)
Gets the metadata for a tag.

Parameters:
tag - The tag name
locale - The language to fetch info in, or null
apiKey - A Last.fm API key
Returns:
Tag metdata such as Wiki Text, reach and tag count

compareTo

public int compareTo(Tag o)
Specified by:
compareTo in interface java.lang.Comparable<Tag>