wiki for tracks working
This commit is contained in:
parent
bf7f7dcf2d
commit
8d731f284d
@ -44,15 +44,16 @@ public class TrackView extends JFrame {
|
||||
buttons2.setLayout(new FlowLayout());
|
||||
|
||||
buttons.add(open);
|
||||
if (track.getWiki() != null)
|
||||
buttons.add(viewWiki);
|
||||
if (track.getMbid() != null)
|
||||
buttons.add(musicBrainz);
|
||||
|
||||
buttons2.add(viewArtist);
|
||||
if (track.getAlbum() != null)
|
||||
buttons2.add(viewAlbum);
|
||||
if (track.getArtist() != null)
|
||||
buttons2.add(genius);
|
||||
if (track.getWiki() != null)
|
||||
buttons2.add(viewWiki);
|
||||
// if (track.getArtist() != null)
|
||||
buttons.add(genius);
|
||||
|
||||
NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.US);
|
||||
|
||||
|
@ -6,6 +6,7 @@ import org.w3c.dom.Document;
|
||||
|
||||
import sarsoo.fmframework.gui.TrackView;
|
||||
import sarsoo.fmframework.net.Network;
|
||||
import sarsoo.fmframework.net.TestCall;
|
||||
import sarsoo.fmframework.parser.Parser;
|
||||
|
||||
public class Track extends FMObj{
|
||||
@ -29,6 +30,7 @@ public class Track extends FMObj{
|
||||
|
||||
public static Track getTrack(String name, String artist, String username) {
|
||||
String url = Network.getTrackInfoUrl(name, artist, username);
|
||||
TestCall.test(url);
|
||||
Document response = Network.getResponse(url);
|
||||
Track track = Parser.parseTrack(response);
|
||||
return track;
|
||||
|
@ -50,24 +50,36 @@ public class Parser {
|
||||
|
||||
Wiki wiki = null;
|
||||
NodeList wikiNodeList = doc.getElementsByTagName("wiki");
|
||||
if (wikiNodeList.item(0) != null) {
|
||||
String date = wikiNodeList.item(0).getFirstChild().getTextContent();
|
||||
if (wikiNodeList.getLength() != 0) {
|
||||
Node wikiNode = wikiNodeList.item(0);
|
||||
NodeList wikiContents = wikiNode.getChildNodes();
|
||||
|
||||
Node summaryNode = wikiNodeList.item(0).getFirstChild().getNextSibling();
|
||||
while (!(summaryNode instanceof Element) && summaryNode != null) {
|
||||
summaryNode = summaryNode.getNextSibling();
|
||||
String date = null;
|
||||
// String summary = null;
|
||||
String content = null;
|
||||
|
||||
int counter;
|
||||
Node node;
|
||||
for (counter = 0; counter < wikiContents.getLength(); counter++) {
|
||||
node = wikiContents.item(counter);
|
||||
|
||||
if (node.getNodeName().equals("published")) {
|
||||
System.out.println(node.getNodeName() + node.getTextContent());
|
||||
date = node.getTextContent();
|
||||
}
|
||||
// if (node.getNodeName().equals("summary")) {
|
||||
// System.out.println(node.getNodeName() + node.getTextContent());
|
||||
// summary = node.getTextContent();
|
||||
// }
|
||||
if (node.getNodeName().equals("content")) {
|
||||
System.out.println(node.getNodeName() + node.getTextContent());
|
||||
content = node.getTextContent();
|
||||
}
|
||||
}
|
||||
String summary = summaryNode.getTextContent();
|
||||
// System.out.println(summary);
|
||||
|
||||
Node contentNode = summaryNode.getNextSibling();
|
||||
while (!(contentNode instanceof Element) && contentNode != null) {
|
||||
contentNode = contentNode.getNextSibling();
|
||||
}
|
||||
String content = contentNode.getTextContent();
|
||||
// System.out.println(content);
|
||||
|
||||
wiki = new Wiki(date, summary, content);
|
||||
if (date != null && content != null)
|
||||
// System.out.println("wiki init");
|
||||
wiki = new Wiki(date, null, content);
|
||||
}
|
||||
|
||||
Album album = new Album(name, url, mbid, artistObj, listeners, playCount, userPlayCount, wiki);
|
||||
@ -198,27 +210,39 @@ public class Parser {
|
||||
|
||||
Wiki wiki = null;
|
||||
NodeList wikiNodeList = doc.getElementsByTagName("wiki");
|
||||
if (wikiNodeList.item(0) != null) {
|
||||
String date = wikiNodeList.item(0).getFirstChild().getTextContent();
|
||||
if (wikiNodeList.getLength() != 0) {
|
||||
Node wikiNode = wikiNodeList.item(0);
|
||||
NodeList wikiContents = wikiNode.getChildNodes();
|
||||
|
||||
Node summaryNode = wikiNodeList.item(0).getFirstChild().getNextSibling();
|
||||
while (!(summaryNode instanceof Element) && summaryNode != null) {
|
||||
summaryNode = summaryNode.getNextSibling();
|
||||
String date = null;
|
||||
// String summary = null;
|
||||
String content = null;
|
||||
|
||||
int counter;
|
||||
Node node;
|
||||
for (counter = 0; counter < wikiContents.getLength(); counter++) {
|
||||
node = wikiContents.item(counter);
|
||||
|
||||
if (node.getNodeName().equals("published")) {
|
||||
System.out.println(node.getNodeName() + node.getTextContent());
|
||||
date = node.getTextContent();
|
||||
}
|
||||
// if (node.getNodeName().equals("summary")) {
|
||||
// System.out.println(node.getNodeName() + node.getTextContent());
|
||||
// summary = node.getTextContent();
|
||||
// }
|
||||
if (node.getNodeName().equals("content")) {
|
||||
System.out.println(node.getNodeName() + node.getTextContent());
|
||||
content = node.getTextContent();
|
||||
}
|
||||
}
|
||||
String summary = summaryNode.getTextContent();
|
||||
// System.out.println(summary);
|
||||
|
||||
Node contentNode = summaryNode.getNextSibling();
|
||||
while (!(contentNode instanceof Element) && contentNode != null) {
|
||||
contentNode = contentNode.getNextSibling();
|
||||
}
|
||||
String content = contentNode.getTextContent();
|
||||
// System.out.println(content);
|
||||
|
||||
wiki = new Wiki(date, summary, content);
|
||||
if (date != null && content != null)
|
||||
// System.out.println("wiki init");
|
||||
wiki = new Wiki(date, null, content);
|
||||
}
|
||||
|
||||
Track track = new Track(name, url, mbid, artistObj, listeners, playCount, userPlayCount, null);
|
||||
Track track = new Track(name, url, mbid, artistObj, listeners, playCount, userPlayCount, wiki);
|
||||
return track;
|
||||
} else {
|
||||
return null;
|
||||
|
Loading…
Reference in New Issue
Block a user