title: RxAnadroid concatenating streams
body: <p>I'm making a simple weather app to learn RxAndroid and I'm faced with the following issue.
  I first load cities I'm interested in and then ask for the weather of each one of them. 
  <strong>getCitiesUseCase</strong> returns an <code>Observable&lt;List&lt;City&gt;&gt;</code> that I load from the data base. I send that list of cities to my view to display them and then ask for the weather individually (flatmap) inside the subscriber.</p>
  
  <pre><code>Subscription subscription = getCitiesUseCase.execute().flatMap(new Func1&lt;List&lt;City&gt;, Observable&lt;City&gt;&gt;() {
          @Override
          public Observable&lt;City&gt; call(List&lt;City&gt; cities) {
              citiesView.addCities(cities);
              return Observable.from(cities);
          }
      }).subscribe(new Subscriber&lt;City&gt;() {
          @Override
          public void onCompleted() {
              subscriptions.remove(this);
              this.unsubscribe();
          }
  
          @Override
          public void onError(Throwable e) {
              Log.e(this.getClass().getSimpleName(), e.toString());
          }
  
          @Override
          public void onNext(City city) {
              getCityWeatherUseCase.setLatLon(city.getLat().toString(), city.getLon().toString(), city.getId());
              getCityWeather(city);
          }
      });
  
      subscriptions.add(subscription);
  </code></pre>
  
  <p>Now the getCityWeather() method looks like this:</p>
  
  <pre><code>    private void getCityWeather(final City city) {
      subscriptions.add(getCityWeatherUseCase.execute().subscribe(new Subscriber&lt;CityWeather&gt;() {
          @Override
          public void onCompleted() {
          }
  
          @Override
          public void onError(Throwable e) {
              Log.e("error", e.toString());
          }
  
          @Override
          public void onNext(CityWeather cityWeather) {
              city.setCityWeather(cityWeather);
              citiesView.updateCity(city);
          }
      }));
  }
  </code></pre>
  
  <p>Everything works fine and as expected, but the fact that I'm subscribing to an observer inside a subcriber doesnt feel right. I know rxJava lets you play around with subscribers to prevent this kind of things but I really dont know how to improve my code further. Keep in mind that I need a city in order to ask for its weather.
  Merry chrismas!</p>