...
Code Block |
---|
public Number count${relationship.capitalizedName}() { return countForRelationship("${relationship.name}"); } public NumberEOQualifier qualifierFor${relationship.capitalizedName}() { return qualifierForRelationshipWithKey("${relationship.name}"); } |
...
Code Block |
---|
public EOQualifier qualifierForRelationshipWithKey(String aKey) { this.willRead(); if ((aKey != null)) { String anEntityName = this.entityName(); EOEntity anEntity = EOModelGroup.defaultGroup().entityNamed(anEntityName); EORelationship aRelationship = anEntity.relationshipNamed(aKey); if (aRelationship != null) { EOEditingContext anEditingContext = this.editingContext(); EOGlobalID aGlobalID = anEditingContext.globalIDForObject(this); String aModelName = anEntity.model().name(); EODatabaseContext aDatabaseContext = EOUtilities.databaseContextForModelNamed(anEditingContext, aModelName); aDatabaseContext.lock(); NSDictionary aRow = aDatabaseContext.snapshotForGlobalID(aGlobalID); aDatabaseContext.unlock(); EOQualifier aQualifier = aRelationship.qualifierWithSourceRow(aRow); return aQualifier; } } return null; } /** * Return count for the given relationship. */ public NumberInteger countForRelationship(String key) { EOQualifier qual = qualifierForRelationshipWithKey(key); if (qual != null) { String anEntityName = this.entityName(); EOEntity anEntity = EOModelGroup.defaultGroup().entityNamed(anEntityName); EORelationship aRelationship = anEntity.relationshipNamed(key); return ERXEOControlUtilities.objectCountWithQualifier(this.editingContext(), aRelationship .destinationEntity().name(), qual); } return null; } |