/** * Prepare for MyselfExists (correlated sub-query). * * @param subCBLambda The implementation of sub-query. (NotNull) */ public void myselfExists(SubQuery<TweetCB> subCBLambda) { assertObjectNotNull("subCBLambda", subCBLambda); TweetCB cb = new TweetCB(); cb.xsetupForMyselfExists(this); lockCall(() -> subCBLambda.query(cb)); String pp = keepMyselfExists(cb.query()); registerMyselfExists(cb.query(), pp); }
// =================================================================================== // MyselfDerived // ============= public void xsmyselfDerive(String fn, SubQuery<TweetCB> sq, String al, DerivedReferrerOption op) { assertObjectNotNull("subQuery", sq); TweetCB cb = new TweetCB(); cb.xsetupForDerivedReferrer(this); lockCall(() -> sq.query(cb)); String pp = keepSpecifyMyselfDerived(cb.query()); String pk = "TWEET_ID"; registerSpecifyMyselfDerived(fn, cb.query(), pk, pk, pp, "myselfDerived", al, op); }
@SuppressWarnings("unchecked") protected <CB extends ConditionBean> void xscalarCondition( String fn, SubQuery<CB> sq, String rd, HpSLCCustomized<CB> cs, ScalarConditionOption op) { assertObjectNotNull("subQuery", sq); TweetCB cb = xcreateScalarConditionCB(); sq.query((CB) cb); String pp = keepScalarCondition(cb.query()); // for saving query-value cs.setPartitionByCBean((CB) xcreateScalarConditionPartitionByCB()); // for using partition-by registerScalarCondition(fn, cb.query(), pp, rd, cs, op); }
@SuppressWarnings("unchecked") protected <CB extends ConditionBean> void xqderiveMyselfDerived( String fn, SubQuery<CB> sq, String rd, Object vl, DerivedReferrerOption op) { assertObjectNotNull("subQuery", sq); TweetCB cb = new TweetCB(); cb.xsetupForDerivedReferrer(this); sq.query((CB) cb); String pk = "TWEET_ID"; String sqpp = keepQueryMyselfDerived(cb.query()); // for saving query-value. String prpp = keepQueryMyselfDerivedParameter(vl); registerQueryMyselfDerived(fn, cb.query(), pk, pk, sqpp, "myselfDerived", rd, vl, prpp, op); }
protected TweetCB xcreateScalarConditionPartitionByCB() { TweetCB cb = newMyCB(); cb.xsetupForScalarConditionPartitionBy(this); return cb; }