orangesignal / orangesignal-csv

CSV (comma-separated values) read and write library for Java.
http://orangesignal.github.io/orangesignal-csv
Apache License 2.0
43 stars 22 forks source link

Validator サポート #2

Closed orangesignal closed 10 years ago

orangesignal commented 10 years ago

仮設計・仮実装して検証すべし

orangesignal commented 10 years ago

対象は load / save 時なので最初は Handler で設計してみる。 Reader / Writer は入出力前後に自分でやれば良いので対象外とする方向が良い気がする

orangesignal commented 10 years ago

CsvFilter などと視点を揃える

orangesignal commented 10 years ago

POJO レベルでの Validation ▶︎ JSR ベースの Bean Validator (差込口をどうするか)

差込口不要な気がする

orangesignal commented 10 years ago

CsvReader に仮実装済。 CsvWriter に要るのか? ---> 要る Validation が有った場合に abort したい場合があるかもしれない

orangesignal commented 10 years ago

整理

POJO レベルの検証は Bean Validation におまかせする。 なので CSV レベルでの検証機能のみを提供する。 CSV レベルのみなので Reader / Writer レベルの機能で良いはず

CSV 生値のチェックと、項目数や行数チェックが主目的となるので、 それ以上の高度の検証機能が必要な場合は、Bean Validation の使用や独自拡張してもらう方向で良い気がする。

orangesignal commented 10 years ago

車輪の再発明をしたくないので、再度検討して範囲や目的を明確化する。

orangesignal commented 10 years ago

再考

com.orangesignal.csv.io パッケージの Reader については、

メソッドではなく、

を使用することによりこれらのメソッド操作間でユーザー側で検証処理を実装することが可能である。 Bean Validation については申し分ないので、今更 CsvValidator を実装する必要はないものと考える。

orangesignal commented 10 years ago

この件は中止とする