public abstract class AbstractConditionBean extends Object implements ConditionBean
| 修飾子とタイプ | クラスと説明 |
|---|---|
protected static interface |
AbstractConditionBean.SsCall |
| 修飾子とタイプ | フィールドと説明 |
|---|---|
protected boolean |
_canRelationMappingCache
Can the relation mapping (entity instance) be cached?
|
protected CursorSelectOption |
_cursorSelectOption
The option of cursor select.
|
protected boolean |
_departurePortForDreamCruise
Is this condition-bean departure port for dream cruise?
|
protected DerivedTypeHandler |
_derivedTypeHandler
The handler of derived type.
|
protected ConditionBean |
_dreamCruiseDeparturePort
The departure port (base point condition-bean) of dream cruise.
|
protected List<String> |
_dreamCruiseJourneyLogBook
The journey log book (relation path) of dream cruise.
|
protected SpecifiedColumn |
_dreamCruiseTicket
The ticket (specified column) of dream cruise.
|
protected boolean |
_isSelectCountIgnoreFetchScope
Is set up various things for select-count-ignore-fetch-scope?
|
protected boolean |
_locked
Is the condition-bean locked?
|
protected BoundDateDisplayStyle |
_logDateDisplayStyle
The display style of date for logging, overriding default style.
|
protected Object |
_mysticBinding
The binding value or dream cruise ticket for mystic binding.
|
protected boolean |
_nonSpecifiedColumnAccessAllowed
Does it allow access to non-specified column?
|
protected boolean |
_pagingCountLater
Is the count executed later?
|
protected boolean |
_pagingReSelect
Can the paging re-select?
|
protected boolean |
_pagingSelectAndQuerySplit
Does it split SQL execution as select and query?
|
protected HpCBPurpose |
_purpose
The purpose of condition-bean.
|
protected boolean |
_queryUpdateCountPreCheck
Does it check record count before QueryUpdate?
|
protected int |
_safetyMaxResultSize
The max result size of safety select.
|
protected SqlClause |
_sqlClause
SQL clause instance.
|
protected StatementConfig |
_statementConfig
The configuration of statement.
|
protected boolean |
_undefinedClassificationSelectAllowed
Does it allow selecting undefined classification code?
|
protected List<ConditionBean> |
_unionCBeanList
The list of condition-bean for union.
|
protected UnionQuery<ConditionBean> |
_unionQuerySynchronizer
The synchronizer of union query.
|
| コンストラクタと説明 |
|---|
AbstractConditionBean() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
void |
acceptPrimaryKeyMap(Map<String,? extends Object> primaryKeyMap)
Accept the map of primary-keys. map:{[column-name] = [value]}
|
DBMeta |
asDBMeta()
Handle the meta as DBMeta, that has all info of the table.
|
protected void |
assertObjectNotNull(String variableName,
Object value)
Assert that the object is not null.
|
protected void |
assertOptionThatBadTiming(String optionName) |
protected void |
assertQueryPurpose() |
protected void |
assertSetupSelectPurpose(String foreignPropertyName) |
protected void |
assertSpecifyPurpose() |
protected void |
assertStatementConfigNotDuplicated(StatementConfigCall<StatementConfig> configCall) |
protected void |
assertStringNotNullAndNotTrimmedEmpty(String variableName,
String value)
Assert that the string is not null and not trimmed empty.
|
boolean |
canPagingCountLater()
Can the paging execute count later?
|
boolean |
canPagingReSelect()
Can the paging re-select?
|
boolean |
canPagingSelectAndQuerySplit()
Can the SQL execution be split by select and query?
|
boolean |
canRelationMappingCache()
Can the relation mapping (entity instance) be cached?
|
void |
checkNullOrEmptyQuery()
Check null or empty value for query when query is set.
|
void |
checkSafetyResult(int safetyMaxResultSize)
Check whether the result size is safety or not.
|
OrderByBean |
clearOrderBy()
Clear order-by.
|
void |
clearWhereClauseOnBaseQuery()
Clear where clauses where clause on the base query.
|
void |
configure(StatementConfigCall<StatementConfig> confLambda)
Configure statement JDBC options. e.g. queryTimeout, fetchSize, ...
|
protected static String |
convertConditionBean2DisplaySql(SqlAnalyzerFactory factory,
ConditionBean cb,
BoundDateDisplayStyle dateDisplayStyle) |
protected ConditionBeanExceptionThrower |
createCBExThrower() |
protected BoundDateDisplayStyle |
createConfiguredBoundDateDisplayStyle() |
<ENTITY> PagingInvoker<ENTITY> |
createPagingInvoker(String tableDbName)
Create the invoker of paging.
|
protected DerivedReferrerOptionFactory |
createSpecifyDerivedReferrerOptionFactory() |
protected abstract SqlClause |
createSqlClause()
Create SQL clause.
|
protected StatementConfig |
createStatementConfig(StatementConfigCall<StatementConfig> configCall) |
protected String |
decryptIfNeeds(ColumnInfo columnInfo,
String valueExp) |
void |
disableColumnNullObject()
Disable the handling of column null object.
|
void |
disableEmptyStringQuery()
Disable empty string for query.
|
void |
disableInnerJoinAutoDetect()
Disable auto-detecting inner-join.
|
void |
disableNonSpecifiedColumnAccess()
Disable the check of access to non-specified column.
|
void |
disableOverridingQuery()
Disable overriding query.
|
void |
disablePagingCountLater()
Disable paging count-later that means counting after selecting.
|
void |
disablePagingCountLeastJoin()
Disable paging count-least-join, which means least joined on count select.
|
void |
disablePagingReSelect()
Disable paging re-select that is executed when the page number is over page count.
|
void |
disablePagingSelectAndQuerySplit() |
void |
disableQueryUpdateCountPreCheck()
Disable checking record count before QueryUpdate (contains QueryDelete).
|
void |
disableRelationMappingCache()
非推奨です。
You should not use this easily. It's a dangerous function.
|
void |
disableThatsBadTiming()
Disable "that's bad timing" check.
|
void |
disableUndefinedClassificationSelect()
Disable the select of undefined classification code.
|
protected void |
doAcceptCursorSelectOption(SVOptionCall<CursorSelectOption> opLambda) |
protected void |
doEnableEmptyStringQuery() |
protected void |
doEnableOverridingQuery() |
protected void |
doSetupSelect(AbstractConditionBean.SsCall callback) |
void |
embedCondition(Set<ColumnInfo> embeddedColumnInfoSet,
boolean quote)
非推奨です。
You should not use this easily. It's a dangerous function.
|
void |
enableColumnNullObject()
Enable the handling of column null object.
|
void |
enableEmptyStringQuery(ModeQuery noArgInLambda)
Enable empty string for query.
|
void |
enableInnerJoinAutoDetect()
Enable to auto-detect joins that can be inner-join.
|
void |
enableNonSpecifiedColumnAccess()
Enable access to non-specified column.
|
void |
enableOverridingQuery(ModeQuery noArgInLambda)
Enable overriding query.
|
void |
enablePagingCountLater()
Enable paging count-later that means counting after selecting.
|
void |
enablePagingCountLeastJoin()
Enable paging count-least-join, which means least joined on count select.
|
void |
enablePagingReSelect()
Enable paging re-select that is executed when the page number is over page count.
|
void |
enablePagingSelectAndQuerySplit()
非推奨です。
This is rare handling for performance tuning so don't use this easily.
|
void |
enableQueryUpdateCountPreCheck()
Enable checking record count before QueryUpdate (contains QueryDelete).
|
void |
enableThatsBadTiming()
Enable "that's bad timing" check.
|
void |
enableUndefinedClassificationSelect()
Enable the select of undefined classification code.
|
PagingBean |
fetchFirst(int fetchSize)
Fetch first records only.
|
protected abstract String |
getConfiguredLogDatePattern() |
protected abstract String |
getConfiguredLogTimePattern() |
protected abstract String |
getConfiguredLogTimestampPattern() |
protected abstract BoundDateDisplayTimeZoneProvider |
getConfiguredLogTimeZoneProvider() |
CursorSelectOption |
getCursorSelectOption()
Get the option of cursor select.
|
protected abstract DBMetaProvider |
getDBMetaProvider()
Get the provider of DB meta.
|
int |
getFetchNarrowingLoopCount()
Get fetch size.
|
int |
getFetchNarrowingSkipStartIndex()
Get fetch start index.
|
int |
getFetchPageNumber()
Get fetch page number.
|
int |
getFetchSize()
Get fetch size of paging, also called page size.
|
int |
getFetchStartIndex()
Get fetch start index.
|
String |
getFromBaseTableHint()
Get from-base-table-hint.
|
String |
getFromHint()
Get from-hint.
|
BoundDateDisplayStyle |
getLogDateDisplayStyle()
Get the display style of date for logging.
|
String |
getOrderByClause()
Get order-by clause.
|
OrderByClause |
getOrderByComponent()
Get the component of order-by clause.
|
int |
getPageEndIndex()
Get page end index.
|
int |
getPageStartIndex()
Get page start index.
|
HpCBPurpose |
getPurpose()
Get the purpose of the condition-bean. e.g.
|
int |
getSafetyMaxResultSize()
Get the max size of safety result.
|
String |
getSelectHint()
Get select-hint.
|
protected abstract SqlAnalyzerFactory |
getSqlAnalyzerFactory() |
SqlClause |
getSqlClause()
Get SQL clause instance.
|
String |
getSqlSuffix()
Get sql-suffix.
|
StatementConfig |
getStatementConfig()
Get the configuration of statement that is set through configure().
|
boolean |
hasOrderByClause()
Does it have order-by clauses?
|
boolean |
hasSelectAllPossible()
Does it have select-all possible?
|
protected boolean |
hasSubQueryEndOnLastLine(String columnExp) |
boolean |
hasWhereClauseOnBaseQuery()
Does it have where clause on the base query?
|
void |
ignoreNullOrEmptyQuery()
Ignore null-or-empty check for query when query is set.
|
protected String |
initCap(String str) |
SpecifiedColumn |
inviteDerivedToDreamCruise(String derivedAlias)
Invite the derived column to dream cruise.
|
void |
invokeOrScopeQuery(OrQuery<ConditionBean> orQuery)
Invoke the method 'orScopeQuery()' by the query callback.
|
void |
invokeOrScopeQueryAndPart(AndQuery<ConditionBean> andQuery)
Invoke the method 'orScopeQueryAndPart()' by the query callback.
|
void |
invokeSetupSelect(String foreignPropertyNamePath)
Invoke the method 'setupSelect_Xxx()' and 'withXxx()' by the path of foreign property name.
|
SpecifiedColumn |
invokeSpecifyColumn(String columnPropertyPath)
Invoke the method 'specify().columnXxx()' by the path of column name.
|
boolean |
isFetchNarrowingEffective()
Is fetch-narrowing effective?
|
boolean |
isFetchNarrowingLoopCountEffective()
Is fetch size supported?
|
boolean |
isFetchNarrowingSkipStartIndexEffective()
Is fetch start index supported?
|
boolean |
isFetchScopeEffective()
Is fetch scope effective?
|
protected boolean |
isLocked() |
boolean |
isNonSpecifiedColumnAccessAllowed()
Is the access to non-specified column allowed?
|
boolean |
isPaging()
Is the execution for paging(NOT count)?
|
boolean |
isQueryUpdateCountPreCheck()
Does it check record count before QueryUpdate (contains QueryDelete)?
|
boolean |
isSelectCountIgnoreFetchScope()
Is set up various things for select-count-ignore-fetch-scope?
|
boolean |
isUndefinedClassificationSelectAllowed()
Is the selecting undefined classification code allowed?
|
protected String |
ln() |
protected void |
lock() |
ConditionBean |
lockForUpdate()
Lock for update.
|
void |
mysticRhythms(Object mysticBinding)
DBFlute Dreams.
|
protected CursorSelectOption |
newCursorSelectOption() |
protected <LOCAL_CQ extends ConditionQuery,REFERRER_CB extends ConditionBean> |
newSDFFunction(ConditionBean baseCB,
LOCAL_CQ localCQ,
HpSDRSetupper<REFERRER_CB,LOCAL_CQ> querySetupper,
DBMetaProvider dbmetaProvider,
DerivedReferrerOptionFactory optionFactory)
New-create the function handler of (specify) derived-referrer as plain.
|
protected DerivedReferrerOption |
newSpecifyDerivedReferrerOption()
New-create the option of (specify) derived-referrer as plain.
|
protected StatementConfig |
newStatementConfig() |
void |
overTheWaves(SpecifiedColumn dreamCruiseTicket)
DBFlute Dreams.
|
void |
paging(int pageSize,
int pageNumber)
Set up paging resources.
|
protected String |
reflectToSubQueryEndOnLastLine(String columnExp,
String inserted) |
void |
styleLogDateDisplay(BoundDateDisplayStyle logDateDisplayStyle)
Style bound dates on logging display SQL, overriding default style.
|
protected void |
throwPagingPageSizeNotPlusException(int pageSize,
int pageNumber) |
protected void |
throwQueryIllegalPurposeException() |
protected void |
throwSetupSelectIllegalPurposeException(String className,
String foreignPropertyName) |
protected void |
throwSpecifyIllegalPurposeException() |
String |
toDisplaySql()
Convert this conditionBean to SQL for display.
|
String |
toString() |
protected void |
unlock() |
void |
useInScopeSubQuery()
Use in-scope sub-query for exists-referrer, basically for performance tuning.
|
void |
xacceptScalarSelectOption(ScalarSelectOption option)
Accept the option for ScalarSelect.
|
ConditionBean |
xafterCareSelectCountIgnoreFetchScope()
Do after-care for select-count-ignore-fetch-scope.
|
protected void |
xassertDreamCruiseShip() |
protected String |
xbuildColQyClause(String leftExp,
String operand,
String rightExp) |
protected <CB extends ConditionBean> |
xbuildColQyColumn(CB cb,
String source,
String themeKey) |
protected <CB extends ConditionBean> |
xbuildColQyLeftColumn(CB leftCB,
HpCalcSpecification<CB> leftCalcSp) |
protected <CB extends ConditionBean> |
xbuildColQyRightColumn(CB rightCB,
HpCalcSpecification<CB> rightCalcSp) |
protected void |
xchangePurposeSqlClause(HpCBPurpose purpose,
ConditionQuery mainCQ) |
protected <CB extends ConditionBean> |
xcolqy(CB leftCB,
CB rightCB,
SpecifyQuery<CB> leftSp,
SpecifyQuery<CB> rightSp,
String operand) |
Object |
xconvertToDerivedMapValue(HpDerivingSubQueryInfo derivingInfo,
Object value) |
protected <CB extends ConditionBean> |
xcreateCalcSpecification(SpecifyQuery<CB> calcSp) |
protected <CB extends ConditionBean> |
xcreateColQyAliasInfo(HpCalcSpecification<CB> calcSp) |
protected <CB extends ConditionBean> |
xcreateColQyClause(String leftColumn,
String operand,
String rightColumn,
HpCalcSpecification<CB> rightCalcSp) |
protected <CB extends ConditionBean> |
xcreateColQyOperand(HpColQyHandler<CB> handler) |
protected <CB extends ConditionBean> |
xcreateColQyOperandMySql(HpColQyHandler<CB> handler) |
protected DerivedTypeHandler |
xcreateDerivedTypeHandler() |
ConditionBean |
xcreateDreamCruiseCB()
Create condition-bean for dream cruise.
|
protected <CQ extends ConditionQuery> |
xcreateSpQyCall(HpSpQyHas<CQ> has,
HpSpQyQy<CQ> qy) |
protected HpSDRFunctionFactory |
xcSDRFnFc() |
void |
xdisableFetchNarrowing()
Disable fetch narrowing.
|
protected abstract ConditionBean |
xdoCreateDreamCruiseCB() |
protected <CB extends ConditionBean> |
xdoExtractColQyColumnMysticBinding(CB cb,
Object mysticBinding) |
protected <CB extends ConditionBean> |
xdoExtractColQyColumnSpecifiedColumn(HpCalcSpecification<CB> calcSp) |
protected <CB extends ConditionBean> |
xdoOrSQ(CB cb,
OrQuery<CB> orQuery) |
protected void |
xdoSetupSelectDreamCruiseJourneyLogBook() |
void |
xenableIgnoredFetchNarrowing()
Enable ignored fetch narrowing.
|
protected <CB extends ConditionBean> |
xextractColQyColumnRealName(CB cb,
HpCalcSpecification<CB> calcSp) |
PagingBean |
xfetchPage(int fetchPageNumber)
Fetch page.
|
PagingBean |
xfetchScope(int fetchStartIndex,
int fetchSize)
Fetch records in the scope only.
|
protected Class<?> |
xfindDerivedMappingTypeOfAvg(HpDerivingSubQueryInfo derivingInfo) |
protected Class<?> |
xfindDerivedMappingTypeOfCount(HpDerivingSubQueryInfo derivingInfo) |
protected Class<?> |
xfindDerivedMappingTypeOfDefault(HpDerivingSubQueryInfo derivingInfo) |
protected Class<?> |
xfindDerivedMappingTypeOfMax(HpDerivingSubQueryInfo derivingInfo) |
protected Class<?> |
xfindDerivedMappingTypeOfMin(HpDerivingSubQueryInfo derivingInfo) |
protected Class<?> |
xfindDerivedMappingTypeOfSum(HpDerivingSubQueryInfo derivingInfo) |
DerivedTypeHandler |
xgetDerivedTypeHandler()
Get the handler of derived type for derived mappable entity (for (Specify)DerivedReferrer).
|
ConditionBean |
xgetDreamCruiseDeparturePort()
Get the departure port of dream cruise?
|
Object |
xgetMysticBinding()
Get the value of mystic binding.
|
protected HpCBPurpose |
xhandleOrSQPurposeChange() |
protected void |
xhandleOrSQPurposeClose(HpCBPurpose originalPurpose) |
boolean |
xhasDreamCruiseTicket()
Do you have a Dream Cruise ticket?
|
protected Method |
xhelpGettingCBChainMethod(Class<?> type,
String methodName,
Class<?>[] argTypes) |
protected Object |
xhelpInvokingCBChainMethod(Class<?> type,
Method method,
Object[] args) |
protected void |
xinheritInvalidQueryInfo(ConditionQuery mainCQ) |
protected void |
xinheritStructurePossibleInnerJoin(ConditionQuery mainCQ) |
protected void |
xinheritSubQueryInfo(ConditionQuery mainCQ) |
protected void |
xinheritThatsBadTiming(ConditionQuery mainCQ) |
protected void |
xinheritWhereUsedInnerJoin(ConditionQuery mainCQ) |
boolean |
xisDreamCruiseDeparturePort()
Is this condition-bean departure port for dream cruise?
|
boolean |
xisDreamCruiseShip()
Is this condition-bean for dream cruise?
|
void |
xkeepDreamCruiseJourneyLogBook(String relationPath)
Keep journey log-book of Dream Cruise.
|
void |
xmarkAsDeparturePortForDreamCruise()
Mark as departure port for dream cruise.
|
protected <CB extends ConditionBean> |
xnewCalcSpecification(SpecifyQuery<CB> calcSp,
ConditionBean baseCB) |
protected <CB extends ConditionBean> |
xorSQ(CB cb,
OrQuery<CB> orQuery) |
protected <CB extends ConditionBean> |
xorSQAP(CB cb,
AndQuery<CB> andQuery) |
protected void |
xprepareSubQueryInfo(ConditionQuery mainCQ) |
protected abstract void |
xprepareSyncQyCall(ConditionBean mainCB) |
protected <CB extends ConditionBean> |
xregisterColQyClause(QueryClause queryClause,
HpCalcSpecification<CB> leftCalcSp,
HpCalcSpecification<CB> rightCalcSp) |
void |
xregisterUnionQuerySynchronizer(UnionQuery<ConditionBean> unionQuerySynchronizer)
Register union-query synchronizer.
|
protected void |
xsaveUCB(ConditionBean unionCB) |
void |
xsetPaging(boolean paging)
Set whether the execution for paging(NOT count).
|
void |
xsetupForColumnQuery(ConditionBean mainCB) |
void |
xsetupForDerivedReferrer(ConditionQuery mainCQ) |
void |
xsetupForDreamCruise(ConditionBean mainCB) |
void |
xsetupForExistsReferrer(ConditionQuery mainCQ) |
void |
xsetupForInScopeRelation(ConditionQuery mainCQ) |
void |
xsetupForMyselfExists(ConditionQuery mainCQ) |
void |
xsetupForMyselfInScope(ConditionQuery mainCQ) |
void |
xsetupForOrScopeQuery() |
void |
xsetupForQueryInsert()
Set up condition-bean for QueryInsert.
|
void |
xsetupForScalarCondition(ConditionQuery mainCQ) |
void |
xsetupForScalarConditionPartitionBy(ConditionQuery mainCQ) |
void |
xsetupForScalarSelect()
Set up condition-bean for ScalarSelect.
|
void |
xsetupForSpecifiedUpdate()
Set up condition-bean for SpecifiedUpdate.
|
void |
xsetupForUnion(ConditionBean mainCB) |
void |
xsetupForVaryingUpdate()
Set up condition-bean for VaryingUpdate.
|
ConditionBean |
xsetupSelectCountIgnoreFetchScope(boolean uniqueCount)
Set up various things for select-count-ignore-fetch-scope.
|
void |
xsetupSelectDreamCruiseJourneyLogBook()
Set up select for journey log-book of Dream Cruise.
|
void |
xsetupSelectDreamCruiseJourneyLogBookIfUnionExists()
Set up select for journey log-book of Dream Cruise if union query exists.
|
SpecifiedColumn |
xshowDreamCruiseTicket()
Show me your Dream Cruise ticket.
|
protected void |
xsyncUQ(ConditionBean unionCB)
Synchronize union-query.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddOrderBy_PK_Asc, addOrderBy_PK_Desc, asTableDbName, hasSpecifiedColumn, hasUnionQueryOrUnionAllQuery, localCQ, localSpprotected final SqlClause _sqlClause
protected boolean _pagingCountLater
protected boolean _pagingReSelect
protected boolean _pagingSelectAndQuerySplit
protected List<ConditionBean> _unionCBeanList
protected UnionQuery<ConditionBean> _unionQuerySynchronizer
protected HpCBPurpose _purpose
protected boolean _locked
protected boolean _departurePortForDreamCruise
protected ConditionBean _dreamCruiseDeparturePort
protected SpecifiedColumn _dreamCruiseTicket
protected List<String> _dreamCruiseJourneyLogBook
protected Object _mysticBinding
protected int _safetyMaxResultSize
protected CursorSelectOption _cursorSelectOption
protected StatementConfig _statementConfig
protected boolean _canRelationMappingCache
protected boolean _nonSpecifiedColumnAccessAllowed
protected boolean _undefinedClassificationSelectAllowed
protected boolean _queryUpdateCountPreCheck
protected DerivedTypeHandler _derivedTypeHandler
protected BoundDateDisplayStyle _logDateDisplayStyle
protected boolean _isSelectCountIgnoreFetchScope
public SqlClause getSqlClause()
getSqlClause インタフェース内 ConditionBeanprotected abstract SqlClause createSqlClause()
public DBMeta asDBMeta()
asDBMeta インタフェース内 ConditionBeanprotected abstract DBMetaProvider getDBMetaProvider()
protected void doSetupSelect(AbstractConditionBean.SsCall callback)
protected void assertSetupSelectPurpose(String foreignPropertyName)
protected void throwSetupSelectIllegalPurposeException(String className, String foreignPropertyName)
protected <CQ extends ConditionQuery> HpSpQyCall<CQ> xcreateSpQyCall(HpSpQyHas<CQ> has, HpSpQyQy<CQ> qy)
protected void assertSpecifyPurpose()
protected void throwSpecifyIllegalPurposeException()
protected void assertQueryPurpose()
protected void throwQueryIllegalPurposeException()
public void enableInnerJoinAutoDetect()
o You should call this before registrations of where clause. o Union and SubQuery and other sub condition-bean inherit this. o You should confirm your SQL on the log to be tuned by inner-join correctly.
enableInnerJoinAutoDetect インタフェース内 ConditionBeanpublic void disableInnerJoinAutoDetect()
disableInnerJoinAutoDetect インタフェース内 ConditionBeanprotected <CB extends ConditionBean> ColumnCalculator xcolqy(CB leftCB, CB rightCB, SpecifyQuery<CB> leftSp, SpecifyQuery<CB> rightSp, String operand)
protected <CB extends ConditionBean> HpColQyOperand<CB> xcreateColQyOperand(HpColQyHandler<CB> handler)
protected <CB extends ConditionBean> HpColQyOperand.HpExtendedColQyOperandMySql<CB> xcreateColQyOperandMySql(HpColQyHandler<CB> handler)
protected <CB extends ConditionBean> String xbuildColQyLeftColumn(CB leftCB, HpCalcSpecification<CB> leftCalcSp)
protected <CB extends ConditionBean> String xbuildColQyRightColumn(CB rightCB, HpCalcSpecification<CB> rightCalcSp)
protected <CB extends ConditionBean> ColumnRealName xextractColQyColumnRealName(CB cb, HpCalcSpecification<CB> calcSp)
protected <CB extends ConditionBean> ColumnRealName xdoExtractColQyColumnMysticBinding(CB cb, Object mysticBinding)
protected <CB extends ConditionBean> ColumnRealName xdoExtractColQyColumnSpecifiedColumn(HpCalcSpecification<CB> calcSp)
protected <CB extends ConditionBean> String xbuildColQyColumn(CB cb, String source, String themeKey)
protected <CB extends ConditionBean> HpCalcSpecification<CB> xcreateCalcSpecification(SpecifyQuery<CB> calcSp)
protected <CB extends ConditionBean> HpCalcSpecification<CB> xnewCalcSpecification(SpecifyQuery<CB> calcSp, ConditionBean baseCB)
protected <CB extends ConditionBean> QueryClause xcreateColQyClause(String leftColumn, String operand, String rightColumn, HpCalcSpecification<CB> rightCalcSp)
protected String xbuildColQyClause(String leftExp, String operand, String rightExp)
protected boolean hasSubQueryEndOnLastLine(String columnExp)
protected String reflectToSubQueryEndOnLastLine(String columnExp, String inserted)
protected <CB extends ConditionBean> void xregisterColQyClause(QueryClause queryClause, HpCalcSpecification<CB> leftCalcSp, HpCalcSpecification<CB> rightCalcSp)
protected <CB extends ConditionBean> QueryUsedAliasInfo xcreateColQyAliasInfo(HpCalcSpecification<CB> calcSp)
public void overTheWaves(SpecifiedColumn dreamCruiseTicket)
e.g. member that purchases products only purchased by the member
cb.query().existsPurchaseList(purchaseCB -> {
purchaseCB.query().queryProduct().notExistsPurchaseList(productPurchaseCB -> {
productPurchaseCB.columnQuery(colCB -> {
colCB.specify().columnMemberId();
}).notEqual(colCB -> {
colCB.overTheWaves(cb.dreamCruiseCB().specify().columnMemberId());
});
});
});
overTheWaves インタフェース内 WelcomeToDreamCruisedreamCruiseTicket - The ticket column specified by your Dream Cruise. (NotNull)public SpecifiedColumn inviteDerivedToDreamCruise(String derivedAlias)
inviteDerivedToDreamCruise インタフェース内 ConditionBeanderivedAlias - The alias name for derived column. (NotNull)public ConditionBean xcreateDreamCruiseCB()
xcreateDreamCruiseCB インタフェース内 ConditionBeanprotected abstract ConditionBean xdoCreateDreamCruiseCB()
public void xmarkAsDeparturePortForDreamCruise()
xmarkAsDeparturePortForDreamCruise インタフェース内 ConditionBeanpublic boolean xisDreamCruiseDeparturePort()
xisDreamCruiseDeparturePort インタフェース内 ConditionBeanpublic boolean xisDreamCruiseShip()
xisDreamCruiseShip インタフェース内 ConditionBeanpublic ConditionBean xgetDreamCruiseDeparturePort()
xgetDreamCruiseDeparturePort インタフェース内 ConditionBeanpublic boolean xhasDreamCruiseTicket()
xhasDreamCruiseTicket インタフェース内 ConditionBeanpublic SpecifiedColumn xshowDreamCruiseTicket()
xshowDreamCruiseTicket インタフェース内 ConditionBeanpublic void xkeepDreamCruiseJourneyLogBook(String relationPath)
xkeepDreamCruiseJourneyLogBook インタフェース内 ConditionBeanrelationPath - The path of relation. (NotNull)public void xsetupSelectDreamCruiseJourneyLogBook()
xsetupSelectDreamCruiseJourneyLogBook インタフェース内 ConditionBeanpublic void xsetupSelectDreamCruiseJourneyLogBookIfUnionExists()
protected void xdoSetupSelectDreamCruiseJourneyLogBook()
protected void xassertDreamCruiseShip()
public void mysticRhythms(Object mysticBinding)
e.g. ColumnQuery: ... > '2015/04/05' + (PURCHASE_COUNT days)
cb.columnQuery(colCB -> {
colCB.column...();
}).greaterThan(colCB -> {
colCB.mysticRhythms(toDate("2015/04/05"));
}).convert(op -> op.addDay(cb.dreamCruiseCB().specify().columnPurchaseCount());
mysticRhythms インタフェース内 WelcomeToDreamCruisemysticBinding - The mystic value of the column e.g. to compare with other column. (NotNull)public Object xgetMysticBinding()
xgetMysticBinding インタフェース内 ConditionBeanprotected <CB extends ConditionBean> void xorSQ(CB cb, OrQuery<CB> orQuery)
protected <CB extends ConditionBean> void xdoOrSQ(CB cb, OrQuery<CB> orQuery)
protected HpCBPurpose xhandleOrSQPurposeChange()
protected void xhandleOrSQPurposeClose(HpCBPurpose originalPurpose)
protected <CB extends ConditionBean> void xorSQAP(CB cb, AndQuery<CB> andQuery)
public void ignoreNullOrEmptyQuery()
memberBhv.selectList(cb -> { cb.ignoreNullOrEmptyQuery(); cb.query().setMemberName_Equal(null); // no condition (ignored) cb.query().setMemberName_Equal(""); // no condition (ignored) cb.query().setMemberName_Equal(" "); // valid (MEMBER_NAME = ' ') });You should call this before registrations of where clause and other queries.
ignoreNullOrEmptyQuery インタフェース内 ConditionBeanpublic void checkNullOrEmptyQuery()
checkNullOrEmptyQuery インタフェース内 ConditionBeanpublic void enableEmptyStringQuery(ModeQuery noArgInLambda)
enableEmptyStringQuery インタフェース内 ConditionBeannoArgInLambda - The callback for empty-string query. (NotNull)protected void doEnableEmptyStringQuery()
public void disableEmptyStringQuery()
disableEmptyStringQuery インタフェース内 ConditionBeanpublic void enableOverridingQuery(ModeQuery noArgInLambda)
enableOverridingQuery インタフェース内 ConditionBeannoArgInLambda - The callback for overriding query. (NotNull)protected void doEnableOverridingQuery()
public void disableOverridingQuery()
disableOverridingQuery インタフェース内 ConditionBeanpublic void acceptPrimaryKeyMap(Map<String,? extends Object> primaryKeyMap)
acceptPrimaryKeyMap インタフェース内 ConditionBeanprimaryKeyMap - The map of primary-keys. (NotNull and NotEmpty)public boolean isPaging()
isPaging インタフェース内 PagingBeanpublic boolean canPagingCountLater()
canPagingCountLater インタフェース内 PagingBeanpublic boolean canPagingReSelect()
canPagingReSelect インタフェース内 PagingBeanpublic void paging(int pageSize,
int pageNumber)
e.g. ConditionBean
MemberCB cb = new MemberCB();
cb.query().setMemberName_PrefixSearch("S");
cb.query().addOrderBy_Birthdate_Desc();
cb.paging(20, 3); // 20 records per a page and current page number is 3
PagingResultBean<Member> page = memberBhv.selectPage(cb);
paging インタフェース内 PagingBeanpageSize - The page size per one page. (NotMinus, NotZero)pageNumber - The number of page. It's ONE origin. (NotMinus, NotZero: If it's minus or zero, it treats as one.)protected void throwPagingPageSizeNotPlusException(int pageSize,
int pageNumber)
public void xsetPaging(boolean paging)
xsetPaging インタフェース内 PagingBeanpaging - Determination.public void enablePagingCountLater()
enablePagingCountLater インタフェース内 PagingBeanpublic void disablePagingCountLater()
disablePagingCountLater インタフェース内 PagingBeanpublic void enablePagingReSelect()
enablePagingReSelect インタフェース内 PagingBeanpublic void disablePagingReSelect()
disablePagingReSelect インタフェース内 PagingBeanpublic void enablePagingCountLeastJoin()
enablePagingCountLeastJoin インタフェース内 ConditionBeanpublic void disablePagingCountLeastJoin()
disablePagingCountLeastJoin インタフェース内 ConditionBeanpublic boolean canPagingSelectAndQuerySplit()
canPagingSelectAndQuerySplit インタフェース内 ConditionBeanpublic void enablePagingSelectAndQuerySplit()
Cannot use this: o if no PK or compound PK table (exception is thrown) o if SpecifiedDerivedOrderBy or not Paging (but no exception) Automatically Changed: o disable PagingCountLater (to suppress rows calculation)
public void disablePagingSelectAndQuerySplit()
public PagingBean fetchFirst(int fetchSize)
fetchFirst インタフェース内 PagingBeanfetchSize - The size of fetch. (NotMinus, NotZero)public PagingBean xfetchScope(int fetchStartIndex, int fetchSize)
xfetchScope インタフェース内 PagingBeanfetchStartIndex - The start index of fetch. 0 origin. (NotMinus)fetchSize - The size of fetch. (NotMinus, NotZero)public PagingBean xfetchPage(int fetchPageNumber)
xfetchPage インタフェース内 PagingBeanfetchPageNumber - The page number of fetch. 1 origin. (NotMinus, NotZero: If minus or zero, set one.)public <ENTITY> PagingInvoker<ENTITY> createPagingInvoker(String tableDbName)
createPagingInvoker インタフェース内 PagingBeanENTITY - The type of entity.tableDbName - The DB name of table. (NotNull)public int getFetchStartIndex()
getFetchStartIndex インタフェース内 PagingBeanpublic int getFetchSize()
getFetchSize インタフェース内 PagingBeanpublic int getFetchPageNumber()
getFetchPageNumber インタフェース内 PagingBeanpublic int getPageStartIndex()
getPageStartIndex インタフェース内 PagingBeanpublic int getPageEndIndex()
getPageEndIndex インタフェース内 PagingBeanpublic boolean isFetchScopeEffective()
isFetchScopeEffective インタフェース内 PagingBeanpublic String getSelectHint()
public String getFromBaseTableHint()
public String getFromHint()
public String getSqlSuffix()
public void checkSafetyResult(int safetyMaxResultSize)
checkSafetyResult インタフェース内 FetchBeansafetyMaxResultSize - The max size of safety result. (if zero or minus, checking is invalid)public int getSafetyMaxResultSize()
getSafetyMaxResultSize インタフェース内 FetchBeanpublic int getFetchNarrowingSkipStartIndex()
getFetchNarrowingSkipStartIndex インタフェース内 FetchNarrowingBeanpublic int getFetchNarrowingLoopCount()
getFetchNarrowingLoopCount インタフェース内 FetchNarrowingBeanpublic boolean isFetchNarrowingSkipStartIndexEffective()
isFetchNarrowingSkipStartIndexEffective インタフェース内 FetchNarrowingBeanpublic boolean isFetchNarrowingLoopCountEffective()
isFetchNarrowingLoopCountEffective インタフェース内 FetchNarrowingBeanpublic boolean isFetchNarrowingEffective()
isFetchNarrowingEffective インタフェース内 FetchNarrowingBeanpublic void xdisableFetchNarrowing()
xdisableFetchNarrowing インタフェース内 FetchNarrowingBeanpublic void xenableIgnoredFetchNarrowing()
xenableIgnoredFetchNarrowing インタフェース内 FetchNarrowingBeanpublic String getOrderByClause()
getOrderByClause インタフェース内 OrderByBeanpublic OrderByClause getOrderByComponent()
getOrderByComponent インタフェース内 OrderByBeanpublic OrderByBean clearOrderBy()
clearOrderBy インタフェース内 OrderByBeanpublic ConditionBean lockForUpdate()
lockForUpdate インタフェース内 ConditionBeanpublic ConditionBean xsetupSelectCountIgnoreFetchScope(boolean uniqueCount)
xsetupSelectCountIgnoreFetchScope インタフェース内 ConditionBeanuniqueCount - Is it unique-count select?public ConditionBean xafterCareSelectCountIgnoreFetchScope()
xafterCareSelectCountIgnoreFetchScope インタフェース内 ConditionBeanpublic boolean isSelectCountIgnoreFetchScope()
isSelectCountIgnoreFetchScope インタフェース内 ConditionBeanpublic CursorSelectOption getCursorSelectOption()
getCursorSelectOption インタフェース内 ConditionBeanprotected void doAcceptCursorSelectOption(SVOptionCall<CursorSelectOption> opLambda)
protected CursorSelectOption newCursorSelectOption()
public void xacceptScalarSelectOption(ScalarSelectOption option)
xacceptScalarSelectOption インタフェース内 ConditionBeanoption - The option for ScalarSelect. (NullAllowed)public void configure(StatementConfigCall<StatementConfig> confLambda)
cb.configure(conf -> conf.queryTimeout(3));
configure インタフェース内 ConditionBeanconfLambda - The callback for configuration of statement. (NotNull)protected void assertStatementConfigNotDuplicated(StatementConfigCall<StatementConfig> configCall)
protected StatementConfig createStatementConfig(StatementConfigCall<StatementConfig> configCall)
protected StatementConfig newStatementConfig()
public StatementConfig getStatementConfig()
getStatementConfig インタフェース内 ConditionBeanpublic void disableRelationMappingCache()
public boolean canRelationMappingCache()
canRelationMappingCache インタフェース内 ConditionBeanpublic void enableNonSpecifiedColumnAccess()
memberBhv.selectEntity(cb -> { cb.setupSelect_MemberStatus(); cb.specify().columnMemberStatusName(); cb.query().set... }).alwaysPresent(member -> { member.getMemberStatus().alwaysPresent(status -> { ... = status.getMemberStatusName(); // OK ... = status.getDisplayOrder(); // OK: allowed }); });
enableNonSpecifiedColumnAccess インタフェース内 ConditionBeanpublic void disableNonSpecifiedColumnAccess()
memberBhv.selectEntity(cb -> { cb.setupSelect_MemberStatus(); cb.specify().columnMemberStatusName(); cb.query().set... }).alwaysPresent(member -> { member.getMemberStatus().alwaysPresent(status -> { ... = status.getMemberStatusName(); // OK ... = status.getDisplayOrder(); // *NG: exception }); });
disableNonSpecifiedColumnAccess インタフェース内 ConditionBeanpublic boolean isNonSpecifiedColumnAccessAllowed()
isNonSpecifiedColumnAccessAllowed インタフェース内 ConditionBeanpublic void enableUndefinedClassificationSelect()
enableUndefinedClassificationSelect インタフェース内 ConditionBeanpublic void disableUndefinedClassificationSelect()
disableUndefinedClassificationSelect インタフェース内 ConditionBeanpublic boolean isUndefinedClassificationSelectAllowed()
isUndefinedClassificationSelectAllowed インタフェース内 ConditionBeanpublic void enableColumnNullObject()
enableColumnNullObject インタフェース内 ConditionBeanpublic void disableColumnNullObject()
disableColumnNullObject インタフェース内 ConditionBeanpublic void enableQueryUpdateCountPreCheck()
enableQueryUpdateCountPreCheck インタフェース内 ConditionBeanpublic void disableQueryUpdateCountPreCheck()
disableQueryUpdateCountPreCheck インタフェース内 ConditionBeanpublic boolean isQueryUpdateCountPreCheck()
isQueryUpdateCountPreCheck インタフェース内 ConditionBeanpublic void embedCondition(Set<ColumnInfo> embeddedColumnInfoSet, boolean quote)
embeddedColumnInfoSet - The set of embedded target column information. (NotNull)quote - Should the conditions value be quoted?public String toDisplaySql()
toDisplaySql インタフェース内 ConditionBeanprotected abstract SqlAnalyzerFactory getSqlAnalyzerFactory()
protected BoundDateDisplayStyle createConfiguredBoundDateDisplayStyle()
protected abstract String getConfiguredLogDatePattern()
protected abstract String getConfiguredLogTimestampPattern()
protected abstract String getConfiguredLogTimePattern()
protected abstract BoundDateDisplayTimeZoneProvider getConfiguredLogTimeZoneProvider()
protected static String convertConditionBean2DisplaySql(SqlAnalyzerFactory factory, ConditionBean cb, BoundDateDisplayStyle dateDisplayStyle)
public void styleLogDateDisplay(BoundDateDisplayStyle logDateDisplayStyle)
styleLogDateDisplay インタフェース内 ConditionBeanlogDateDisplayStyle - The display style of date for logging. (NullAllowed: if null, configured default style)public BoundDateDisplayStyle getLogDateDisplayStyle()
getLogDateDisplayStyle インタフェース内 ConditionBeanpublic boolean hasWhereClauseOnBaseQuery()
hasWhereClauseOnBaseQuery インタフェース内 ConditionBeanpublic void clearWhereClauseOnBaseQuery()
clearWhereClauseOnBaseQuery インタフェース内 ConditionBeanpublic boolean hasSelectAllPossible()
o no where clause on base query o no where clause in base table in-line view o union queries with select-all possible
hasSelectAllPossible インタフェース内 ConditionBeanpublic boolean hasOrderByClause()
hasOrderByClause インタフェース内 ConditionBeanpublic void invokeSetupSelect(String foreignPropertyNamePath)
PurchaseCB cb = new PurchaseCB(); cb.setupSelect_Member().withMemberStatus();A method with parameters (using fixed condition) is unsupported.
invokeSetupSelect インタフェース内 ConditionBeanforeignPropertyNamePath - The path string. (NotNull, NotTrimmedEmpty)public SpecifiedColumn invokeSpecifyColumn(String columnPropertyPath)
PurchaseCB cb = new PurchaseCB(); cb.specify().columnPurchaseDatetime();And if this is based on PURCHASE, 'member.memberName' means as follows:
PurchaseCB cb = new PurchaseCB(); cb.specify().specifyMember().columnMemberName();
invokeSpecifyColumn インタフェース内 ConditionBeancolumnPropertyPath - The path string to property for the column. (NotNull, NotTrimmedEmpty)public void invokeOrScopeQuery(OrQuery<ConditionBean> orQuery)
invokeOrScopeQuery インタフェース内 ConditionBeanorQuery - The callback for or-query. (NotNull)public void invokeOrScopeQueryAndPart(AndQuery<ConditionBean> andQuery)
invokeOrScopeQueryAndPart インタフェース内 ConditionBeanandQuery - The callback for and-query. (NotNull)protected Method xhelpGettingCBChainMethod(Class<?> type, String methodName, Class<?>[] argTypes)
protected Object xhelpInvokingCBChainMethod(Class<?> type, Method method, Object[] args)
protected void xsaveUCB(ConditionBean unionCB)
protected void xsyncUQ(ConditionBean unionCB)
unionCB - The condition-bean for union. (NotNull)public void xregisterUnionQuerySynchronizer(UnionQuery<ConditionBean> unionQuerySynchronizer)
xregisterUnionQuerySynchronizer インタフェース内 ConditionBeanunionQuerySynchronizer - The synchronizer of union query. (NullAllowed)protected String decryptIfNeeds(ColumnInfo columnInfo, String valueExp)
public DerivedTypeHandler xgetDerivedTypeHandler()
xgetDerivedTypeHandler インタフェース内 ConditionBeanprotected DerivedTypeHandler xcreateDerivedTypeHandler()
protected Class<?> xfindDerivedMappingTypeOfCount(HpDerivingSubQueryInfo derivingInfo)
protected Class<?> xfindDerivedMappingTypeOfMax(HpDerivingSubQueryInfo derivingInfo)
protected Class<?> xfindDerivedMappingTypeOfMin(HpDerivingSubQueryInfo derivingInfo)
protected Class<?> xfindDerivedMappingTypeOfSum(HpDerivingSubQueryInfo derivingInfo)
protected Class<?> xfindDerivedMappingTypeOfAvg(HpDerivingSubQueryInfo derivingInfo)
protected Class<?> xfindDerivedMappingTypeOfDefault(HpDerivingSubQueryInfo derivingInfo)
public Object xconvertToDerivedMapValue(HpDerivingSubQueryInfo derivingInfo, Object value)
protected HpSDRFunctionFactory xcSDRFnFc()
protected <LOCAL_CQ extends ConditionQuery,REFERRER_CB extends ConditionBean> HpSDRFunction<REFERRER_CB,LOCAL_CQ> newSDFFunction(ConditionBean baseCB, LOCAL_CQ localCQ, HpSDRSetupper<REFERRER_CB,LOCAL_CQ> querySetupper, DBMetaProvider dbmetaProvider, DerivedReferrerOptionFactory optionFactory)
REFERRER_CB - The type of referrer condition-bean.LOCAL_CQ - The type of local condition-query.baseCB - The condition-bean of base table. (NotNull)localCQ - The condition-query of local table. (NotNull)querySetupper - The set-upper of sub-query for (specify) derived-referrer. (NotNull)dbmetaProvider - The provider of DB meta. (NotNull)optionFactory - The factory of option for (specify) derived-referrer. (NotNull)protected DerivedReferrerOptionFactory createSpecifyDerivedReferrerOptionFactory()
protected DerivedReferrerOption newSpecifyDerivedReferrerOption()
public void useInScopeSubQuery()
cb.query().existsPurchase(purchaseCB -> {
purchaseCB.useInScopeSubQuery();
purchaseCB.query().set...
purchaseCB.query().set...
});
public HpCBPurpose getPurpose()
getPurpose インタフェース内 ConditionBeanpublic void xsetupForUnion(ConditionBean mainCB)
public void xsetupForExistsReferrer(ConditionQuery mainCQ)
public void xsetupForInScopeRelation(ConditionQuery mainCQ)
public void xsetupForDerivedReferrer(ConditionQuery mainCQ)
public void xsetupForScalarSelect()
ConditionBeanxsetupForScalarSelect インタフェース内 ConditionBeanpublic void xsetupForScalarCondition(ConditionQuery mainCQ)
public void xsetupForScalarConditionPartitionBy(ConditionQuery mainCQ)
public void xsetupForMyselfExists(ConditionQuery mainCQ)
public void xsetupForMyselfInScope(ConditionQuery mainCQ)
public void xsetupForQueryInsert()
ConditionBeanxsetupForQueryInsert インタフェース内 ConditionBeanpublic void xsetupForColumnQuery(ConditionBean mainCB)
public void xsetupForOrScopeQuery()
public void xsetupForDreamCruise(ConditionBean mainCB)
public void xsetupForVaryingUpdate()
xsetupForVaryingUpdate インタフェース内 ConditionBeanpublic void xsetupForSpecifiedUpdate()
xsetupForSpecifiedUpdate インタフェース内 ConditionBeanprotected void xinheritSubQueryInfo(ConditionQuery mainCQ)
protected void xprepareSubQueryInfo(ConditionQuery mainCQ)
protected void xchangePurposeSqlClause(HpCBPurpose purpose, ConditionQuery mainCQ)
protected void xinheritInvalidQueryInfo(ConditionQuery mainCQ)
protected void xinheritStructurePossibleInnerJoin(ConditionQuery mainCQ)
protected void xinheritWhereUsedInnerJoin(ConditionQuery mainCQ)
protected void xinheritThatsBadTiming(ConditionQuery mainCQ)
protected abstract void xprepareSyncQyCall(ConditionBean mainCB)
protected boolean isLocked()
protected void lock()
protected void unlock()
public void enableThatsBadTiming()
enableThatsBadTiming インタフェース内 ConditionBeanpublic void disableThatsBadTiming()
disableThatsBadTiming インタフェース内 ConditionBeanprotected void assertOptionThatBadTiming(String optionName)
protected ConditionBeanExceptionThrower createCBExThrower()
protected void assertObjectNotNull(String variableName, Object value)
variableName - The check name of variable for message. (NotNull)value - The checked value. (NotNull)IllegalArgumentException - When the argument is null.protected void assertStringNotNullAndNotTrimmedEmpty(String variableName, String value)
variableName - The check name of variable for message. (NotNull)value - The checked value. (NotNull)IllegalArgumentException - When the argument is null or empty.protected String ln()
Copyright © 2014–2015 The DBFlute Project. All rights reserved.