// Path: wechat-mp-sdk/src/main/java/org/usc/wechat/mp/sdk/vo/message/reply/MusicReply.java
// @XmlRootElement(name = "xml")
// @XmlAccessorType(XmlAccessType.FIELD)
// public class MusicReply extends Reply {
//     @XmlElement(name = "Music")
//     private MusicDetail musicDetail;
// 
//     {
//         super.setMsgType(ReplyEnumFactory.MUSIC.getReplyType());
//     }
// 
//     public MusicReply() {
//     }
// 
//     public MusicReply(MusicDetail musicDetail) {
//         this.musicDetail = musicDetail;
//     }
// 
//     public MusicDetail getMusicDetail() {
//         return musicDetail;
//     }
// 
//     public void setMusicDetail(MusicDetail musicDetail) {
//         this.musicDetail = musicDetail;
//     }
// 
// }
// 
// Path: wechat-mp-sdk/src/main/java/org/usc/wechat/mp/sdk/vo/message/reply/detail/MusicDetail.java
// @XmlAccessorType(XmlAccessType.FIELD)
// public class MusicDetail extends AbstractToStringBuilder {
//     @XmlElement(name = "Title")
//     private String title;
// 
//     @XmlElement(name = "Description")
//     private String description;
// 
//     @XmlElement(name = "MusicUrl")
//     private String musicUrl;
// 
//     @XmlElement(name = "HQMusicUrl")
//     private String hqMusicUrl;
// 
//     @XmlElement(name = "ThumbMediaId")
//     private String thumbMediaId;
// 
//     public MusicDetail() {
//     }
// 
//     public MusicDetail(String thumbMediaId) {
//         this.thumbMediaId = thumbMediaId;
//     }
// 
//     public MusicDetail(String title, String description, String musicUrl, String hqMusicUrl, String thumbMediaId) {
//         this.title = title;
//         this.description = description;
//         this.musicUrl = musicUrl;
//         this.hqMusicUrl = hqMusicUrl;
//         this.thumbMediaId = thumbMediaId;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public String getMusicUrl() {
//         return musicUrl;
//     }
// 
//     public void setMusicUrl(String musicUrl) {
//         this.musicUrl = musicUrl;
//     }
// 
//     public String getHqMusicUrl() {
//         return hqMusicUrl;
//     }
// 
//     public void setHqMusicUrl(String hqMusicUrl) {
//         this.hqMusicUrl = hqMusicUrl;
//     }
// 
//     public String getThumbMediaId() {
//         return thumbMediaId;
//     }
// 
//     public void setThumbMediaId(String thumbMediaId) {
//         this.thumbMediaId = thumbMediaId;
//     }
// 
// }


import java.util.List;
import org.usc.wechat.mp.sdk.vo.ReplyDetail;
import org.usc.wechat.mp.sdk.vo.message.reply.MusicReply;
import org.usc.wechat.mp.sdk.vo.message.reply.Reply;
import org.usc.wechat.mp.sdk.vo.message.reply.detail.MusicDetail;
package org.usc.wechat.mp.sdk.factory.builder;



/**
 *
 * @author Shunli
 */
public class MusicReplyBuilder implements ReplyBuilder {
    @Override
    public Reply buildReply(List<ReplyDetail> replyDetails) {
        ReplyDetail detail = replyDetails.get(0);

// Path: wechat-mp-sdk/src/main/java/org/usc/wechat/mp/sdk/vo/message/reply/MusicReply.java
// @XmlRootElement(name = "xml")
// @XmlAccessorType(XmlAccessType.FIELD)
// public class MusicReply extends Reply {
//     @XmlElement(name = "Music")
//     private MusicDetail musicDetail;
// 
//     {
//         super.setMsgType(ReplyEnumFactory.MUSIC.getReplyType());
//     }
// 
//     public MusicReply() {
//     }
// 
//     public MusicReply(MusicDetail musicDetail) {
//         this.musicDetail = musicDetail;
//     }
// 
//     public MusicDetail getMusicDetail() {
//         return musicDetail;
//     }
// 
//     public void setMusicDetail(MusicDetail musicDetail) {
//         this.musicDetail = musicDetail;
//     }
// 
// }
// 
// Path: wechat-mp-sdk/src/main/java/org/usc/wechat/mp/sdk/vo/message/reply/detail/MusicDetail.java
// @XmlAccessorType(XmlAccessType.FIELD)
// public class MusicDetail extends AbstractToStringBuilder {
//     @XmlElement(name = "Title")
//     private String title;
// 
//     @XmlElement(name = "Description")
//     private String description;
// 
//     @XmlElement(name = "MusicUrl")
//     private String musicUrl;
// 
//     @XmlElement(name = "HQMusicUrl")
//     private String hqMusicUrl;
// 
//     @XmlElement(name = "ThumbMediaId")
//     private String thumbMediaId;
// 
//     public MusicDetail() {
//     }
// 
//     public MusicDetail(String thumbMediaId) {
//         this.thumbMediaId = thumbMediaId;
//     }
// 
//     public MusicDetail(String title, String description, String musicUrl, String hqMusicUrl, String thumbMediaId) {
//         this.title = title;
//         this.description = description;
//         this.musicUrl = musicUrl;
//         this.hqMusicUrl = hqMusicUrl;
//         this.thumbMediaId = thumbMediaId;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public String getMusicUrl() {
//         return musicUrl;
//     }
// 
//     public void setMusicUrl(String musicUrl) {
//         this.musicUrl = musicUrl;
//     }
// 
//     public String getHqMusicUrl() {
//         return hqMusicUrl;
//     }
// 
//     public void setHqMusicUrl(String hqMusicUrl) {
//         this.hqMusicUrl = hqMusicUrl;
//     }
// 
//     public String getThumbMediaId() {
//         return thumbMediaId;
//     }
// 
//     public void setThumbMediaId(String thumbMediaId) {
//         this.thumbMediaId = thumbMediaId;
//     }
// 
// }


// Path: wechat-mp-sdk/src/main/java/org/usc/wechat/mp/sdk/factory/builder/MusicReplyBuilder.java
import java.util.List;
import org.usc.wechat.mp.sdk.vo.ReplyDetail;
import org.usc.wechat.mp.sdk.vo.message.reply.MusicReply;
import org.usc.wechat.mp.sdk.vo.message.reply.Reply;
import org.usc.wechat.mp.sdk.vo.message.reply.detail.MusicDetail;

package org.usc.wechat.mp.sdk.factory.builder;



/**
 *
 * @author Shunli
 */
public class MusicReplyBuilder implements ReplyBuilder {
    @Override
    public Reply buildReply(List<ReplyDetail> replyDetails) {
        ReplyDetail detail = replyDetails.get(0);

        MusicDetail musicDetail = new MusicDetail(