問題タブ [rx-groovy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
686 参照

groovy - リアクティブプログラミングによるビルダーパターン

リアクティブ プログラミング (RxGroovy) を使用して、プロパティ値がデータベース クエリから取得されるビルダー パターンを使用してオブジェクトを作成しようとしています。まず、どうやってそれを行うか、そして次に、それが良いアイデアかどうかについての考えを探しています。

作成しようとしているオブジェクトは次のタイプです。

そしてビルダー:

すべての Foo オブジェクトの名前を返すクエリと、関連するすべての ID を取得するために Foo オブジェクトごとに 1 回実行する別のクエリの 2 つのクエリがあります。

queryAsObservableクエリを実行し、結果セットの各行を発行する Observable を取得するためのメソッド (それを呼び出す) が既にあります。を設定すると、次のnameようになります。

を指定するFooBuilderと、次のように relatedIds を設定できます。

私の問題は、2つを結び付ける方法ですか?FooBuilder示されているように、最初のオブザーバブルによって発行されたそれぞれについて、関連する ID を設定するためにオブザーバブルを作成するにはどうすればよいですか? 最後に、すべてのFooBuilderオブジェクトを取得し、 プロパティnamerelatedIdsプロパティをすべて設定する必要があります。

JOINに関する注意

JOIN を使用して、関連する ID と名前をすべて 1 つのクエリで取得できることを知っています。私の考えでは、すべての結果が到着するのを待ってからオブジェクトを順番に構築するのではなく、並行して実行される多くの小さなクエリを使用し、Observable ストリームを使用して結果が利用可能になるたびに各結果の作業を行うことができます。なぜそれが良いアイデアなのか悪いアイデアなのかについて、私は自由に考えています。

0 投票する
1 に答える
89 参照

rx-groovy - タイムアウト後に不足している Observable 情報を取得する方法

10 個の項目で作成された Observable があり、そのうちの 3 個がタイムアウトのしきい値を超えている場合、完了したすべての項目と完了しなかった項目が完全なレポートのために分割された最終結果をどのように生成できますか。

次の Groovy コードは、15 秒間の非アクティブのタイムアウトを適用することで機能しますが、完了した作業のデータのみが含まれており、不足しているアイテムのステータスに関する情報はありません。

関数 getListOfReports は Observable を返します (同期 - データベースから)。関数 getReport_Async は、Observable (複数のデータベースからの非同期 SQL) を返します。

2 番目のサブスクリプションを保持するサブジェクトが関与し、タイムアウト イベントの後に何らかの形で異なる操作を生成すると思われます。私は副作用を伴う極端な手段に行かずにこれを解決するのに苦労しています.

0 投票する
1 に答える
25 参照

groovy - RxGroovy でリアクティブ .groupBy を使用するにはどうすればよいですか

RxGroovy に次のコードがあります。

の型numはのObservable<Integer>代わりに ですInteger。その理由は、デフォルト.groupByで存在するためだと思います。RxGroovy で引き続きリアクティブ メソッドを使用するにはどうすればよいですか?Groovy .groupBy