source: main/trunk/model-sites-dev/mars/collect/amc-essentia/prepare/src/MusicRecord.java@ 34365

Last change on this file since 34365 was 34365, checked in by davidb, 4 years ago

New location for the code to page-scrape/download AMC content. Previously in its own 'other projects' mars-music-recommender project on SVN

  • Property svn:executable set to *
File size: 1.9 KB
Line 
1
2import java.io.*;
3import java.net.*;
4import java.nio.*;
5import java.nio.channels.*;
6import java.nio.file.*;
7import java.util.*;
8
9import org.json.simple.JSONArray;
10import org.json.simple.JSONObject;
11
12class MusicRecord {
13 private String track_url_;
14 private String title_;
15 private String artist_;
16 private String year_;
17 private String audio_url_;
18
19 public MusicRecord(String track_url,String title, String artist, String year, String audio_url) {
20 track_url_ = track_url;
21 title_ = title;
22 artist_ = artist;
23 year_ = (year.matches("^\\s*$")) ? null : year;
24 audio_url_ = audio_url;
25 }
26
27 public String getAudioURL() {
28 return audio_url_;
29 }
30
31 public String toString()
32 {
33
34 return String.format("[title=%s, artist=%s, year=%s; track_url=%s, audio_url=%s]",
35 title_,artist_,year_, track_url_, audio_url_);
36 }
37
38 public JSONObject toJSON()
39 {
40 JSONObject obj = new JSONObject();
41
42 boolean object_is_all_null = true;
43
44 if (title_ != null) {
45 obj.put("title",title_);
46 object_is_all_null = false;
47 }
48
49 if (artist_ != null) {
50 obj.put("artist",artist_);
51 object_is_all_null = false;
52 }
53
54 if (year_ != null) {
55 obj.put("year",year_);
56 object_is_all_null = false;
57 }
58
59 if (track_url_ != null) {
60 obj.put("track_url",track_url_);
61 object_is_all_null = false;
62 }
63
64 if (audio_url_ != null) {
65 obj.put("audio_url",audio_url_);
66 object_is_all_null = false;
67 }
68
69 if (object_is_all_null) {
70 System.err.println("Warning: MusicRecord '" + this + "' only has null values in it");
71 }
72
73 return obj;
74 }
75
76 public String toJSONString()
77 {
78 String jsonText = null;
79 JSONObject obj = toJSON();
80
81 try {
82 StringWriter out = new StringWriter();
83 obj.writeJSONString(out);
84
85 jsonText = out.toString();
86 }
87 catch (IOException ioe) {
88 ioe.printStackTrace();
89 }
90
91 return jsonText;
92 }
93
94
95}
96
Note: See TracBrowser for help on using the repository browser.