diff --git a/doc/allclasses-frame.html b/doc/allclasses-frame.html new file mode 100644 index 0000000..05dabfd --- /dev/null +++ b/doc/allclasses-frame.html @@ -0,0 +1,21 @@ + + + + + +All Classes + + + + + +

All Classes

+
+ +
+ + diff --git a/doc/allclasses-noframe.html b/doc/allclasses-noframe.html new file mode 100644 index 0000000..09510b1 --- /dev/null +++ b/doc/allclasses-noframe.html @@ -0,0 +1,21 @@ + + + + + +All Classes + + + + + +

All Classes

+
+ +
+ + diff --git a/doc/constant-values.html b/doc/constant-values.html new file mode 100644 index 0000000..48c670a --- /dev/null +++ b/doc/constant-values.html @@ -0,0 +1,122 @@ + + + + + +Constant Field Values + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Constant Field Values

+

Contents

+
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/deprecated-list.html b/doc/deprecated-list.html new file mode 100644 index 0000000..1abff45 --- /dev/null +++ b/doc/deprecated-list.html @@ -0,0 +1,144 @@ + + + + + +Deprecated List + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Deprecated API

+

Contents

+ +
+
+ + + +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/help-doc.html b/doc/help-doc.html new file mode 100644 index 0000000..cb5efc3 --- /dev/null +++ b/doc/help-doc.html @@ -0,0 +1,223 @@ + + + + + +API Help + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

How This API Document Is Organized

+
This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.
+
+
+ +This help file applies to API documentation generated using the standard doclet.
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-1.html b/doc/index-files/index-1.html new file mode 100644 index 0000000..6fa4376 --- /dev/null +++ b/doc/index-files/index-1.html @@ -0,0 +1,129 @@ + + + + + +C-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

C

+
+
clearUser() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Clears username from network
+
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-2.html b/doc/index-files/index-2.html new file mode 100644 index 0000000..c2d652f --- /dev/null +++ b/doc/index-files/index-2.html @@ -0,0 +1,143 @@ + + + + + +F-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

F

+
+
FmNetwork - Class in sarsoo.fmframework.fm
+
 
+
FmNetwork(String) - Constructor for class sarsoo.fmframework.fm.FmNetwork
+
+
FmNetwork for raw and user independent Last.FM information
+
+
FmNetwork(String, String) - Constructor for class sarsoo.fmframework.fm.FmNetwork
+
+
Deprecated.
+
+
FmUserNetwork - Class in sarsoo.fmframework.fm
+
 
+
FmUserNetwork(String, String) - Constructor for class sarsoo.fmframework.fm.FmUserNetwork
+
+
FmNetwork for user specific Last.FM information
+
+
FmUserNetwork.TaggingType - Enum in sarsoo.fmframework.fm
+
 
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-3.html b/doc/index-files/index-3.html new file mode 100644 index 0000000..424f197 --- /dev/null +++ b/doc/index-files/index-3.html @@ -0,0 +1,178 @@ + + + + + +G-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

G

+
+
getAlbum(String, String) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Get an album from Last.FM
+
+
getArtist(String) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Get an artist from Last.FM
+
+
getLastTrack() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Returns last or currently listening track
+
+
getScrobbleCountByDate(int, int, int) - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return scrobble count by date
+
+
getScrobbleCountByDeltaDay(int) - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Returns scrobble count of day + by today - {int day}
+
+
getScrobblesToday() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return scrobble count from today
+
+
getTag(String) - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Returns FMObjList of tagged artists
+
+
getTags() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Returns list of user tags
+
+
getTrack(String, String) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Get a track from Last.FM
+
+
getUser() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return user object from Last.FM
+
+
getUserName() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return network's Last.FM username
+
+
getUserRealName() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return user real name
+
+
getUserScrobbleCount() - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Return user's total scrobble count
+
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-4.html b/doc/index-files/index-4.html new file mode 100644 index 0000000..c468513 --- /dev/null +++ b/doc/index-files/index-4.html @@ -0,0 +1,142 @@ + + + + + +R-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

R

+
+
refresh(Album) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Exchanges album object for stat-updated album from Last.FM
+
+
refresh(Artist) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Exchanges artist object for stat-updated artist from Last.FM
+
+
refresh(Track) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Exchanges track object for stat-updated track from Last.FM
+
+
refresh(FMObj) - Method in class sarsoo.fmframework.fm.FmNetwork
+
+
Catch-all refresh method to update an FMObj + by routing based on object class
+
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-5.html b/doc/index-files/index-5.html new file mode 100644 index 0000000..0ce0653 --- /dev/null +++ b/doc/index-files/index-5.html @@ -0,0 +1,131 @@ + + + + + +S-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

