You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2011/02/26 12:00:21 UTC

[jira] Closed: (CAY-1545) cayenne-lifecycle Referenceable handler refactoring

     [ https://issues.apache.org/jira/browse/CAY-1545?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrus Adamchik closed CAY-1545.
--------------------------------

    Resolution: Fixed

> cayenne-lifecycle Referenceable handler refactoring
> ---------------------------------------------------
>
>                 Key: CAY-1545
>                 URL: https://issues.apache.org/jira/browse/CAY-1545
>             Project: Cayenne
>          Issue Type: Task
>          Components: Core Library
>    Affects Versions: 3.1M2
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>             Fix For: 3.1M3
>
>
> Will change logic in the ReferenceableHandler. Per my experience with Referenceable so far it doesn't make sense to inject a UUID property into the object, as it can be calculated on demand with fairly trivial overhead. So  ReferenceableHandler will no longer be a listener that injects UUID, but rather its 'getReferenceable' method will return UUID calculated from ObjectId on the fly. 
> This also fixes a bug - an exception when extracting UUID from a HOLLOW object, since we can read ObjectId of a HOLLOW object without inflating it form DB.
> Finally @Referenceable annotation is no longer needed and can be removed from Cayenne. After all every single object in Cayenne has ObjectId and hence we can produce a UUID for it. The only current purpose of @Referenceable is therefore to provide UUID as a property (which is not that useful). End users who would still like to inject UUID in their objects, can declare their own annotation and their own listener.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira