db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Craig L Russell <Craig.Russ...@Sun.COM>
Subject Negative VOTE Missing methods
Date Sun, 19 Feb 2006 16:08:42 GMT
Javadogs,

Here's the spec update for the missing makeTransient methods.

Please reply if there are any issues.

Craig

<proposed>
void makeTransient (Object pc, boolean useFetchPlan);
void makeTransientAll (Object[] pcs, boolean useFetchPlan);
void makeTransientAll (Collection pcs, boolean useFetchPlan);
If the useFetchPlan parameter is false, these methods behave exactly  
as the corresponding makeTransient methods.
If the useFetchPlan parameter is true, the current FetchPlan,  
including MaxFetchDepth, DETACH_LOAD_FIELDS, and  
DETACH_UNLOAD_FIELDS, is applied to the pc or pcs parameter instance 
(s) to load fields and instances from the datastore. The  
DetachmentRoots is not affected. After the fetch plan is used to load  
instances, the entire graph of instances reachable via loaded fields  
of the parameter instances is made transient. Transient fields are  
not modified by the method.
If the parameter instance or instances are detached, then  
JDOUserException is thrown.
</proposed>

On Feb 15, 2006, at 12:12 PM, Craig L Russell wrote:

> Hi Andy,
>
> Yes, you are right. I accidentally omitted this from the draft.
>
> I'll add all three methods:
> void makeTransient(Object pc, boolean useFetchPlan);
> void makeTransient(Collection pcs, boolean useFetchPlan);
> void makeTransient(Object[] pcs, boolean useFetchPlan);
>
> I haven't reviewed your patch but I assume you only added the first  
> method. The others are needed for consistency.
>
> Thanks,
>
> Craig
>
> On Feb 15, 2006, at 8:05 AM, Andy Jefferson wrote:
>
>> I thought a new makeTransient() method was to be added. This is  
>> Issue 38 on
>> the JDO2Issues. A negative VOTE was called on 07 Feb and nobody  
>> showed up to
>> decry it. Therefore it should be in the spec.
>>
>> Section 12.6.7 needs the following (or similar adding)
>> <spec>
>> void makeTransient (Object pc, boolean useFetchPlan);
>>
>> This method would behave like retrieve(rootObject, true) [FGOnly] in
>> terms of loading instances according to the FetchPlan, followed by
>> recursive makeTransient on all instances reachable via the fetch  
>> plan.
>> </spec>
>>
>>
>> -- 
>> Andy
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Mime
View raw message