Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [Compare] DiffEngine: Modifying when Conflicting EReferences occur
[Compare] DiffEngine: Modifying when Conflicting EReferences occur [message #118975] Fri, 18 April 2008 07:31 Go to next message
Matt Seashore is currently offline Matt SeashoreFriend
Messages: 58
Registered: July 2009
Member
When running a Diff, I need (non-containment) EReferences to be
evaluated just by the *URIs* they point to. For example, I'd like
references only to appear conflicted if they point to diffent URIs,
irregardless of the content of that Resolved references point to (or
even if the reference is still a Proxy). I believe the current
behavior shows a conflict when the referenced objects aren't "equal".

So, my question would be, what is the best approach to customizing the
DiffEngine behavior in this way? (create a new DiffExtension, extend
GenericDiffEngine, put in a enhancement request for new options passed
to GenericDiffEngine, etc).


Thanks,

Matt
Re: [Compare] DiffEngine: Modifying when Conflicting EReferences occur [message #118989 is a reply to message #118975] Fri, 18 April 2008 08:28 Go to previous messageGo to next message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1881
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------020003050108090005000507
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Matt,

I think the best way of defining such a behavior would be to extend
GenericDiffEngine through the extension point
org.eclipse.emf.compare.diff.engine and to override
GenericDiffEngine#checkReferencesUpdates(DiffGroup, Match3Element).

We tried and make the generic diff engine extensible for such needs so
that clients won't need to create a whole new IDiffEngine for trivial
modifications of the generic behavior. Feel free to give us any feedback
you would have about lack of extensibility or functionalities about the
generic engines.

About options that could be passed on to the Differencing engine ...
This could probably be a cool feature but we need to think about how to
implement it if it can be done ;).

Cheers
Laurent Goubet
Obeo

Matt Seashore a
Re: [Compare] DiffEngine: Modifying when Conflicting EReferences occur [message #119065 is a reply to message #118989] Fri, 18 April 2008 15:30 Go to previous message
Matt Seashore is currently offline Matt SeashoreFriend
Messages: 58
Registered: July 2009
Member
Thanks for the quick reply! I'll reply to this thread if I find issues
extending the GenericDiffEngine.

Thanks again,

Matt

laurent Goubet wrote:
> Matt,
>
> I think the best way of defining such a behavior would be to extend
> GenericDiffEngine through the extension point
> org.eclipse.emf.compare.diff.engine and to override
> GenericDiffEngine#checkReferencesUpdates(DiffGroup, Match3Element).
>
> We tried and make the generic diff engine extensible for such needs so
> that clients won't need to create a whole new IDiffEngine for trivial
> modifications of the generic behavior. Feel free to give us any feedback
> you would have about lack of extensibility or functionalities about the
> generic engines.
>
> About options that could be passed on to the Differencing engine ...
> This could probably be a cool feature but we need to think about how to
> implement it if it can be done ;).
>
> Cheers
> Laurent Goubet
> Obeo
>
> Matt Seashore a écrit :
>> When running a Diff, I need (non-containment) EReferences to be
>> evaluated just by the *URIs* they point to. For example, I'd like
>> references only to appear conflicted if they point to diffent URIs,
>> irregardless of the content of that Resolved references point to (or
>> even if the reference is still a Proxy). I believe the current
>> behavior shows a conflict when the referenced objects aren't "equal".
>>
>> So, my question would be, what is the best approach to customizing the
>> DiffEngine behavior in this way? (create a new DiffExtension, extend
>> GenericDiffEngine, put in a enhancement request for new options passed
>> to GenericDiffEngine, etc).
>>
>>
>> Thanks,
>>
>> Matt
>
Re: [Compare] DiffEngine: Modifying when Conflicting EReferences occur [message #617833 is a reply to message #118975] Fri, 18 April 2008 08:28 Go to previous message
Laurent Goubet is currently offline Laurent GoubetFriend
Messages: 1881
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------020003050108090005000507
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Matt,

I think the best way of defining such a behavior would be to extend
GenericDiffEngine through the extension point
org.eclipse.emf.compare.diff.engine and to override
GenericDiffEngine#checkReferencesUpdates(DiffGroup, Match3Element).

We tried and make the generic diff engine extensible for such needs so
that clients won't need to create a whole new IDiffEngine for trivial
modifications of the generic behavior. Feel free to give us any feedback
you would have about lack of extensibility or functionalities about the
generic engines.

About options that could be passed on to the Differencing engine ...
This could probably be a cool feature but we need to think about how to
implement it if it can be done ;).

Cheers
Laurent Goubet
Obeo

Matt Seashore a
Re: [Compare] DiffEngine: Modifying when Conflicting EReferences occur [message #617839 is a reply to message #118989] Fri, 18 April 2008 15:30 Go to previous message
Matt Seashore is currently offline Matt SeashoreFriend
Messages: 58
Registered: July 2009
Member
Thanks for the quick reply! I'll reply to this thread if I find issues
extending the GenericDiffEngine.

Thanks again,

Matt

laurent Goubet wrote:
> Matt,
>
> I think the best way of defining such a behavior would be to extend
> GenericDiffEngine through the extension point
> org.eclipse.emf.compare.diff.engine and to override
> GenericDiffEngine#checkReferencesUpdates(DiffGroup, Match3Element).
>
> We tried and make the generic diff engine extensible for such needs so
> that clients won't need to create a whole new IDiffEngine for trivial
> modifications of the generic behavior. Feel free to give us any feedback
> you would have about lack of extensibility or functionalities about the
> generic engines.
>
> About options that could be passed on to the Differencing engine ...
> This could probably be a cool feature but we need to think about how to
> implement it if it can be done ;).
>
> Cheers
> Laurent Goubet
> Obeo
>
> Matt Seashore a écrit :
>> When running a Diff, I need (non-containment) EReferences to be
>> evaluated just by the *URIs* they point to. For example, I'd like
>> references only to appear conflicted if they point to diffent URIs,
>> irregardless of the content of that Resolved references point to (or
>> even if the reference is still a Proxy). I believe the current
>> behavior shows a conflict when the referenced objects aren't "equal".
>>
>> So, my question would be, what is the best approach to customizing the
>> DiffEngine behavior in this way? (create a new DiffExtension, extend
>> GenericDiffEngine, put in a enhancement request for new options passed
>> to GenericDiffEngine, etc).
>>
>>
>> Thanks,
>>
>> Matt
>
Previous Topic:[newbie] EMFT first installation
Next Topic:[Teneo] new bug reported / questions on last release
Goto Forum:
  


Current Time: Sat Apr 04 22:42:11 GMT 2020

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

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

Back to the top