H - Type of home tableI - Type of intermediate tableT - Type of target tablepublic class CompositeIndexedSQLValue<H extends DataObject,I extends DataObject,T extends DataObject> extends java.lang.Object implements IndexedSQLValue<H,T>, GroupingSQLValue<IndexedReference>
IndexedSQLValue that extends through a join| Constructor and Description |
|---|
CompositeIndexedSQLValue(IndexedSQLValue<H,I> base,
IndexedSQLValue<I,T> branch) |
| Modifier and Type | Method and Description |
|---|---|
int |
add(java.lang.StringBuilder sb,
boolean qualify)
Add the expression to a StringBuilder
|
DataObjectFactory<T> |
getFactory()
get the remote
DataObjectFactory |
SQLFilter<H> |
getFilter(MatchCondition match,
IndexedReference val)
Create a
SQLFilter comparing against the target value |
java.lang.Class<H> |
getFilterType()
get the type bounds on the produced
SQLFilter. |
SQLExpression<java.lang.Integer> |
getIDExpression()
Get a Integer valued
SQLExpression for the id of the referenced value. |
SQLFilter<H> |
getNullFilter(boolean is_null)
create a
SQLFilter checking if the target value is or is not null. |
SQLFilter<H> |
getOrderFilter(boolean descending)
create a
SQLFilter that orders results by the target value. |
java.util.List<PatternArgument> |
getParameters(java.util.List<PatternArgument> list)
Add parameters for this value to a list.
|
SQLFilter |
getRequiredFilter()
Get an SQLFilter required to be added to the filter set.
|
SQLFilter<H> |
getSQLFilter(SQLFilter<T> fil)
Create a filter for the home table out of a a filter on the target object.
|
java.lang.Class<IndexedReference> |
getTarget()
Get the type of the returned object as far as it is known.
|
IndexedReference<T> |
makeObject(java.sql.ResultSet rs,
int pos)
Extract a result of the expression from a ResultSet into an object of the specified type.
|
java.lang.String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddGroup, checkContentsCanGroup, getGroupParameters, groupingIsomorphicpublic CompositeIndexedSQLValue(IndexedSQLValue<H,I> base, IndexedSQLValue<I,T> branch) throws CannotFilterException
CannotFilterExceptionpublic int add(java.lang.StringBuilder sb,
boolean qualify)
SQLValueadd in interface SQLValue<IndexedReference>sb - StringBuilder to modifyqualify - boolean should fields be qualified with the table namepublic java.util.List<PatternArgument> getParameters(java.util.List<PatternArgument> list)
SQLValuegetParameters in interface SQLValue<IndexedReference>list - to modifypublic IndexedReference<T> makeObject(java.sql.ResultSet rs, int pos) throws DataException, java.sql.SQLException
SQLValuemakeObject in interface SQLValue<IndexedReference>rs - ResultSetDataExceptionjava.sql.SQLExceptionpublic SQLFilter getRequiredFilter()
SQLValuegetRequiredFilter in interface SQLValue<IndexedReference>public java.lang.Class<IndexedReference> getTarget()
TargettedgetTarget in interface Targetted<IndexedReference>public SQLFilter<H> getFilter(MatchCondition match, IndexedReference val) throws CannotFilterException, NoSQLFilterException
FilterProviderSQLFilter comparing against the target valuegetFilter in interface FilterProvider<H extends DataObject,IndexedReference>SQLFilterCannotFilterExceptionNoSQLFilterExceptionpublic SQLFilter<H> getNullFilter(boolean is_null) throws CannotFilterException, NoSQLFilterException
FilterProviderSQLFilter checking if the target value is or is not null.getNullFilter in interface FilterProvider<H extends DataObject,IndexedReference>SQLFilterCannotFilterExceptionNoSQLFilterExceptionpublic SQLFilter<H> getOrderFilter(boolean descending) throws CannotFilterException, NoSQLFilterException
FilterProviderSQLFilter that orders results by the target value. This may involve joins so
may not be just an OrderFilter though it will contain one.getOrderFilter in interface FilterProvider<H extends DataObject,IndexedReference>SQLFilterCannotFilterExceptionNoSQLFilterExceptionpublic java.lang.Class<H> getFilterType()
FilterProviderSQLFilter.getFilterType in interface FilterProvider<H extends DataObject,IndexedReference>public SQLFilter<H> getSQLFilter(SQLFilter<T> fil) throws CannotFilterException
IndexedSQLValuegetSQLFilter in interface IndexedSQLValue<H extends DataObject,T extends DataObject>SQLFilterCannotFilterExceptionpublic DataObjectFactory<T> getFactory() throws java.lang.Exception
IndexedSQLValueDataObjectFactorygetFactory in interface IndexedSQLValue<H extends DataObject,T extends DataObject>DataObjectFactoryjava.lang.Exceptionpublic java.lang.String toString()
toString in class java.lang.Objectpublic SQLExpression<java.lang.Integer> getIDExpression()
IndexedSQLValueSQLExpression for the id of the referenced value.
This is used to provide match filters for two references.getIDExpression in interface IndexedSQLValue<H extends DataObject,T extends DataObject>SQLExpression