バージョン移行{0.7.0 to 0.7.1}
環境
特にありません。
実装
ConditionBeanのUnion
ConditionBeanのUnionでコールバックを利用するようにしました。
ex) Java
MemberCB cb = new MemberCB();
cb.query().setXxx_Equal(xxx);
cb.union(new UnionQuery<MemberCB>() {
public void query(MemberCB unionCB) {
unionCB.query().setXxx_Equal(xxx);
}
});
ex) C#
MemberCB cb = new MemberCB();
cb.Query().SetXxx_Equal(xxx);
cb.Union(delegate(MemberCB unionCB) {
unionCB.Query().SetXxx_Equal(xxx);
});
これに伴い、以前のやり方のUnionを非推奨メソッドにさせてもらうことにしました(誠に申し訳ございません)。(バージョン-0.7.x系では利用可能です)
ConditionBeanのExistsSubQuery
ConditionBeanのExistsSubQueryでコールバックを利用するようにしました。
ex) Java
MemberCB cb = new MemberCB();
cb.query().setXxx_Equal(xxx);
cb.query().existsPurchaseList(new SubQuery<PurchaseCB>() {
public void query(PurchaseCB subCB) {
subCB.query().setXxx_Equal(xxx);
}
});
ex) C#
MemberCB cb = new MemberCB();
cb.Query().SetXxx_Equal(xxx);
cb.Query().ExistsPurchaseList(delegate(PurchaseCB subCB) {
subCB.Query().SetXxx_Equal(xxx);
});
以前のやり方のメソッドはそのまま残ります。
コールバックのEclipseでのコード補完
ご覧のようにC#の方がよりわかりやすくすっきりした実装になっていますが、Eclipseを利用することによって実装はJavaでもとても簡単です。
1. 「cb.query().ex」まで書いてctrl + spaceで補完候補表示&選択
MemberCB cb = new MemberCB();
cb.query().existsPurchaseList(subQuery[カーソル位置])
2. subQueryの文字を選択状態でそのまま「new 」と書いてctrl + spaceそしてEnter
MemberCB cb = new MemberCB();
cb.query().existsPurchaseList(new SubQuery<PurchaseCB>[カーソル位置])
3. 「() {」を付けてEnter
MemberCB cb = new MemberCB();
cb.query().existsPurchaseList(new SubQuery<PurchaseCB>() {
[カーソル位置]
})
4. 最後の括弧の後ろにセミコロン「;」
MemberCB cb = new MemberCB();
cb.query().existsPurchaseList(new SubQuery<PurchaseCB>() {
}); // ★ここ
5. コンパイルエラーのnew SubQuery<PurchaseCB>にカーソルを合わせてctrl + 1そしてEnter
MemberCB cb = new MemberCB();
cb.query().existsPurchaseList(new SubQuery<PurchaseCB>() {
public void query(PurchaseCB subCB) {
// TODO Auto-generated method stub
}
});