// Path: 5 - After AppMsg/app/src/main/java/pt/forkit/androidlx_2014/domain/Track.java
// public class Track {
// 
//     @SerializedName("id")
//     private int trackId;
// 
//     @SerializedName("title")
//     private String title;
// 
//     @SerializedName("sharing")
//     private String sharing;
// 
//     @SerializedName("artwork_url")
//     private String artworkUrl;
// 
//     @SerializedName("duration")
//     private long duration;
// 
//     @SerializedName("genre")
//     private String genre;
// 
//     @SerializedName("streamable")
//     private boolean streamable;
// 
//     @SerializedName("downloadable")
//     private boolean downloadable;
// 
//     @SerializedName("download_url")
//     private String downloadUrl;
// 
//     @SerializedName("stream_url")
//     private String streamUrl;
// 
//     @SerializedName("original_content_size")
//     private long originalContentSize;
// 
//     private String localPath;
// 
//     public Track() {
//     }
// 
//     public int getTrackId() {
//         return trackId;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public String getSharing() {
//         return sharing;
//     }
// 
//     public String getArtworkUrl() {
//         return artworkUrl;
//     }
// 
//     public long getDuration() {
//         return duration;
//     }
// 
//     public String getGenre() {
//         return genre;
//     }
// 
//     public boolean isStreamable() {
//         return streamable;
//     }
// 
//     public boolean isDownloadable() {
//         return downloadable;
//     }
// 
//     public String getDownloadUrl() {
//         return downloadUrl + "?client_id=" + Urls.SOUNDCLOUD_CLIENT_ID;
//     }
// 
//     public long getOriginalContentSize() {
//         return originalContentSize;
//     }
// 
//     public String getLocalPath() {
//         return localPath;
//     }
// 
//     public void setLocalPath(String localPath) {
//         this.localPath = localPath;
//     }
// 
// }
// 
// Path: 8 - After EventBus/app/src/main/java/pt/forkit/androidlx_2014/ui/BaseFragment.java
// @SuppressLint("NewApi")
// public class BaseFragment extends Fragment {
// 
//     protected Mp3Api mApi;
// 
//     public BaseFragment() {
//         super();
//     }
// 
//     public void onCreate(Bundle s) {
//         super.onCreate(s);
// 
//         RestAdapter  restAdapter = new RestAdapter.Builder()
//                 .setLogLevel(RestAdapter.LogLevel.FULL)
//                 .setRequestInterceptor(new AuthorizationInterceptor())
//                 .setEndpoint("http://api.soundcloud.com")
//                 .build();
// 
//         mApi = restAdapter.create(Mp3Api.class);
// 
//     }
// 
// }
// 
// Path: 1 - After Butterknife/app/src/main/java/pt/forkit/androidlx_2014/ui/adapter/SongAdapter.java
// public class SongAdapter extends BaseAdapter {
// 
//     private final boolean showDownload;
//     private ArrayList<Track> mTracks;
//     private Context ctx;
//     LayoutInflater inflater;
// 
//     public SongAdapter(ArrayList<Track> tracks, Context ctx, boolean showDownload) {
//         this.ctx = ctx;
//         mTracks = new ArrayList<Track>();
// 
//         this.inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//         this.showDownload = showDownload;
//     }
// 
//     @Override
//     public int getCount() {
//         return mTracks.size();
//     }
// 
//     @Override
//     public Track getItem(int i) {
//         return mTracks.get(i);
//     }
// 
//     @Override
//     public long getItemId(int i) {
//         return 0;
//     }
// 
//     @Override
//     public View getView(int i, View view, ViewGroup viewGroup) {
// 
//         ViewHolder holder;
//         if (view != null) {
//             holder = (ViewHolder) view.getTag();
//         } else {
//             view = inflater.inflate(R.layout.grid_item_song, null, false);
//             holder = new ViewHolder(view);
//             view.setTag(holder);
//         }
// 
//         final Track t = getItem(i);
// 
//         if(showDownload){
// 
//         } else {
//             holder.tv_label_download.setText(ctx.getString(R.string.play_song));
//         }
// 
//         return view;
//     }
// 
//     static class ViewHolder {
//         @InjectView(R.id.tv_title) TextView tv_title;
//         @InjectView(R.id.iv_artwork) ImageView iv_artwork;
//         @InjectView(R.id.tv_label_download) TextView tv_label_download;
// 
//         public ViewHolder(View view) {
//             ButterKnife.inject(this, view);
//         }
//     }
// 
// }


import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.GridView;
import butterknife.ButterKnife;
import butterknife.InjectView;
import butterknife.OnItemClick;
import pt.forkit.androidlx_2014.R;
import pt.forkit.androidlx_2014.domain.Track;
import pt.forkit.androidlx_2014.ui.BaseFragment;
import pt.forkit.androidlx_2014.ui.adapter.SongAdapter;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
package pt.forkit.androidlx_2014.ui.fragment;



public class MyTracksFragment extends BaseFragment {

    @InjectView(R.id.gv_songs)
    GridView mGvSongs;

    private List<Track> mTracks;

