code: private <T> Observable<T> asObservable(Executor<T> transaction) {
          return Observable.create(emitter -> storeFactory.execute(new StoreTransaction<ChatStore>() {
              @Override
              protected void execute(ChatStore store) {
                  try {
                      transaction.execute(store, emitter);
                  } finally {
                      emitter.onCompleted();
                  }
              }
          }), Emitter.BackpressureMode.BUFFER);
      }
docs: Executes transaction callback ass an observable.
  
  @param transaction Store transaction.
  @param <T>         Store class.
  @return Observable executing given store transaction.