Android Open Source - Teracast-Android Podcast List






From Project

Back to project page Teracast-Android.

License

The source code is released under:

Apache License

If you think the Android project Teracast-Android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.davidtpate.teracast.model;
/*from  w w w . j a v  a2s . c  o m*/
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

public class PodcastList implements Parcelable {
    public static final Type                            podcastMapType = new TypeToken<LinkedHashMap<String, Podcast>>() {}.getType();
    public static final Parcelable.Creator<PodcastList> CREATOR        = new Parcelable.Creator<PodcastList>() {
        public PodcastList createFromParcel(Parcel in) {
            return new PodcastList(in);
        }

        public PodcastList[] newArray(int size) {
            return new PodcastList[size];
        }
    };

    LinkedHashMap<String, Podcast> podcastMap;

    private PodcastList() {

    }

    public static PodcastList fromJson(String json) {
        PodcastList podcastList = new PodcastList();
        podcastList.podcastMap = new Gson().fromJson(json, podcastMapType);
        return podcastList;
    }

    private PodcastList(Parcel in) {
        Bundle bundle = in.readBundle();
        Set<String> keySet = bundle.keySet();
        for (String key : keySet) {
            if (podcastMap == null) {
                podcastMap = new LinkedHashMap<String, Podcast>();
            }

            podcastMap.put(key, bundle.<Podcast>getParcelable(key));
        }
    }

    public int describeContents() {
        return 0;
    }

    public void writeToParcel(Parcel out, int flags) {
        Bundle bundle = new Bundle();
        for (Map.Entry<String, Podcast> podcastEntry : podcastMap.entrySet()) {
            bundle.putParcelable(podcastEntry.getKey(), podcastEntry.getValue());
        }
        out.writeBundle(bundle);
    }

    public HashMap<String, Podcast> getPodcastMap() {
        return podcastMap;
    }

    @Override
    public String toString() {
        return "PodcastList{" +
               "podcastMap=" + podcastMap +
               '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        PodcastList that = (PodcastList) o;

        if (podcastMap != null ? !podcastMap.equals(that.podcastMap) : that.podcastMap != null) {
            return false;
        }

        return true;
    }

    @Override
    public int hashCode() {
        return podcastMap != null ? podcastMap.hashCode() : 0;
    }
}




Java Source Code List

com.android.debug.hv.ViewServer.java
com.davidtpate.teracast.BaseApplication.java
com.davidtpate.teracast.Constants.java
com.davidtpate.teracast.Injector.java
com.davidtpate.teracast.adapter.EpisodeAdapter.java
com.davidtpate.teracast.adapter.KeyAdapter.java
com.davidtpate.teracast.adapter.PodcastAdapter.java
com.davidtpate.teracast.bus.MainThreadBus.java
com.davidtpate.teracast.model.Audio.java
com.davidtpate.teracast.model.Episode.java
com.davidtpate.teracast.model.Item.java
com.davidtpate.teracast.model.PodcastList.java
com.davidtpate.teracast.model.Podcast.java
com.davidtpate.teracast.module.AndroidModule.java
com.davidtpate.teracast.module.ApplicationModule.java
com.davidtpate.teracast.module.RootModule.java
com.davidtpate.teracast.ui.MainActivity.java
com.davidtpate.teracast.ui.PodcastDetailFragment.java
com.davidtpate.teracast.ui.PodcastListFragment.java
com.davidtpate.teracast.ui.base.BaseActivity.java
com.davidtpate.teracast.ui.base.BaseFragmentActivity.java
com.davidtpate.teracast.ui.base.BaseFragment.java
com.davidtpate.teracast.ui.base.BaseListActivity.java
com.davidtpate.teracast.util.ListUtils.java
com.davidtpate.teracast.util.Ln.java
com.davidtpate.teracast.util.SafeAsyncTask.java
com.davidtpate.teracast.util.Strings.java