Bug 129369 - Calls to set* methods from within proxy classes don't flag modified
Summary: Calls to set* methods from within proxy classes don't flag modified
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Network
Classification: Retired
Component: RHN/R&D
Version: RHN Devel
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Ryan Bloom
QA Contact: Fanny Augustin
URL:
Whiteboard:
: 129685 (view as bug list)
Depends On:
Blocks: rhnMilestone1
TreeView+ depends on / blocked
 
Reported: 2004-08-07 00:59 UTC by Mike McCune
Modified: 2007-04-18 17:10 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-10-22 18:41:01 UTC
Embargoed:


Attachments (Terms of Use)

Description Mike McCune 2004-08-07 00:59:05 UTC
If you have a proxy persistence class, for example, Session, and from
within SessionImpl you call a public set method on one of the columns:

    public void setExpiresMillis(long expIn) {
        setExpires(expIn / 1000);
    }

the call to setExpires doesn't actually flag the Proxy that this
method has been called, it only gets flagged if someone from outside
the class calls it.  This means that if you call:

s.setExpiresMillis(someval);
SessionFactory.commit(s);

it will not save the expiration time.

The only way to store a new expiration time on a Session object is to
call setExpires().

This means we can't have convienience methods on classes if this isn't
fixed.

Comment 1 Ryan Bloom 2004-08-17 14:16:32 UTC
*** Bug 129685 has been marked as a duplicate of this bug. ***

Comment 2 Ryan Bloom 2004-10-22 18:41:01 UTC
we're using hibernate now, so this isn't an issue.


Note You need to log in before you can comment on or make changes to this bug.