S

+
+
sarsoo.fmframework.fm - package sarsoo.fmframework.fm
+
 
+
setUserName(String) - Method in class sarsoo.fmframework.fm.FmUserNetwork
+
+
Set network's Last.FM username
+
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index-files/index-6.html b/doc/index-files/index-6.html new file mode 100644 index 0000000..830dd2e --- /dev/null +++ b/doc/index-files/index-6.html @@ -0,0 +1,134 @@ + + + + + +V-Index + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
C F G R S V  + + +

V

+
+
valueOf(String) - Static method in enum sarsoo.fmframework.fm.FmUserNetwork.TaggingType
+
+
Returns the enum constant of this type with the specified name.
+
+
values() - Static method in enum sarsoo.fmframework.fm.FmUserNetwork.TaggingType
+
+
Returns an array containing the constants of this enum type, in +the order they are declared.
+
+
+C F G R S V 
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/index.html b/doc/index.html new file mode 100644 index 0000000..fe2e679 --- /dev/null +++ b/doc/index.html @@ -0,0 +1,72 @@ + + + + + +Generated Documentation (Untitled) + + + + + + +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<h2>Frame Alert</h2> +<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="sarsoo/fmframework/fm/package-summary.html">Non-frame version</a>.</p> + + + diff --git a/doc/overview-tree.html b/doc/overview-tree.html new file mode 100644 index 0000000..0cac33d --- /dev/null +++ b/doc/overview-tree.html @@ -0,0 +1,151 @@ + + + + + +Class Hierarchy + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Hierarchy For All Packages

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +

Enum Hierarchy

+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/package-list b/doc/package-list new file mode 100644 index 0000000..dc1b920 --- /dev/null +++ b/doc/package-list @@ -0,0 +1 @@ +sarsoo.fmframework.fm diff --git a/doc/sarsoo/fmframework/fm/FmNetwork.html b/doc/sarsoo/fmframework/fm/FmNetwork.html new file mode 100644 index 0000000..5646cfe --- /dev/null +++ b/doc/sarsoo/fmframework/fm/FmNetwork.html @@ -0,0 +1,447 @@ + + + + + +FmNetwork + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + + +
+
sarsoo.fmframework.fm
+

Class FmNetwork

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/FmUserNetwork.TaggingType.html b/doc/sarsoo/fmframework/fm/FmUserNetwork.TaggingType.html new file mode 100644 index 0000000..3497768 --- /dev/null +++ b/doc/sarsoo/fmframework/fm/FmUserNetwork.TaggingType.html @@ -0,0 +1,355 @@ + + + + + +FmUserNetwork.TaggingType + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + + +
+
sarsoo.fmframework.fm
+

Enum FmUserNetwork.TaggingType

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/FmUserNetwork.html b/doc/sarsoo/fmframework/fm/FmUserNetwork.html new file mode 100644 index 0000000..c5a45dc --- /dev/null +++ b/doc/sarsoo/fmframework/fm/FmUserNetwork.html @@ -0,0 +1,547 @@ + + + + + +FmUserNetwork + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + + +
+
sarsoo.fmframework.fm
+

Class FmUserNetwork

+
+
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/class-use/FmNetwork.html b/doc/sarsoo/fmframework/fm/class-use/FmNetwork.html new file mode 100644 index 0000000..6479837 --- /dev/null +++ b/doc/sarsoo/fmframework/fm/class-use/FmNetwork.html @@ -0,0 +1,147 @@ + + + + + +Uses of Class sarsoo.fmframework.fm.FmNetwork + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Uses of Class
sarsoo.fmframework.fm.FmNetwork

+
+
+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.TaggingType.html b/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.TaggingType.html new file mode 100644 index 0000000..0296b9a --- /dev/null +++ b/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.TaggingType.html @@ -0,0 +1,156 @@ + + + + + +Uses of Class sarsoo.fmframework.fm.FmUserNetwork.TaggingType + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Uses of Class
sarsoo.fmframework.fm.FmUserNetwork.TaggingType

