// Path: app/src/main/java/com/github/mzule/androidweekly/App.java
// public class App extends Application {
//     private static App instance;
// 
//     public static App getInstance() {
//         return instance;
//     }
// 
//     @Override
//     public void onCreate() {
//         super.onCreate();
//         instance = this;
//     }
// }
// 
// Path: app/src/main/java/com/github/mzule/androidweekly/entity/Issue.java
// public class Issue implements Serializable {
//     private String date;
//     private String name;
//     private String url;
//     private boolean active;
// 
//     public Issue(String name) {
//         this.name = name;
//     }
// 
//     public Issue(String name, boolean active) {
//         this.name = name;
//         this.active = active;
//     }
// 
//     public Issue(String name, String url, String date) {
//         this.name = name;
//         this.url = url;
//         this.date = date;
//     }
// 
//     public String getUrl() {
//         return url;
//     }
// 
//     public void setUrl(String url) {
//         this.url = url;
//     }
// 
//     public String getDate() {
//         return date;
//     }
// 
//     public void setDate(String date) {
//         this.date = date;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public boolean isActive() {
//         return active;
//     }
// 
//     public void setActive(boolean active) {
//         this.active = active;
//     }
// }
// 
// Path: app/src/main/java/com/github/mzule/androidweekly/util/JsonUtil.java
// public class JsonUtil {
//     private static final Gson gson = new Gson();
// 
//     public static String toJson(Object obj) {
//         try {
//             return gson.toJson(obj);
//         } catch (Throwable e) {
//             return "";
//         }
//     }
// 
//     public static <T> T fromJson(String json, Class<T> cls) {
//         try {
//             return gson.fromJson(json, cls);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// 
//     public static <T> T fromJson(String json, Type type) {
//         try {
//             return gson.fromJson(json, type);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// 
//     @WorkerThread
//     public static <T> T fromJson(URL url, Class<T> cls) {
//         try {
//             return gson.fromJson(new BufferedReader(new InputStreamReader(url.openConnection().getInputStream())), cls);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// }


import android.content.Context;
import android.content.SharedPreferences;
import com.github.mzule.androidweekly.App;
import com.github.mzule.androidweekly.entity.Issue;
import com.github.mzule.androidweekly.util.JsonUtil;
import com.google.gson.reflect.TypeToken;
import java.util.Collections;
import java.util.List;
package com.github.mzule.androidweekly.dao;




/**
 * Created by CaoDongping on 4/2/16.
 */
public class IssueListKeeper {

    public static void save(List<Issue> issues) {
// Path: app/src/main/java/com/github/mzule/androidweekly/App.java
// public class App extends Application {
//     private static App instance;
// 
//     public static App getInstance() {
//         return instance;
//     }
// 
//     @Override
//     public void onCreate() {
//         super.onCreate();
//         instance = this;
//     }
// }
// 
// Path: app/src/main/java/com/github/mzule/androidweekly/entity/Issue.java
// public class Issue implements Serializable {
//     private String date;
//     private String name;
//     private String url;
//     private boolean active;
// 
//     public Issue(String name) {
//         this.name = name;
//     }
// 
//     public Issue(String name, boolean active) {
//         this.name = name;
//         this.active = active;
//     }
// 
//     public Issue(String name, String url, String date) {
//         this.name = name;
//         this.url = url;
//         this.date = date;
//     }
// 
//     public String getUrl() {
//         return url;
//     }
// 
//     public void setUrl(String url) {
//         this.url = url;
//     }
// 
//     public String getDate() {
//         return date;
//     }
// 
//     public void setDate(String date) {
//         this.date = date;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public boolean isActive() {
//         return active;
//     }
// 
//     public void setActive(boolean active) {
//         this.active = active;
//     }
// }
// 
// Path: app/src/main/java/com/github/mzule/androidweekly/util/JsonUtil.java
// public class JsonUtil {
//     private static final Gson gson = new Gson();
// 
//     public static String toJson(Object obj) {
//         try {
//             return gson.toJson(obj);
//         } catch (Throwable e) {
//             return "";
//         }
//     }
// 
//     public static <T> T fromJson(String json, Class<T> cls) {
//         try {
//             return gson.fromJson(json, cls);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// 
//     public static <T> T fromJson(String json, Type type) {
//         try {
//             return gson.fromJson(json, type);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// 
//     @WorkerThread
//     public static <T> T fromJson(URL url, Class<T> cls) {
//         try {
//             return gson.fromJson(new BufferedReader(new InputStreamReader(url.openConnection().getInputStream())), cls);
//         } catch (Throwable e) {
//             return null;
//         }
//     }
// }


// Path: app/src/main/java/com/github/mzule/androidweekly/dao/IssueListKeeper.java
import android.content.Context;
import android.content.SharedPreferences;
import com.github.mzule.androidweekly.App;
import com.github.mzule.androidweekly.entity.Issue;
import com.github.mzule.androidweekly.util.JsonUtil;
import com.google.gson.reflect.TypeToken;
import java.util.Collections;
import java.util.List;

package com.github.mzule.androidweekly.dao;




/**
 * Created by CaoDongping on 4/2/16.
 */
public class IssueListKeeper {

    public static void save(List<Issue> issues) {
        getSharedPreferences().edit().putString("issues", JsonUtil.toJson(issues)).apply();