私はScalaを使用してSwingでGUIアプリケーションを作成しています。このアプリケーションは、複数のスレッドを開始してHTTP経由でファイルを同時にダウンロードします。JProgressBarいくつかのを使用して、ダウンロードのステータスを表示したいと思います。もちろん、プログレスバーはイベントディスパッチスレッドから更新する必要があります。さらに、HTTPダウンロードコードをGUIとは別にしたいと思います。
これを行うための最良の方法は何でしょうか?SwingWorkerはSwing固有でありObservable、オブザーバーに渡されるパラメーターがオブジェクトであり、キャストする必要があるという点で、やや古風なようです。Scalaは強力な現代語なので、自分がやりたいことをもっと簡単に行う方法があることを望んでいました。