+
+
+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.html b/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.html new file mode 100644 index 0000000..ca3dadb --- /dev/null +++ b/doc/sarsoo/fmframework/fm/class-use/FmUserNetwork.html @@ -0,0 +1,122 @@ + + + + + +Uses of Class sarsoo.fmframework.fm.FmUserNetwork + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Uses of Class
sarsoo.fmframework.fm.FmUserNetwork

+
+
No usage of sarsoo.fmframework.fm.FmUserNetwork
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/package-frame.html b/doc/sarsoo/fmframework/fm/package-frame.html new file mode 100644 index 0000000..b17337a --- /dev/null +++ b/doc/sarsoo/fmframework/fm/package-frame.html @@ -0,0 +1,25 @@ + + + + + +sarsoo.fmframework.fm + + + + + +

sarsoo.fmframework.fm

+
+

Classes

+ +

Enums

+ +
+ + diff --git a/doc/sarsoo/fmframework/fm/package-summary.html b/doc/sarsoo/fmframework/fm/package-summary.html new file mode 100644 index 0000000..9c315ff --- /dev/null +++ b/doc/sarsoo/fmframework/fm/package-summary.html @@ -0,0 +1,159 @@ + + + + + +sarsoo.fmframework.fm + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Package sarsoo.fmframework.fm

+
+
+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/package-tree.html b/doc/sarsoo/fmframework/fm/package-tree.html new file mode 100644 index 0000000..350c130 --- /dev/null +++ b/doc/sarsoo/fmframework/fm/package-tree.html @@ -0,0 +1,147 @@ + + + + + +sarsoo.fmframework.fm Class Hierarchy + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Hierarchy For Package sarsoo.fmframework.fm

+
+
+

Class Hierarchy

+ +

Enum Hierarchy

+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/sarsoo/fmframework/fm/package-use.html b/doc/sarsoo/fmframework/fm/package-use.html new file mode 100644 index 0000000..ee8d71e --- /dev/null +++ b/doc/sarsoo/fmframework/fm/package-use.html @@ -0,0 +1,146 @@ + + + + + +Uses of Package sarsoo.fmframework.fm + + + + + + + + +
+ + +
Skip navigation links
+ + + + +
+ + +
+

Uses of Package
sarsoo.fmframework.fm

