• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Inheritance...
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Inheritance...


  • Subject: Re: Inheritance...
  • From: David Avendasora <email@hidden>
  • Date: Fri, 9 May 2008 07:39:05 -0400

Oh, and I almost forgot, if you have multiple levels of inheritance, your awakeFromInsertion setting the class type is a little more tricky because the first thing you do in awakeFromInsertion is to call super.awakeFromInsertion. The problem is that if the class you are working on is more than one inheritance level away from the abstract parent, you have to check to see if super.awakeFromInsertion already set the type and then override it.

So that if statement should look like this:

if (type() == null || type() == 1 {
	setType(2);
}

Dave


On May 8, 2008, at 12:00 PM, David Avendasora wrote:

Oh, and BTW if this is Java Client you need to set the restricting qualifier (or type) on both the client AND the server, AND surround the setter with a check for null first, otherwise it causes all sorts of weird unrelated errors when you try to delete an instance of the subclass. This drove me nuts for over a year with Undo Manager errors.

For example:

if (type() == null) {
	setType(2);
}

It will work fine to insert new instances without the "if" clause, but it will bite you when you delete. As soon as I added the if clause to my code my deletion errors went away instantly.

Dave

On May 8, 2008, at 11:38 AM, Florijan Stamenkovic wrote:


On May 08, 2008, at 11:27, Mike Schrag wrote:

All that matters is that you have some restricting qualifier that specifies how to differentiate the two entities (the value doesn't matter, but you do need some attribute that specifies which one is a SubEntity1 and which one is a SubEntity2). If you use Wonder, I recommend turning on er .extensions .ERXEnterpriseObject.applyRestrictingQualifierOnInsert=true . If you don't, you will also need to set the value of your restricting qualifier in your awakeFromInsertion so new objects of your entity type get assigned properly (meaning, if you have a type = 2 restricting qualifier, you need to setType(2) in awakeFromInsertion). applyRestrictingQualifierOnInsert in Wonder will automagically look at your restricting qualifier and figure out what to set for you, so it's just one less thing to mess up.

I did get that... Apple's docs explain it clearly... What I don't get is why they use the integers 2 and 9 in a three entity setup (abstract root + 2 concrete) as qualifier values... The way they put it, it seems like it is important for some reason. Well, apparently it isn't...


Tried to look this up on the web, but that part of the documentation isn't there anymore... I have it in pdf, the "UsingEOModeler" thingy...

F
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden



_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden



_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: Inheritance...
      • From: Florijan Stamenkovic <email@hidden>
References: 
 >Inheritance... (From: Florijan Stamenkovic <email@hidden>)
 >Re: Inheritance... (From: Chuck Hill <email@hidden>)
 >Re: Inheritance... (From: Mike Schrag <email@hidden>)
 >Re: Inheritance... (From: Florijan Stamenkovic <email@hidden>)
 >Re: Inheritance... (From: Florijan Stamenkovic <email@hidden>)
 >Re: Inheritance... (From: Ken Anderson <email@hidden>)
 >Re: Inheritance... (From: Florijan Stamenkovic <email@hidden>)
 >Re: Inheritance... (From: Mike Schrag <email@hidden>)
 >Re: Inheritance... (From: Florijan Stamenkovic <email@hidden>)
 >Re: Inheritance... (From: David Avendasora <email@hidden>)

  • Prev by Date: Re: WO Tutorials install on windows
  • Next by Date: Re: grabbing data from a POST
  • Previous by thread: Re: Inheritance...
  • Next by thread: Re: Inheritance...
  • Index(es):
    • Date
    • Thread