title: correct way to join an rxjava subscription with in flight observable
body: <p>I have a method getData() that returns an Observable.   </p>
  
  <pre><code>public Observable&lt;Data&gt; getData() {
    Observable&lt;Data&gt; observable = mApi.networkCall();
    return observable;
  }
  </code></pre>
  
  <p>There are many clients that call this method, and if the observable has not completed yet, I'd like them to just subscribe to the in flight observable. If the observable has completed, I need to restart the call and get a new observable. What's the best way to detect the observable is complete and i should call the network call again?</p>