Hey Ramsey,

I'm using the branch delegate in other places where the user is given a choice 
of what the next page should be, but I thought that since I'm figuring it out 
on-the-fly during the request that nextPageDelegate was the way to go. I've 
revised my NPD and here's what it looks like now:

    public WOComponent nextPage(WOComponent sender) {
        WOComponent nextPage;
        if (((ERD2WQueryPage) sender).queryDataSource()
                  .fetchObjects()
                  .count() == 1) {
            InspectPageInterface ipi = 
D2W.factory().inspectPageForEntityNamed(Student.ENTITY_NAME, sender.session());
            ((ERD2WInspectPage) ipi).setObject((Student) ((ERD2WQueryPage) 
sender).queryDataSource().fetchObjects().lastObject());
            nextPage = (WOComponent) ipi;
        } else {
            nextPage = ((ERD2WQueryPage) sender).nextPage();
        }
        return nextPage;
    }


Dave

On Oct 11, 2010, at 9:55 AM, Ramsey Gurley wrote:

> Looks good to me Dave. I think any "better" way than something that works 
> will be a matter of opinion (^_^)  Personally I like branch delegates, but in 
> this case, the next page delegate is only called by the queryAction. So you 
> know the call to next page comes from the find button.
> 
> Ramsey
> 
> On Oct 11, 2010, at 6:57 AM, David Avendasora wrote:
> 
>> Okay, after a nights sleep, I got it working, but how I did it seems hackish 
>> (shocking, I know). Is the nextPage() method below from my delegate the best 
>> way to do this?
>> 
>>   public WOComponent nextPage(WOComponent sender) {
>>       WOComponent nextPage;
>>       if (((ERD2WQueryPage) sender).queryDataSource()
>>                 .fetchObjects()
>>                 .count() == 1) {
>>           InspectPageInterface ipi = D2W.factory()
>>                                         
>> .inspectPageForEntityNamed(Student.ENTITY_NAME,
>>                                                                    
>> sender.session());
>>           ((ERD2WInspectPage) ipi).setObject((EOEnterpriseObject) 
>> ((ERD2WQueryPage) sender).queryDataSource()
>>                                                                              
>>               .fetchObjects()
>>                                                                              
>>               .lastObject());
>>           nextPage = (WOComponent) ipi;
>>       } else {
>>           ListPageInterface lpi = D2W.factory()
>>                                      
>> .listPageForEntityNamed(Student.ENTITY_NAME,
>>                                                              
>> sender.session());
>>           ((ERD2WListPage) lpi).setDataSource(((ERD2WQueryPage) 
>> sender).queryDataSource());
>>           nextPage = (WOComponent) lpi;
>> 
>>       }
>>       return nextPage;
>>   }
>> 
>> On Oct 10, 2010, at 8:39 PM, David Avendasora wrote:
>> 
>>> Hi All,
>>> 
>>> When a user performs a query, if the results contain exactly one object I 
>>> want to return an Inspect page for that object instead of a List page.
>>> 
>>> I assume I'm going to want to implement a NextPageDelegate, but I'm not 
>>> sure how to do that. I've looked around but I can't seem to find a good 
>>> example. Does anyone have an example NextPageDelegate that I can use as a 
>>> starting point?
>>> 
>>> I promise to create a Wiki page documenting how to do this for future mes.
>>> 
>>> Thanks!
>>> 
>>> Dave _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> http://lists.apple.com/mailman/options/webobjects-dev/webobjects%40avendasora.com
>>> 
>>> This email sent to [email protected]
>>> 
>>> 
>> 
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      ([email protected])
>> Help/Unsubscribe/Update your Subscription:
>> http://lists.apple.com/mailman/options/webobjects-dev/ramsey%40xeotech.com
>> 
>> This email sent to [email protected]
>> 
> 
> 
> 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to