Child pages
  • Alternative Technologies-Cayenne

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In Cayenne raw row fetches are limited to returning columns from a single table. This differs from EOF which allows for any related key path to be fetched.  In Cayenne the qualifier may still reference key paths, they just cannot be returned in the select.  You could consider rewriting complex EOF Raw Row fetches with SQLTemplate in Cayenne.

Inheritance

Cayenne currently supports only single table inheritance (completely) and vertical inheritance (partially). However, horizontal inheritance is slated for implementation in the next release of Cayenne (3.2?).

...

EOF

Cayenne

EOEditingContext

DataContext

.objectWithFetchSpecification

.performQuery

.saveChanges

.commitChanges

.revert

.rollbackChanges

.lock

Locking is not necessary in Cayenne!

.unlock

Locking is not necessary in Cayenne!

.insertObject

.registerNewObject

.deleteObject

.deleteObject

.undo

No analog in Cayenne

 

 

EOGenericRecord

CayenneDataObject

.storedValueForKey

.readProperty

.takeStoredValueForKey

.writeProperty

.valueForKey

PropertyUtils.getProperty (sort of, see KVC section above)

.takeValueForKey

PropertyUtils.setProperty (sort of, see KVC section above)

.__globalID

.getObjectId

.entity()

Cayenne.getObjEntity(eo)

.validateForSave

.validateForSave

.validateForInsert

.validateForInsert

.validateForUpdate

.validateForUpdate

.validateForDelete

.validateForDelete

.validateValueForKey

No analog in Cayenne

.<validateSpecificAttributeViaReflection>

No analog in Cayenne

.willUpdate, willInsert, etc

provided by Cayenne lifecycle callbacks

 

 

EOQualifier

Expression

EOQualifier.qualifierWithQualifierFormat

Expression.fromString

 

 

ERXKey

ExpressionFactory (sort of, see the Key class in ERCayenneExample framework in Wonder for a direct analog) Property

ERXKey.eq
ExpressionFactory

.matchExp (sort of) Property.eq

ERXKey.ne
ExpressionFactory

.noMatchExp (sort of) Property.ne

 

 

EOFetchSpecification

SelectQuery

.qualifier

.getQualifier

.setSortOrderings

.addOrderings

.setPrefetchingRelationshipKeyPaths

.addPrefetch

 

 

EOEntity

ObjEntity + DbEntity

EOModel

DataMap (entities) + DataNode (connection dictionary)

EOAttribute

ObjAttribute + DbAttribute

EOClassDescription

DataObjectDescriptor