Tweak your eotemplate?  And have isDeep set by a protected method that you can 
override if you don't want the default behavior?

Just thinking out loud there?

Sent from my iPad

On Aug 13, 2013, at 11:49 AM, Theodore Petrosky <tedp...@yahoo.com> wrote:

> almost but maybe barking (or coughing) up the wrong tree.
> 
> without cloning all the fetch specification methods from _User into User.java 
> is there an easy way to set IsDeep to false?
> 
> 
> On Aug 13, 2013, at 4:42 PM, Johnny Miller <jlmil...@kahalawai.com> wrote:
> 
>> Sorry brain fart (dealing with bronchitis) - I meant single table 
>> inheritance.  But if an object can be both then I would go with Ramsey's 
>> method.
>> 
>> Aloha,
>> Mr. Johnny Miller
>> Web Development Manager
>> Kahalawai Media Company
>> Lahaina, HI 96761
>> tel: (808) 661-7962 | mobile: (808) 283-0791
>> website | e-mail     
>> 
>> On Aug 13, 2013, at 10:31 AM, Theodore Petrosky <tedp...@yahoo.com> wrote:
>> 
>>> I like this method of inheritance however, why did you choose vertical 
>>> inheritance? I did one vertical and one single table. I put a qualifier 
>>> userType='Vendor' on the table.
>>> 
>>> I think the only thing 'wrong' with inheritance is that I can not create a 
>>> User that is both a employee and a vendor. There are cases where we have 
>>> clients that are also vendors.
>>> 
>>> I was looking at the migration that I am creating and now I see.
>>> 
>>> with vertical inheritance, it is actually creating a table in the database 
>>> with a foreign key. this would allow me to add specific meta data to my 
>>> inherited entity, whereas the single table does not create this table 
>>> therefore I can segregate the different 'roles' but can not add a specific 
>>> piece of meta data. Such as a person has a SSN but a business has an EIN 
>>> (in the US).
>>> 
>>> but that still leaves me with the problem of modeling a Vendor that is a 
>>> Person not a business. Couldn't we find an easier way to model this stuff.
>>> 
>>> Ted
>>> 
>>> 
>>> 
>>> 
>>> On Aug 13, 2013, at 2:59 PM, Johnny Miller <jlmil...@kahalawai.com> wrote:
>>> 
>>>> Use vertical inheritance and then use entity.name='Vendor'?
>>>> 
>>>> Sent from my iPad
>>>> 
>>>> On Aug 13, 2013, at 8:19 AM, Theodore Petrosky <tedp...@yahoo.com> wrote:
>>>> 
>>>>> I have been playing with D2W and I may have boxed myself into a corner.
>>>>> 
>>>>> A User is of a type. a User can be a Vendor or a Client or a Worker. So I 
>>>>> thought that I would create an attribute 'userType' in User. I wanted  to 
>>>>> have a Vendor tab and a Client tab and I have it mostly working. 
>>>>> 
>>>>> when I create a ListVendorPage:
>>>>> 
>>>>> public WOComponent listVendorAction() {
>>>>>     
>>>>>     EOEditingContext ec = ERXEC.newEditingContext();
>>>>>     ListPageInterface lpi = (ListPageInterface) 
>>>>> D2W.factory().listPageForEntityNamed("AppUser", session()); 
>>>>> 
>>>>>     EODatabaseDataSource ds = new EODatabaseDataSource(ec, "AppUser");
>>>>> 
>>>>>     ERXFetchSpecification<AppUser> fs = 
>>>>>         new ERXFetchSpecification<AppUser>(AppUser.ENTITY_NAME, 
>>>>> AppUser.IS_ACTIVE.eq(true).and(AppUser.USER_TYPE.eq("Vendor")), null);
>>>>> 
>>>>>     ds.setFetchSpecification(fs);
>>>>> 
>>>>>     lpi.setDataSource(ds);
>>>>> 
>>>>>     ((D2WComponent) lpi).d2wContext().takeValueForKey("ListVendor", 
>>>>> "navigationState");
>>>>>     ((D2WComponent) lpi).d2wContext().takeValueForKey("Vendor", 
>>>>> "userTypeKey");
>>>>>     
>>>>>     return (D2WPage) lpi;
>>>>> }
>>>>> 
>>>>> I am also adding that userTypeKey so I can target rules like this:
>>>>> 
>>>>> 100 : (pageConfiguration = 'ListAppUser' and userTypeKey = 'Vendor') => 
>>>>> displayNameForPageConfiguration = "Vendor List" 
>>>>> [com.webobjects.directtoweb.Assignment]
>>>>> 
>>>>> Maybe there is a better way? If I select to edit a Vendor, I wanted rules:
>>>>> 
>>>>> 100 : (pageConfiguration = 'EditAppUser' and userTypeKey = 'Vendor') => 
>>>>> navigationState = "ListVendor" [com.webobjects.directtoweb.Assignment]
>>>>> 100 : (pageConfiguration = 'EditAppUser' and userTypeKey = 'admins') => 
>>>>> navigationState = "ListAdmins" [com.webobjects.directtoweb.Assignment]
>>>>> 
>>>>> then I thought that what I should be using is inheritance.  Vendor 
>>>>> inherits from User, Administrators inherit from User. In the past, I 
>>>>> would have created a User with boolean attributes for  Vendor, Client, 
>>>>> Employee, Admin. After all a user can be both an employee and a vendor.
>>>>> 
>>>>> How are youse guys doing this?
>>>>> 
>>>>> Ted
>>>>> _______________________________________________
>>>>> Do not post admin requests to the list. They will be ignored.
>>>>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>> https://lists.apple.com/mailman/options/webobjects-dev/jlmiller%40kahalawai.com
>>>>> 
>>>>> This email sent to jlmil...@kahalawai.com
>>> 
>> 
> 
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to