package com.kitty.poclient.domain; import java.lang.ref.SoftReference; import android.graphics.Bitmap; import com.kitty.poclient.common.Constant; /** * @ClassName:Music * @Description: 单曲模型 * @author xuzuyi * @date 2013-7-12 上午10:19:34 */ public class Music { private Long Id; private String name; private String artistId; private String artistName; private long diskId; private String mediaurl; private String firstChar; private String play_time; private String cacheState; private String imgUrl; private String albumId; private String albumName; private String diskName; private String disk_no; private Long libid; private int iscloud = -1;//5本地,0云端 private SoftReference<Bitmap> srCoverBitmap; public int getIscloud() { return iscloud; } public void setIscloud(int iscloud) { this.iscloud = iscloud; } private String price="";// 单曲价格 private String purchaseState = "未购买";// 交易状态:"未提交" "1","未通过" "5","已提交" "10","已删除" "15","已上架" "20","已下架" "25","等待自动上架" "30","已定价" "35","已发布" "40","不单卖" "45" private boolean flag = false; private String file_size; private String track_no; private String buytime; private String uri; private int clearcachestate = 0;// 0未清除缓存,5表示清楚缓存 // 定义缓存状态 public final static String CACHE_WAIT = "1";// 正在等待缓存 public final static String CACHE_DOWNLOADING = "2";// 正在下载 public final static String CACHE_FAILURE_NOSPACE = "3";// 正在下载 public final static String CACHE_DOWNLOADED = "4";// 下载完成 public int getClearcachestate() { return clearcachestate; } public void setClearcachestate(int clearcachestate) { this.clearcachestate = clearcachestate; } public boolean isFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; } public String getDisk_no() { return disk_no; } public void setDisk_no(String disk_no) { this.disk_no = disk_no; } public Long getLibid() { return libid; } public void setLibid(Long libid) { this.libid = libid; } public String getDiskName() { return diskName; } public void setDiskName(String diskName) { this.diskName = diskName; } public String getAlbumId() { return albumId; } public void setAlbumId(String albumId) { this.albumId = albumId; } public String getImgUrl() { return imgUrl; } public void setImgUrl(String imgUrl) { this.imgUrl = imgUrl; } public String getBuytime() { return buytime; } public void setBuytime(String buytime) { this.buytime = buytime; } public String getFirstChar() { return firstChar; } public void setFirstChar(String firstChar) { this.firstChar = firstChar; } public String getPlay_time() { return play_time; } public void setPlay_time(String play_time) { this.play_time = play_time; } public String getFile_size() { return file_size; } public void setFile_size(String file_size) { this.file_size = file_size; } public String getTrack_no() { return track_no; } public void setTrack_no(String track_no) { this.track_no = track_no; } public Long getId() { return Id; } public void setId(Long id) { Id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getArtistId() { return artistId; } public void setArtistId(String artistId) { this.artistId = artistId; } public String getArtistName() { return artistName; } public void setArtistName(String artistName) { this.artistName = artistName; } public String getMediaurl() { return mediaurl; } public void setMediaurl(String mediaurl) { this.mediaurl = mediaurl; } public long getDiskId() { return diskId; } public void setDiskId(long diskId) { this.diskId = diskId; } public String getUri(int uriMode, long containerId) { // String uri="file://mnt/sdcard/xxbox/music/"+getId()+".flac"; // System.out.println("uri="+uri); // return uri; String uri = ""; switch (uriMode) { case Constant.URI_MUSIC: uri = "xxbox://music?id=" + getId(); break; case Constant.URI_ALBUM: uri = "xxbox://album?id=" + containerId + "&musicid=" + getId(); break; case Constant.URI_THEME: uri = "xxbox://theme?id=" + containerId + "&musicid=" + getId(); break; case Constant.URI_FAVORITE: uri = "xxbox://music?id=" + getId(); break; case Constant.URI_ALL: uri = "xxbox://music?id=" + getId(); break; case Constant.URI_USB: uri = "xxbox://usb?source=" + getUri(); break; case Constant.URI_CUE: uri = "xxbox://cue?source=" + getUri(); break; } return uri; } public void setUri(String uri) { this.uri = uri; } public String getUri() { return this.uri; } public String getCacheState() { return cacheState; } public void setCacheState(String cacheState) { this.cacheState = cacheState; } public String getPrice() { return price; } public void setPrice(String price) { this.price = price; } public String getPurchaseState() { return purchaseState; } public void setPurchaseState(String purchaseState) { this.purchaseState = purchaseState; } public String getAlbumName() { return albumName; } public void setAlbumName(String albumName) { this.albumName = albumName; } public void setBitmap(SoftReference<Bitmap> srBitmap) { this.srCoverBitmap = srBitmap; } public Bitmap getBitmap() { if (srCoverBitmap == null) { return Constant.albumCover; } return (srCoverBitmap.get() == null) ? Constant.albumCover : srCoverBitmap.get(); } public void recyleBitmap() { if (getBitmap() != null && !getBitmap().equals(Constant.albumCover)) { getBitmap().recycle(); } } @Override public boolean equals(Object o) { if (o == null) { return false; } if (!(o instanceof Music)) { return false; } Music m = (Music) o; if (m.getId().equals(getId())) { return true; } return false; } @Override public String toString() { // TODO Auto-generated method stub return super.toString(); } }