+
+
+ +
+ +
+ + +
Skip navigation links
+ + + + +
+ + + + diff --git a/doc/script.js b/doc/script.js new file mode 100644 index 0000000..b346356 --- /dev/null +++ b/doc/script.js @@ -0,0 +1,30 @@ +function show(type) +{ + count = 0; + for (var key in methods) { + var row = document.getElementById(key); + if ((methods[key] & type) != 0) { + row.style.display = ''; + row.className = (count++ % 2) ? rowColor : altColor; + } + else + row.style.display = 'none'; + } + updateTabs(type); +} + +function updateTabs(type) +{ + for (var value in tabs) { + var sNode = document.getElementById(tabs[value][0]); + var spanNode = sNode.firstChild; + if (value == type) { + sNode.className = activeTableTab; + spanNode.innerHTML = tabs[value][1]; + } + else { + sNode.className = tableTab; + spanNode.innerHTML = "" + tabs[value][1] + ""; + } + } +} diff --git a/doc/stylesheet.css b/doc/stylesheet.css new file mode 100644 index 0000000..98055b2 --- /dev/null +++ b/doc/stylesheet.css @@ -0,0 +1,574 @@ +/* Javadoc style sheet */ +/* +Overall document style +*/ + +@import url('resources/fonts/dejavu.css'); + +body { + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a:hover, a:focus { + text-decoration:none; + color:#bb7a2a; +} +a:active { + text-decoration:none; + color:#4A6782; +} +a[name] { + color:#353833; +} +a[name]:hover { + text-decoration:none; + color:#353833; +} +pre { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; +} +h1 { + font-size:20px; +} +h2 { + font-size:18px; +} +h3 { + font-size:16px; + font-style:italic; +} +h4 { + font-size:13px; +} +h5 { + font-size:12px; +} +h6 { + font-size:11px; +} +ul { + list-style-type:disc; +} +code, tt { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; +} +dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; +} +table tr td dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; +} +sup { + font-size:8px; +} +/* +Document title and Copyright styles +*/ +.clear { + clear:both; + height:0px; + overflow:hidden; +} +.aboutLanguage { + float:right; + padding:0px 21px; + font-size:11px; + z-index:200; + margin-top:-9px; +} +.legalCopy { + margin-left:.5em; +} +.bar a, .bar a:link, .bar a:visited, .bar a:active { + color:#FFFFFF; + text-decoration:none; +} +.bar a:hover, .bar a:focus { + color:#bb7a2a; +} +.tab { + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; +} +/* +Navigation bar styles +*/ +.bar { + background-color:#4D7A97; + color:#FFFFFF; + padding:.8em .5em .4em .8em; + height:auto;/*height:1.8em;*/ + font-size:11px; + margin:0; +} +.topNav { + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.bottomNav { + margin-top:10px; + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.subNav { + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; +} +.subNav div { + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; +} +ul.navList, ul.subNavList { + float:left; + margin:0 25px 0 0; + padding:0; +} +ul.navList li{ + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; +} +ul.subNavList li{ + list-style:none; + float:left; +} +.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; +} +.topNav a:hover, .bottomNav a:hover { + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; +} +.navBarCell1Rev { + background-color:#F8981D; + color:#253441; + margin: auto 5px; +} +.skipNav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; +} +/* +Page header and footer styles +*/ +.header, .footer { + clear:both; + margin:0 20px; + padding:5px 0 0 0; +} +.indexHeader { + margin:10px; + position:relative; +} +.indexHeader span{ + margin-right:15px; +} +.indexHeader h1 { + font-size:13px; +} +.title { + color:#2c4557; + margin:10px 0; +} +.subTitle { + margin:5px 0 0 0; +} +.header ul { + margin:0 0 15px 0; + padding:0; +} +.footer ul { + margin:20px 0 5px 0; +} +.header ul li, .footer ul li { + list-style:none; + font-size:13px; +} +/* +Heading styles +*/ +div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +ul.blockList ul.blockList ul.blockList li.blockList h3 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +ul.blockList ul.blockList li.blockList h3 { + padding:0; + margin:15px 0; +} +ul.blockList li.blockList h2 { + padding:0px 0 20px 0; +} +/* +Page layout container styles +*/ +.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { + clear:both; + padding:10px 20px; + position:relative; +} +.indexContainer { + margin:10px; + position:relative; + font-size:12px; +} +.indexContainer h2 { + font-size:13px; + padding:0 0 3px 0; +} +.indexContainer ul { + margin:0; + padding:0; +} +.indexContainer ul li { + list-style:none; + padding-top:2px; +} +.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; +} +.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { + margin:5px 0 10px 0px; + font-size:14px; + font-family:'DejaVu Sans Mono',monospace; +} +.serializedFormContainer dl.nameValue dt { + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; +} +.serializedFormContainer dl.nameValue dd { + margin:0 0 0 1px; + font-size:1.1em; + display:inline; +} +/* +List styles +*/ +ul.horizontal li { + display:inline; + font-size:0.9em; +} +ul.inheritance { + margin:0; + padding:0; +} +ul.inheritance li { + display:inline; + list-style:none; +} +ul.inheritance li ul.inheritance { + margin-left:15px; + padding-left:15px; + padding-top:1px; +} +ul.blockList, ul.blockListLast { + margin:10px 0 10px 0; + padding:0; +} +ul.blockList li.blockList, ul.blockListLast li.blockList { + list-style:none; + margin-bottom:15px; + line-height:1.4; +} +ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { + padding:0px 20px 5px 10px; + border:1px solid #ededed; + background-color:#f8f8f8; +} +ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; +} +ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { + margin-left:0; + padding-left:0; + padding-bottom:15px; + border:none; +} +ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { + list-style:none; + border-bottom:none; + padding-bottom:0; +} +table tr td dl, table tr td dl dt, table tr td dl dd { + margin-top:0; + margin-bottom:1px; +} +/* +Table styles +*/ +.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { + width:100%; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; +} +.overviewSummary, .memberSummary { + padding:0px; +} +.overviewSummary caption, .memberSummary caption, .typeSummary caption, +.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0px; + padding-top:10px; + padding-left:1px; + margin:0px; + white-space:pre; +} +.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, +.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, +.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, +.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, +.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, +.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, +.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, +.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { + color:#FFFFFF; +} +.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, +.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; +} +.memberSummary caption span.activeTableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#F8981D; + height:16px; +} +.memberSummary caption span.tableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#4D7A97; + height:16px; +} +.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { + padding-top:0px; + padding-left:0px; + padding-right:0px; + background-image:none; + float:none; + display:inline; +} +.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, +.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { + display:none; + width:5px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .activeTableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .tableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + background-color:#4D7A97; + float:left; + +} +.overviewSummary td, .memberSummary td, .typeSummary td, +.useSummary td, .constantsSummary td, .deprecatedSummary td { + text-align:left; + padding:0px 0px 12px 10px; +} +th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, +td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ + vertical-align:top; + padding-right:0px; + padding-top:8px; + padding-bottom:3px; +} +th.colFirst, th.colLast, th.colOne, .constantsSummary th { + background:#dee3e9; + text-align:left; + padding:8px 3px 3px 7px; +} +td.colFirst, th.colFirst { + white-space:nowrap; + font-size:13px; +} +td.colLast, th.colLast { + font-size:13px; +} +td.colOne, th.colOne { + font-size:13px; +} +.overviewSummary td.colFirst, .overviewSummary th.colFirst, +.useSummary td.colFirst, .useSummary th.colFirst, +.overviewSummary td.colOne, .overviewSummary th.colOne, +.memberSummary td.colFirst, .memberSummary th.colFirst, +.memberSummary td.colOne, .memberSummary th.colOne, +.typeSummary td.colFirst{ + width:25%; + vertical-align:top; +} +td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { + font-weight:bold; +} +.tableSubHeadingColor { + background-color:#EEEEFF; +} +.altColor { + background-color:#FFFFFF; +} +.rowColor { + background-color:#EEEEEF; +} +/* +Content styles +*/ +.description pre { + margin-top:0; +} +.deprecatedContent { + margin:0; + padding:10px 0; +} +.docSummary { + padding:0; +} + +ul.blockList ul.blockList ul.blockList li.blockList h3 { + font-style:normal; +} + +div.block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} + +td.colLast div { + padding-top:0px; +} + + +td.colLast a { + padding-bottom:3px; +} +/* +Formatting effect styles +*/ +.sourceLineNo { + color:green; + padding:0 30px 0 0; +} +h1.hidden { + visibility:hidden; + overflow:hidden; + font-size:10px; +} +.block { + display:block; + margin:3px 10px 2px 0px; + color:#474747; +} +.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, +.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, +.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { + font-weight:bold; +} +.deprecationComment, .emphasizedPhrase, .interfaceName { + font-style:italic; +} + +div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, +div.block div.block span.interfaceName { + font-style:normal; +} + +div.contentContainer ul.blockList li.blockList h2{ + padding-bottom:0px; +} diff --git a/src/main/java/sarsoo/fmframework/fm/FmNetwork.java b/src/main/java/sarsoo/fmframework/fm/FmNetwork.java index 7759aa3..f353314 100644 --- a/src/main/java/sarsoo/fmframework/fm/FmNetwork.java +++ b/src/main/java/sarsoo/fmframework/fm/FmNetwork.java @@ -24,6 +24,11 @@ public class FmNetwork { protected String key; protected String userName; + /** + * FmNetwork for raw and user independent Last.FM information + * + * @param key Last.FM API Key + */ public FmNetwork(String key) { this.key = key; } @@ -33,19 +38,14 @@ public class FmNetwork { this.key = key; this.userName = userName; } - - public void setUserName(String userName) { - this.userName = userName; - } - - public String getUserName() { - return userName; - } - - public void clearUser() { - this.userName = null; - } - + + /** + * Get an album from Last.FM + * + * @param name Album Name + * @param artist Artist Name + * @return Album + */ public Album getAlbum(String name, String artist) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getAlbum: " + name + " " + artist); @@ -162,7 +162,12 @@ public class FmNetwork { return null; } - + + /** + * Get an artist from Last.FM + * @param name Artist Name + * @return Artist + */ public Artist getArtist(String name) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getArtist: " + name); @@ -277,7 +282,14 @@ public class FmNetwork { return null; } - + + /** + * Get a track from Last.FM + * + * @param name Track Name + * @param artist Artist Name + * @return Track + */ public Track getTrack(String name, String artist) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getTrack: " + name + " " + artist); @@ -393,6 +405,12 @@ public class FmNetwork { return null; } + /** + * Exchanges album object for stat-updated album from Last.FM + * + * @param album Old Album Object + * @return Refreshed Album + */ public Album refresh(Album album) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>refreshAlbum: " + album.getName() + " " + album.getArtist().getName()); @@ -400,6 +418,12 @@ public class FmNetwork { return getAlbum(album.getName(), album.getArtist().getName()); } + /** + * Exchanges artist object for stat-updated artist from Last.FM + * + * @param artist Old Artist Object + * @return Refreshed Artist + */ public Artist refresh(Artist artist) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>refreshArtist: " + artist.getName()); @@ -407,6 +431,12 @@ public class FmNetwork { return getArtist(artist.getName()); } + /** + * Exchanges track object for stat-updated track from Last.FM + * + * @param track Old Track Object + * @return Refreshed Track + */ public Track refresh(Track track) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>refreshTrack: " + track.getName() + " " + track.getArtist().getName()); @@ -418,6 +448,13 @@ public class FmNetwork { return refreshedTrack; } + /** + * Catch-all refresh method to update an FMObj + * by routing based on object class + * + * @param obj FMObj for refreshing + * @return Updated FMObj + */ public FMObj refresh(FMObj obj) { if (obj.getClass() == Track.class) return refresh((Track) obj); diff --git a/src/main/java/sarsoo/fmframework/fm/FmUserNetwork.java b/src/main/java/sarsoo/fmframework/fm/FmUserNetwork.java index 7d40443..709a4e7 100644 --- a/src/main/java/sarsoo/fmframework/fm/FmUserNetwork.java +++ b/src/main/java/sarsoo/fmframework/fm/FmUserNetwork.java @@ -24,12 +24,48 @@ public class FmUserNetwork extends FmNetwork { ARTIST, ALBUM, TRACK } + /** + * FmNetwork for user specific Last.FM information + * + * @param key Last.FM API Key + * @param userName Last.FM username + */ public FmUserNetwork(String key, String userName) { // super(key, userName); super(key); this.userName = userName; } + + /** + * Set network's Last.FM username + * + * @param userName Last.FM username + */ + public void setUserName(String userName) { + this.userName = userName; + } + /** + * Return network's Last.FM username + * + * @return Last.FM username + */ + public String getUserName() { + return userName; + } + + /** + * Clears username from network + */ + public void clearUser() { + this.userName = null; + } + + /** + * Return user object from Last.FM + * + * @return User + */ public User getUser() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getUser"); @@ -63,6 +99,11 @@ public class FmUserNetwork extends FmNetwork { return null; } + /** + * Return user real name + * + * @return User real name + */ public String getUserRealName() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getUserRealname"); @@ -70,6 +111,11 @@ public class FmUserNetwork extends FmNetwork { return getUser().getRealName(); } + /** + * Return user's total scrobble count + * + * @return Total scrobble count + */ public int getUserScrobbleCount() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getUserScrobbleCount"); @@ -77,6 +123,11 @@ public class FmUserNetwork extends FmNetwork { return getUser().getScrobbleCount(); } + /** + * Returns last or currently listening track + * + * @return Last track + */ public Track getLastTrack() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getLastTrack"); @@ -115,6 +166,11 @@ public class FmUserNetwork extends FmNetwork { return null; } + /** + * Return scrobble count from today + * + * @return Scrobble count today + */ public int getScrobblesToday() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getScrobblesToday"); @@ -153,6 +209,14 @@ public class FmUserNetwork extends FmNetwork { return 0; } + /** + * Return scrobble count by date + * + * @param day Day int + * @param month Month int + * @param year Year int + * @return Scrobble count + */ public int getScrobbleCountByDate(int day, int month, int year) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getScrobblesByDate " + day + "." + month + "." + year); @@ -194,6 +258,13 @@ public class FmUserNetwork extends FmNetwork { return 0; } + /** + * Returns scrobble count of day + * by today - {int day} + * + * @param day Negative day offset + * @return Scrobble count + */ public int getScrobbleCountByDeltaDay(int day) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getScrobblesByDeltaDay " + day); @@ -235,6 +306,11 @@ public class FmUserNetwork extends FmNetwork { return 0; } + /** + * Returns list of user tags + * + * @return List of tags + */ public ArrayList getTags() { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getTags"); @@ -283,6 +359,12 @@ public class FmUserNetwork extends FmNetwork { } + /** + * Returns FMObjList of tagged artists + * + * @param tagName Tag to explore + * @return FMObjList of artists + */ public FMObjList getTag(String tagName) { if (ConsoleHandler.isVerbose()) ConsoleHandler.getConsole().write(">>getTag: " + tagName);