蛇足

List getHogeList(String id, boolean enableOnly, boolean publicOnly, boolean musicOnly);
があるなら、
List getHogeList(String id, EnumSet selected);
も書ける。

呼び出されているところをみたとき、
hogeService.getHogeList("hoge", false, true, false);
は意味がよくわからないが、
hogeService.getHogeList("hoge", EnumSet.of(HogeService.HogeSelected.PublicOnly));
は自明である。


しかし、
hogeService.getHogeList("hoge", EnumSet.of(HogeService.HogeSelected.PublicOnly,HogeService.HogeSelected.EnableOnly,HogeService.HogeSelected.MusicOnly));
はちと冗長ではあるまいか。
かといって……(以下どこか彼方へ続く)

enumがswitchできるならorでも書けたらいいかもねとか話してましたが、
hogeService.getHogeList("hoge",PublicOnly|EnableOnly|MusicOnly);
とか書けると少し幸せかも。