// Path: app/src/main/java/name/caiyao/microreader/api/zhihu/ZhihuRequest.java
// public class ZhihuRequest {
// 
//     private ZhihuRequest() {}
// 
//     private static final Interceptor REWRITE_CACHE_CONTROL_INTERCEPTOR = new Interceptor() {
//         @Override
//         public Response intercept(Chain chain) throws IOException {
//             Response originalResponse = chain.proceed(chain.request());
//             if (NetWorkUtil.isNetWorkAvailable(MicroApplication.getContext())) {
//                 int maxAge = 60; // 在线缓存在1分钟内可读取
//                 return originalResponse.newBuilder()
//                         .removeHeader("Pragma")
//                         .removeHeader("Cache-Control")
//                         .header("Cache-Control", "public, max-age=" + maxAge)
//                         .build();
//             } else {
//                 int maxStale = 60 * 60 * 24 * 28; // 离线时缓存保存4周
//                 return originalResponse.newBuilder()
//                         .removeHeader("Pragma")
//                         .removeHeader("Cache-Control")
//                         .header("Cache-Control", "public, only-if-cached, max-stale=" + maxStale)
//                         .build();
//             }
//         }
//     };
//     private static File httpCacheDirectory = new File(MicroApplication.getContext().getCacheDir(), "zhihuCache");
// 
//     private static int cacheSize = 10 * 1024 * 1024; // 10 MiB
//     private static Cache cache = new Cache(httpCacheDirectory, cacheSize);
//     private static OkHttpClient client = new OkHttpClient.Builder()
//             .addNetworkInterceptor(REWRITE_CACHE_CONTROL_INTERCEPTOR)
//             .addInterceptor(REWRITE_CACHE_CONTROL_INTERCEPTOR)
//             .cache(cache)
//             .build();
// 
//     private static ZhihuApi zhihuApi = null;
//     private static final Object monitor = new Object();
//     public static ZhihuApi getZhihuApi() {
//         synchronized (monitor){
//             if (zhihuApi == null) {
//                 zhihuApi = new Retrofit.Builder()
//                         .baseUrl("http://news-at.zhihu.com")
//                         .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
//                         .client(client)
//                         .addConverterFactory(GsonConverterFactory.create())
//                         .build().create(ZhihuApi.class);
//             }
//             return zhihuApi;
//         }
//     }
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/bean/UpdateItem.java
// public class UpdateItem {
//     @SerializedName("versionCode")
//     private int versionCode;
//     @SerializedName("versionName")
//     private String versionName;
//     @SerializedName("downloadUrl")
//     private String downloadUrl;
//     @SerializedName("releaseNote")
//     private String releaseNote;
// 
//     public int getVersionCode() {
//         return versionCode;
//     }
// 
//     public void setVersionCode(int versionCode) {
//         this.versionCode = versionCode;
//     }
// 
//     public String getVersionName() {
//         return versionName;
//     }
// 
//     public void setVersionName(String versionName) {
//         this.versionName = versionName;
//     }
// 
//     public String getDownloadUrl() {
//         return downloadUrl;
//     }
// 
//     public void setDownloadUrl(String downloadUrl) {
//         this.downloadUrl = downloadUrl;
//     }
// 
//     public String getReleaseNote() {
//         return releaseNote;
//     }
// 
//     public void setReleaseNote(String releaseNote) {
//         this.releaseNote = releaseNote;
//     }
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/presenter/ISettingPresenter.java
// public interface ISettingPresenter extends BasePresenter {
//     void checkUpdate();
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/ui/iView/ISettingFragment.java
// public interface ISettingFragment {
//     void showError(String error);
// 
//     void showUpdateDialog(UpdateItem updateItem);
// 
//     void showNoUpdate();
// }


import name.caiyao.microreader.BuildConfig;
import name.caiyao.microreader.api.zhihu.ZhihuRequest;
import name.caiyao.microreader.bean.UpdateItem;
import name.caiyao.microreader.presenter.ISettingPresenter;
import name.caiyao.microreader.ui.iView.ISettingFragment;
import rx.Observer;
import rx.Subscription;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;
package name.caiyao.microreader.presenter.impl;


/**
 * Created by 蔡小木 on 2016/4/24 0024.
 */
public class SettingPresenterImpl extends BasePresenterImpl implements ISettingPresenter {

