Guava Charstreams InputSupplier を入力として受け取り、Charstreams OutputSupplier を出力として使用する grep タイプのフィルターを作成したいと思います。特定の正規表現を満たす場合にのみ、inputsupplier から outputsupplier に行を渡す必要があります。
これを行うための正しい設計パターン/パラダイムは何ですか?
次のように行フィルターを実行すると思います。
InputSupplier<InputStreamReader> ris = CharStreams.newReaderSupplier(....
CharStreams.readLines(ris, new LineProcessor<....
LineProcessor メソッドの実装。
しかし、 LineProcessor.getResult() は何を返す必要がありますか?失敗の成功だけですか? 周囲の関数で「最終的な」出力サプライヤーを使用する必要がありますか?
または、私は完全に間違ったAPI /アプローチを使用しています!!
最良の方法を示すための少しの疑似コードは大歓迎です。
ご提案いただきありがとうございます。