    @OnItemClick(R.id.gv_songs)
    public void onTrackClick(int position){
        Track t = (Track) mGvSongs.getItemAtPosition(position);
        Intent intent = new Intent();
        intent.setAction(android.content.Intent.ACTION_VIEW);
        File file = new File(t.getLocalPath());
        intent.setDataAndType(Uri.fromFile(file), "audio/*");
// Path: 5 - After AppMsg/app/src/main/java/pt/forkit/androidlx_2014/domain/Track.java
// public class Track {
// 
//     @SerializedName("id")
//     private int trackId;
// 
//     @SerializedName("title")
//     private String title;
// 
//     @SerializedName("sharing")
//     private String sharing;
// 
//     @SerializedName("artwork_url")
//     private String artworkUrl;
// 
//     @SerializedName("duration")
//     private long duration;
// 
//     @SerializedName("genre")
//     private String genre;
// 
//     @SerializedName("streamable")
//     private boolean streamable;
// 
//     @SerializedName("downloadable")
//     private boolean downloadable;
// 
//     @SerializedName("download_url")
//     private String downloadUrl;
// 
//     @SerializedName("stream_url")
//     private String streamUrl;
// 
//     @SerializedName("original_content_size")
//     private long originalContentSize;
// 
//     private String localPath;
// 
//     public Track() {
//     }
// 
//     public int getTrackId() {
//         return trackId;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public String getSharing() {
//         return sharing;
//     }
// 
//     public String getArtworkUrl() {
//         return artworkUrl;
//     }
// 
//     public long getDuration() {
//         return duration;
//     }
// 
//     public String getGenre() {
//         return genre;
//     }
// 
//     public boolean isStreamable() {
//         return streamable;
//     }
// 
//     public boolean isDownloadable() {
//         return downloadable;
//     }
// 
//     public String getDownloadUrl() {
//         return downloadUrl + "?client_id=" + Urls.SOUNDCLOUD_CLIENT_ID;
//     }
// 
//     public long getOriginalContentSize() {
//         return originalContentSize;
//     }
// 
//     public String getLocalPath() {
//         return localPath;
//     }
// 
//     public void setLocalPath(String localPath) {
//         this.localPath = localPath;
//     }
// 
// }
// 
// Path: 8 - After EventBus/app/src/main/java/pt/forkit/androidlx_2014/ui/BaseFragment.java
// @SuppressLint("NewApi")
// public class BaseFragment extends Fragment {
// 
//     protected Mp3Api mApi;
// 
//     public BaseFragment() {
//         super();
//     }
// 
//     public void onCreate(Bundle s) {
//         super.onCreate(s);
// 
//         RestAdapter  restAdapter = new RestAdapter.Builder()
//                 .setLogLevel(RestAdapter.LogLevel.FULL)
//                 .setRequestInterceptor(new AuthorizationInterceptor())
//                 .setEndpoint("http://api.soundcloud.com")
//                 .build();
// 
//         mApi = restAdapter.create(Mp3Api.class);
// 
//     }
// 
// }
// 
// Path: 1 - After Butterknife/app/src/main/java/pt/forkit/androidlx_2014/ui/adapter/SongAdapter.java
// public class SongAdapter extends BaseAdapter {
// 
//     private final boolean showDownload;
//     private ArrayList<Track> mTracks;
//     private Context ctx;
//     LayoutInflater inflater;
// 
//     public SongAdapter(ArrayList<Track> tracks, Context ctx, boolean showDownload) {
//         this.ctx = ctx;
//         mTracks = new ArrayList<Track>();
// 
//         this.inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//         this.showDownload = showDownload;
//     }
// 
//     @Override
//     public int getCount() {
//         return mTracks.size();
//     }
// 
//     @Override
//     public Track getItem(int i) {
//         return mTracks.get(i);
//     }
// 
//     @Override
//     public long getItemId(int i) {
//         return 0;
//     }
// 
//     @Override
//     public View getView(int i, View view, ViewGroup viewGroup) {
// 
//         ViewHolder holder;
//         if (view != null) {
//             holder = (ViewHolder) view.getTag();
//         } else {
//             view = inflater.inflate(R.layout.grid_item_song, null, false);
//             holder = new ViewHolder(view);
//             view.setTag(holder);
//         }
// 
//         final Track t = getItem(i);
// 
//         if(showDownload){
// 
//         } else {
//             holder.tv_label_download.setText(ctx.getString(R.string.play_song));
//         }
// 
//         return view;
//     }
// 
//     static class ViewHolder {
//         @InjectView(R.id.tv_title) TextView tv_title;
//         @InjectView(R.id.iv_artwork) ImageView iv_artwork;
//         @InjectView(R.id.tv_label_download) TextView tv_label_download;
// 
//         public ViewHolder(View view) {
//             ButterKnife.inject(this, view);
//         }
//     }
// 
// }


// Path: 8 - After EventBus/app/src/main/java/pt/forkit/androidlx_2014/ui/fragment/MyTracksFragment.java
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.GridView;
import butterknife.ButterKnife;
import butterknife.InjectView;
import butterknife.OnItemClick;
import pt.forkit.androidlx_2014.R;
import pt.forkit.androidlx_2014.domain.Track;
import pt.forkit.androidlx_2014.ui.BaseFragment;
import pt.forkit.androidlx_2014.ui.adapter.SongAdapter;
import java.io.File;
import java.util.ArrayList;
import java.util.List;

package pt.forkit.androidlx_2014.ui.fragment;



public class MyTracksFragment extends BaseFragment {

    @InjectView(R.id.gv_songs)
    GridView mGvSongs;

    private List<Track> mTracks;

    @OnItemClick(R.id.gv_songs)
    public void onTrackClick(int position){
        Track t = (Track) mGvSongs.getItemAtPosition(position);
        Intent intent = new Intent();
        intent.setAction(android.content.Intent.ACTION_VIEW);
        File file = new File(t.getLocalPath());
        intent.setDataAndType(Uri.fromFile(file), "audio/*");
        startActivity(intent);