• 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: SharedEditingContext Write Locks?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SharedEditingContext Write Locks?


  • Subject: Re: SharedEditingContext Write Locks?
  • From: Ian Joyner <email@hidden>
  • Date: Thu, 17 Nov 2005 16:44:22 +1100

On 17/11/2005, at 3:27 PM, Chuck Hill wrote:

I think Ben was pretty clear on this:

The crux of the issue here is that EOSharedEditingContext uses implementation inheritance from EOEditingContext instead of composition.

Someone got lazy and inherited from EOEditingContext. Bad OO but less effort. This is inheritance for behavior not type inheritance a la the Liskov Substitution Principle. EOSharedEditingContext is more of an EOObjectStore than an EOEditingContext.

Thanks for the explanation that it is bad design. Sounds like it should have been EOSharedObjectStore instead, because read only entities will not be edited (and written back to DB), or maybe there should have been an EOContext for common behaviour, and EOSharedContext. Being a simple-minded purist ;-), I don't know if I believe in the difference between type and behavioural inheritance, but thanks for the reminded about Barbara Liskov – I hadn't heard her name in years.


Ian


Chuck


On Nov 16, 2005, at 8:17 PM, Ian Joyner wrote:

On 17/11/2005, at 10:45 AM, Ben Trumbull wrote:

K.

Here's the secret:


EOSharedEditingContexts are NOT EOEditingContexts.

That's a great secret because the EOSharedEditingContext doc says:

Class EOSharedEditingContext

java.lang.Object

<inherit.gif>
com.webobjects.eocontrol.EOObjectStore

<inherit.gif>
com.webobjects.eocontrol.EOEditingContext

<inherit.gif>
com.webobjects.eocontrol.EOSharedEditingContext

public class EOSharedEditingContext extends EOEditingContext

so EOSharedEditingContext inherits from EOEditingContext and therefore 'is a' EOSharedEditingContext.

I have not had a great deal of luck trying to share read-only entities in a shared context, so perhaps what you are saying is right. If you can't use a shared editing context anywhere you might have an editing context then this design is wrong. If EOSharedEditingContext cannot fulfill the contracts of EOEditingContext (ie do at least as much as and more than) then inheritance should not be used. If they share some behaviour but not all, that behaviour should be in a common parent class (something languages without multiple inheritance make difficult to reap the full benefits of factorizing common behaviours into small classes).

Anyone care to explain?

Thanks
Ian

<inherit.gif>
<inherit.gif>
<inherit.gif>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40global-village.net


This email sent to email@hidden

--
Coming in 2006 - an introduction to web applications using WebObjects and Xcode http://www.global-village.net/wointro


Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/ practical_webobjects






_______________________________________________ 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
References: 
 >SharedEditingContext Write Locks? (From: Dov Rosenberg <email@hidden>)
 >Re: SharedEditingContext Write Locks? (From: Chuck Hill <email@hidden>)
 >Re: SharedEditingContext Write Locks? (From: Ben Trumbull <email@hidden>)
 >Re: SharedEditingContext Write Locks? (From: Ian Joyner <email@hidden>)
 >Re: SharedEditingContext Write Locks? (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: SharedEditingContext Write Locks?
  • Next by Date: Re: SharedEditingContext Write Locks?
  • Previous by thread: Re: SharedEditingContext Write Locks?
  • Next by thread: So how is 5.3.1 looking?
  • Index(es):
    • Date
    • Thread