Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » EMF transactions - why the special ExtendedPropertySheetPage?
EMF transactions - why the special ExtendedPropertySheetPage? [message #989322] Wed, 05 December 2012 16:12 Go to next message
Fredrik Attebrant is currently offline Fredrik AttebrantFriend
Messages: 24
Registered: June 2012
Junior Member
Hi,

Why does EMF transaction have its own ExtendedPropertySheetPage?
According to section4 in the blog http://techblog.goelite.org/making-your-emf-model-transactional/ it is to "substitute the non-transactional implementation" of ExtendedPropertySheetPage that EMF supplies. But there is no explaination as to why this is necessary.

Looking at the methods refresh and selectionChanged I fail to see why this is necessary since we can wrap our property source as with:

propertySheetPage.setPropertySourceProvider(new 
	TransactionalAdapterFactoryContentProvider(
		(TransactionalEditingDomain) getEditingDomain(), adapterFactory));


Are there cases where this isn't enough?

The reason for asking is that we are aiming at implementing a more lightweight threadsafe approach where we do not need to support editing domains, commands etc and thus do not want to hook into the whole EMF Transactions framework.

Thanks for all input!
--Fredrik
Re: EMF transactions - why the special ExtendedPropertySheetPage? [message #989331 is a reply to message #989322] Wed, 05 December 2012 16:33 Go to previous message
Christian W. Damus is currently offline Christian W. DamusFriend
Messages: 847
Registered: July 2009
Senior Member
Hi, Fredrik,

IIRC (it has been some years, now), the critical difference in this
extended property sheet page is that it performs UI refreshes in
read-only transactions, on the assumption that refreshes will read the
model. This is required for thread-safety amongst current reads and
writes, especially in proxy resolution and derived calculation of
features.

HTH,

Christian


On 2012-12-05 16:12:07 +0000, Fredrik Attebrant said:

> Hi,
>
> Why does EMF transaction have its own ExtendedPropertySheetPage?
> According to section4 in the blog
> http://techblog.goelite.org/making-your-emf-model-transactional/ it is
> to "substitute the non-transactional implementation" of
> ExtendedPropertySheetPage that EMF supplies. But there is no
> explaination as to why this is necessary.
>
> Looking at the methods refresh and selectionChanged I fail to see why
> this is necessary since we can wrap our property source as with:
>
> propertySheetPage.setPropertySourceProvider(new
> TransactionalAdapterFactoryContentProvider(
> (TransactionalEditingDomain) getEditingDomain(), adapterFactory));
>
> Are there cases where this isn't enough?
>
> The reason for asking is that we are aiming at implementing a more
> lightweight threadsafe approach where we do not need to support editing
> domains, commands etc and thus do not want to hook into the whole EMF
> Transactions framework.
> Thanks for all input!
> --Fredrik
Previous Topic:[Teneo] Multiple class loader problem
Next Topic:Property Sheet is empty when selecting an (EMF-)object in tree viewer using a custom ViewPart
Goto Forum:
  


Current Time: Mon Dec 22 00:06:32 GMT 2014

Powered by FUDForum. Page generated in 0.01486 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software