package com.ved.musicmapapp.providers;
import java.util.ArrayList;
import java.util.List;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import com.ved.musicmapapp.Objects.Artist;
import com.ved.musicmapapp.Objects.Genre;
import com.ved.musicmapapp.Objects.Song;
import com.ved.musicmapapp.Objects.User;
import com.ved.musicmapapp.adapters.DBAdapter;
import com.ved.musicmapapp.utils.Statics;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.util.Log;
import android.widget.Toast;
public class SaveDataTask extends AsyncTask<Void, Void, Void> {
private SharedPreferences mSharedPreference;
private List<User> users;
private Context context;
public SaveDataTask(Context context) {
Log.i("check","In SaveDataTask");
mSharedPreference = context.getSharedPreferences("MUSIC_MAP",
Context.MODE_PRIVATE);
this.context = context;
this.users = new ArrayList<User>();
}
@Override
protected Void doInBackground(Void... params) {
Log.d("Men", "save2");
if (Statics.hashUsers != null)
for (String key : Statics.hashUsers.keySet()) {
if (Statics.hashUsers.get(key) != null)
users.add(Statics.hashUsers.get(key));
}
saveData();
return null;
}
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
}
private void saveData() {
if (users.size() > 0) {
for (User user : users) {
// if (Statics.curUser != null && user.getFbid() ==
// Statics.curUser.getFbid()) {
DBAdapter adapter = new DBAdapter(context);
adapter.addUser(user);
if (Statics.curUser != null
&& user.getFbid() == Statics.curUser.getFbid()) {
// Remove All Data
if (user.getArtists() != null
&& user.getArtists().size() > 0) {
adapter.removeAllArtistAndSongByUser(user);
}
if (user.getArtists() != null) {
ArrayList<Song> songs = new ArrayList<Song>();
for (Artist artist : user.getArtists()) {
adapter.addArtist(artist, user);
songs.addAll(artist.getSongs());
/*
* for (Song song : artist.getSongs()) {
* //adapter.addSong(song, artist, user.getID());
* songs.add(song); }
*/
}
ArrayList<Genre> genres = new ArrayList<Genre>();
for (Artist artist : user.getArtists()) {
genres.addAll(artist.getGenre());
}
adapter.addGenre(genres,user.getID());
adapter.AddSongArrs(songs);
}
}
// }
}
// mSharedPreference.edit()
// .putString("LAST_DATA", jsonArray.toString()).commit();
}
}
}