1 |
|
---|
2 | import java.io.*;
|
---|
3 | import java.net.*;
|
---|
4 | import java.nio.*;
|
---|
5 | import java.nio.channels.*;
|
---|
6 | import java.nio.file.*;
|
---|
7 | import java.util.*;
|
---|
8 |
|
---|
9 | import org.json.simple.JSONArray;
|
---|
10 | import org.json.simple.JSONObject;
|
---|
11 |
|
---|
12 | class 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 |
|
---|