package com.doumee.lib_coremodel.http.rxJava; 
 | 
  
 | 
import java.lang.ref.WeakReference; 
 | 
  
 | 
import io.reactivex.Observer; 
 | 
import io.reactivex.disposables.Disposable; 
 | 
  
 | 
public abstract class SimpleObserver<T> implements Observer<T> { 
 | 
    private RxJavaGcManager rxJavaGcManager; 
 | 
    private WeakReference<Disposable> sr; 
 | 
  
 | 
    public SimpleObserver(RxJavaGcManager rxJavaGcManager) { 
 | 
        this.rxJavaGcManager = rxJavaGcManager; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public void onSubscribe(Disposable d) { 
 | 
        rxJavaGcManager.addDisposable(d); 
 | 
        sr=new WeakReference<Disposable>(d); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public void onComplete(){ 
 | 
        if(sr.get()!=null){ 
 | 
            rxJavaGcManager.disposableActive(sr.get()); 
 | 
        } 
 | 
    } 
 | 
} 
 |