org.dbflute.bhv.referrer.ReferrerLoaderHandler Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dbflute-runtime Show documentation
Show all versions of dbflute-runtime Show documentation
The runtime library of DBFlute
/*
* Copyright 2014-2015 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* either express or implied. See the License for the specific language
* governing permissions and limitations under the License.
*/
package org.dbflute.bhv.referrer;
/**
* The loader of nested referrer.
*
* MemberCB cb = new MemberCB();
* cb.query().set...
* List<Member> memberList = memberBhv.selectList(cb);
* memberBhv.load(memberList, loader -> {
* loader.loadPurchaseList(purchaseCB -> {
* purchaseCB.query().set...
* purchaseCB.query().addOrderBy_PurchasePrice_Desc();
* }); // you can also load nested referrer from here
* //}).withNestedList(purchaseLoader -> {
* // purchaseLoader.loadPurchasePaymentList(...);
* //});
*
* // you can also pull out foreign table and load its referrer
* // (setupSelect of the foreign table should be called)
* //loader.pulloutMemberStatus().loadMemberLoginList(...)
* }
* for (Member member : memberList) {
* List<Purchase> purchaseList = member.getPurchaseList();
* for (Purchase purchase : purchaseList) {
* ...
* }
* }
*
* @param The type of referrer loader.
* @author jflute
* @since 1.0.5J (2014/06/14 Saturday)
*/
@FunctionalInterface
public interface ReferrerLoaderHandler {
/**
* Provide referrer loader for LoadReferrer.
*
* MemberCB cb = new MemberCB();
* cb.query().set...
* List<Member> memberList = memberBhv.selectList(cb);
* memberBhv.load(memberList, loader -> {
* loader.loadPurchaseList(purchaseCB -> {
* purchaseCB.query().set...
* purchaseCB.query().addOrderBy_PurchasePrice_Desc();
* }); // you can also load nested referrer from here
* //}).withNestedList(purchaseLoader -> {
* // purchaseLoader.loadPurchasePaymentList(...);
* //});
*
* // you can also pull out foreign table and load its referrer
* // (setupSelect of the foreign table should be called)
* //loader.pulloutMemberStatus().loadMemberLoginList(...)
* }
* for (Member member : memberList) {
* List<Purchase> purchaseList = member.getPurchaseList();
* for (Purchase purchase : purchaseList) {
* ...
* }
* }
*
* @param loader The loader of referrer. (NotNull)
*/
void handle(LOADER loader);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy