|
Project Wonder 5.0 | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Objectcom.webobjects.eocontrol.EOQualifier
er.extensions.eof.qualifiers.ERXQualifierInSubquery
public class ERXQualifierInSubquery
Generates a subquery for the qualifier given in argument:
EOQualifier q = EOQualifier.qualifierWithQualifierFormat("firstName = 'Max'", null);
ERXQualifierInSubquery qq = new ERXQualifierInSubquery(q, "User", "group");
EOFetchSpecification fs = new EOFetchSpecification("Group", qq, null);
Would generate: "SELECT t0.GROUP_ID, t0.NAME FROM USER t0 WHERE t0.GROUP_ID
IN ( SELECT t0.GROUP_ID FROM GROUP t0 WHERE t0.NAME = ? ) "
This class can be used to work around the EOF bug where OR queries involving
many-to-manies are incorrectly generated
It will also generate
... t0.FOREIGN_KEY_ID in (select t1.ID from X where [your qualifier here])
with the 3 arg constructor
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class com.webobjects.eocontrol.EOQualifier |
|---|
com.webobjects.eocontrol.EOQualifier.Comparison, com.webobjects.eocontrol.EOQualifier.ComparisonSupport, com.webobjects.eocontrol.EOQualifier.QualifierVariableSubstitutionException |
| Nested classes/interfaces inherited from interface com.webobjects.eoaccess.EOQualifierSQLGeneration |
|---|
com.webobjects.eoaccess.EOQualifierSQLGeneration._AndQualifierSupport, com.webobjects.eoaccess.EOQualifierSQLGeneration._KeyComparisonQualifierSupport, com.webobjects.eoaccess.EOQualifierSQLGeneration._KeyValueQualifierSupport, com.webobjects.eoaccess.EOQualifierSQLGeneration._NotQualifierSupport, com.webobjects.eoaccess.EOQualifierSQLGeneration._OrQualifierSupport, com.webobjects.eoaccess.EOQualifierSQLGeneration.Support |
| Field Summary | |
|---|---|
protected java.lang.String |
attributeName
holds the attribute name |
protected java.lang.String |
destinationAttName
holds the attribute name |
protected java.lang.String |
entityName
holds the entity name |
static org.apache.log4j.Logger |
log
logging support |
protected com.webobjects.eocontrol.EOQualifier |
qualifier
holds the subqualifier |
protected java.lang.String |
relationshipName
holds the relationship name |
| Fields inherited from class com.webobjects.eocontrol.EOQualifier |
|---|
_CLASS, QualifierOperatorCaseInsensitiveLike, QualifierOperatorContains, QualifierOperatorEqual, QualifierOperatorGreaterThan, QualifierOperatorGreaterThanOrEqualTo, QualifierOperatorLessThan, QualifierOperatorLessThanOrEqualTo, QualifierOperatorLike, QualifierOperatorNotEqual |
| Fields inherited from interface com.webobjects.eocontrol.EOQualifierEvaluation |
|---|
_CLASS |
| Constructor Summary | |
|---|---|
ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier)
Public single argument constructor. |
|
ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier,
java.lang.String entityName,
java.lang.String relationshipName)
|
|
ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier,
java.lang.String entityName,
java.lang.String attributeName,
java.lang.String destinationAttName)
|
|
| Method Summary | |
|---|---|
void |
addQualifierKeysToSet(com.webobjects.foundation.NSMutableSet aSet)
Only used with qualifier keys which are not supported in this qualifier at this time. |
java.lang.Object |
clone()
Implementation of the Clonable interface. |
boolean |
evaluateWithObject(java.lang.Object object)
|
com.webobjects.eocontrol.EOQualifier |
qualifierMigratedFromEntityRelationshipPath(com.webobjects.eoaccess.EOEntity anEntity,
java.lang.String aPath)
Implementation of the EOQualifierSQLGeneration interface. |
com.webobjects.eocontrol.EOQualifier |
qualifierWithBindings(com.webobjects.foundation.NSDictionary someBindings,
boolean requiresAll)
Creates another qualifier after replacing the values of the bindings. |
com.webobjects.eocontrol.EOQualifier |
schemaBasedQualifierWithRootEntity(com.webobjects.eoaccess.EOEntity anEntity)
Implementation of the EOQualifierSQLGeneration interface. |
java.lang.String |
sqlStringForSQLExpression(com.webobjects.eoaccess.EOSQLExpression e)
Generates the sql string for the given sql expression. |
java.lang.String |
toString()
Description of the qualifier |
void |
validateKeysWithRootClassDescription(com.webobjects.eocontrol.EOClassDescription aClassDescription)
This qualifier does not perform validation. |
| Methods inherited from class com.webobjects.eocontrol.EOQualifier |
|---|
_accept, _isEmpty, allQualifierKeys, allQualifierOperators, bindingKeys, filterArrayWithQualifier, filteredArrayWithQualifier, keyPathForBindingKey, operatorSelectorForSelectorNamed, operatorSelectorForString, qualifierToMatchAllValues, qualifierToMatchAnyValue, qualifierWithQualifierFormat, relationalQualifierOperators, stringForOperatorSelector |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final org.apache.log4j.Logger log
protected com.webobjects.eocontrol.EOQualifier qualifier
protected java.lang.String entityName
protected java.lang.String relationshipName
protected java.lang.String attributeName
protected java.lang.String destinationAttName
| Constructor Detail |
|---|
public ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier)
qualifier - sub qualifier
public ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier,
java.lang.String entityName,
java.lang.String relationshipName)
qualifier - sub qualifierentityName - of the sub qualificationrelationshipName - relationship name
public ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier,
java.lang.String entityName,
java.lang.String attributeName,
java.lang.String destinationAttName)
qualifier - sub qualifierentityName - of the sub qualificationattributeName - foreign key attribute namedestinationAttName - destination key name| Method Detail |
|---|
public void addQualifierKeysToSet(com.webobjects.foundation.NSMutableSet aSet)
addQualifierKeysToSet in class com.webobjects.eocontrol.EOQualifieraSet - of qualifier keys
public com.webobjects.eocontrol.EOQualifier qualifierWithBindings(com.webobjects.foundation.NSDictionary someBindings,
boolean requiresAll)
qualifierWithBindings in class com.webobjects.eocontrol.EOQualifiersomeBindings - some bindingsrequiresAll - tells if the qualifier requires all bindings
public void validateKeysWithRootClassDescription(com.webobjects.eocontrol.EOClassDescription aClassDescription)
validateKeysWithRootClassDescription in class com.webobjects.eocontrol.EOQualifieraClassDescription - to validation the qualifier keys against.public java.lang.String sqlStringForSQLExpression(com.webobjects.eoaccess.EOSQLExpression e)
sqlStringForSQLExpression in interface com.webobjects.eoaccess.EOQualifierSQLGeneratione - a given sql expression
public com.webobjects.eocontrol.EOQualifier schemaBasedQualifierWithRootEntity(com.webobjects.eoaccess.EOEntity anEntity)
schemaBasedQualifierWithRootEntity in interface com.webobjects.eoaccess.EOQualifierSQLGenerationanEntity - an entity.
public com.webobjects.eocontrol.EOQualifier qualifierMigratedFromEntityRelationshipPath(com.webobjects.eoaccess.EOEntity anEntity,
java.lang.String aPath)
qualifierMigratedFromEntityRelationshipPath in interface com.webobjects.eoaccess.EOQualifierSQLGenerationanEntity - an entityaPath - relationship path
public java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.Object clone()
clone in class com.webobjects.eocontrol.EOQualifierpublic boolean evaluateWithObject(java.lang.Object object)
evaluateWithObject in interface com.webobjects.eocontrol.EOQualifierEvaluationevaluateWithObject in class com.webobjects.eocontrol.EOQualifier
|
Last updated: Tue, Feb 21, 2017 05:45 PM CET | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||