|
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 qualifierpublic ERXQualifierInSubquery(com.webobjects.eocontrol.EOQualifier qualifier, java.lang.String entityName, java.lang.String relationshipName)
qualifier
- sub qualifierentityName
- of the sub qualificationrelationshipName
- relationship namepublic 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 nameMethod Detail |
---|
public void addQualifierKeysToSet(com.webobjects.foundation.NSMutableSet aSet)
addQualifierKeysToSet
in class com.webobjects.eocontrol.EOQualifier
aSet
- of qualifier keyspublic com.webobjects.eocontrol.EOQualifier qualifierWithBindings(com.webobjects.foundation.NSDictionary someBindings, boolean requiresAll)
qualifierWithBindings
in class com.webobjects.eocontrol.EOQualifier
someBindings
- some bindingsrequiresAll
- tells if the qualifier requires all bindings
public void validateKeysWithRootClassDescription(com.webobjects.eocontrol.EOClassDescription aClassDescription)
validateKeysWithRootClassDescription
in class com.webobjects.eocontrol.EOQualifier
aClassDescription
- to validation the qualifier keys against.public java.lang.String sqlStringForSQLExpression(com.webobjects.eoaccess.EOSQLExpression e)
sqlStringForSQLExpression
in interface com.webobjects.eoaccess.EOQualifierSQLGeneration
e
- a given sql expression
public com.webobjects.eocontrol.EOQualifier schemaBasedQualifierWithRootEntity(com.webobjects.eoaccess.EOEntity anEntity)
schemaBasedQualifierWithRootEntity
in interface com.webobjects.eoaccess.EOQualifierSQLGeneration
anEntity
- an entity.
public com.webobjects.eocontrol.EOQualifier qualifierMigratedFromEntityRelationshipPath(com.webobjects.eoaccess.EOEntity anEntity, java.lang.String aPath)
qualifierMigratedFromEntityRelationshipPath
in interface com.webobjects.eoaccess.EOQualifierSQLGeneration
anEntity
- an entityaPath
- relationship path
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.Object clone()
clone
in class com.webobjects.eocontrol.EOQualifier
public boolean evaluateWithObject(java.lang.Object object)
evaluateWithObject
in interface com.webobjects.eocontrol.EOQualifierEvaluation
evaluateWithObject
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 |