    private ISettingFragment mSettingFragment;

// Path: app/src/main/java/name/caiyao/microreader/api/zhihu/ZhihuRequest.java
// public class ZhihuRequest {
// 
//     private ZhihuRequest() {}
// 
//     private static final Interceptor REWRITE_CACHE_CONTROL_INTERCEPTOR = new Interceptor() {
//         @Override
//         public Response intercept(Chain chain) throws IOException {
//             Response originalResponse = chain.proceed(chain.request());
//             if (NetWorkUtil.isNetWorkAvailable(MicroApplication.getContext())) {
//                 int maxAge = 60; // 在线缓存在1分钟内可读取
//                 return originalResponse.newBuilder()
//                         .removeHeader("Pragma")
//                         .removeHeader("Cache-Control")
//                         .header("Cache-Control", "public, max-age=" + maxAge)
//                         .build();
//             } else {
//                 int maxStale = 60 * 60 * 24 * 28; // 离线时缓存保存4周
//                 return originalResponse.newBuilder()
//                         .removeHeader("Pragma")
//                         .removeHeader("Cache-Control")
//                         .header("Cache-Control", "public, only-if-cached, max-stale=" + maxStale)
//                         .build();
//             }
//         }
//     };
//     private static File httpCacheDirectory = new File(MicroApplication.getContext().getCacheDir(), "zhihuCache");
// 
//     private static int cacheSize = 10 * 1024 * 1024; // 10 MiB
//     private static Cache cache = new Cache(httpCacheDirectory, cacheSize);
//     private static OkHttpClient client = new OkHttpClient.Builder()
//             .addNetworkInterceptor(REWRITE_CACHE_CONTROL_INTERCEPTOR)
//             .addInterceptor(REWRITE_CACHE_CONTROL_INTERCEPTOR)
//             .cache(cache)
//             .build();
// 
//     private static ZhihuApi zhihuApi = null;
//     private static final Object monitor = new Object();
//     public static ZhihuApi getZhihuApi() {
//         synchronized (monitor){
//             if (zhihuApi == null) {
//                 zhihuApi = new Retrofit.Builder()
//                         .baseUrl("http://news-at.zhihu.com")
//                         .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
//                         .client(client)
//                         .addConverterFactory(GsonConverterFactory.create())
//                         .build().create(ZhihuApi.class);
//             }
//             return zhihuApi;
//         }
//     }
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/bean/UpdateItem.java
// public class UpdateItem {
//     @SerializedName("versionCode")
//     private int versionCode;
//     @SerializedName("versionName")
//     private String versionName;
//     @SerializedName("downloadUrl")
//     private String downloadUrl;
//     @SerializedName("releaseNote")
//     private String releaseNote;
// 
//     public int getVersionCode() {
//         return versionCode;
//     }
// 
//     public void setVersionCode(int versionCode) {
//         this.versionCode = versionCode;
//     }
// 
//     public String getVersionName() {
//         return versionName;
//     }
// 
//     public void setVersionName(String versionName) {
//         this.versionName = versionName;
//     }
// 
//     public String getDownloadUrl() {
//         return downloadUrl;
//     }
// 
//     public void setDownloadUrl(String downloadUrl) {
//         this.downloadUrl = downloadUrl;
//     }
// 
//     public String getReleaseNote() {
//         return releaseNote;
//     }
// 
//     public void setReleaseNote(String releaseNote) {
//         this.releaseNote = releaseNote;
//     }
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/presenter/ISettingPresenter.java
// public interface ISettingPresenter extends BasePresenter {
//     void checkUpdate();
// }
// 
// Path: app/src/main/java/name/caiyao/microreader/ui/iView/ISettingFragment.java
// public interface ISettingFragment {
//     void showError(String error);
// 
//     void showUpdateDialog(UpdateItem updateItem);
// 
//     void showNoUpdate();
// }


// Path: app/src/main/java/name/caiyao/microreader/presenter/impl/SettingPresenterImpl.java
import name.caiyao.microreader.BuildConfig;
import name.caiyao.microreader.api.zhihu.ZhihuRequest;
import name.caiyao.microreader.bean.UpdateItem;
import name.caiyao.microreader.presenter.ISettingPresenter;
import name.caiyao.microreader.ui.iView.ISettingFragment;
import rx.Observer;
import rx.Subscription;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;

package name.caiyao.microreader.presenter.impl;


/**
 * Created by 蔡小木 on 2016/4/24 0024.
 */
public class SettingPresenterImpl extends BasePresenterImpl implements ISettingPresenter {

    private ISettingFragment mSettingFragment;

    public SettingPresenterImpl(ISettingFragment iSettingFragment) {