blob: f78aa659f4a09c5708c7f0e29527f63690d4790e [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_75) on Mon May 18 03:56:40 EDT 2015 -->
<title>IEObjectMatcher (EMF Compare API Specification)</title>
<meta name="date" content="2015-05-18">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IEObjectMatcher (EMF Compare API Specification)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IEObjectMatcher.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><span style='font-size:small'><b>EMF Compare</b><br>3.2.0.201505180755</span></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/emf/compare/match/eobject/IdentifierEObjectMatcher.DefaultIDFunction.html" title="class in org.eclipse.emf.compare.match.eobject"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/eclipse/emf/compare/match/eobject/ProximityEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" target="_top">Frames</a></li>
<li><a href="IEObjectMatcher.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.emf.compare.match.eobject</div>
<h2 title="Interface IEObjectMatcher" class="title">Interface IEObjectMatcher</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../../org/eclipse/emf/compare/match/eobject/IdentifierEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject">IdentifierEObjectMatcher</a>, <a href="../../../../../../org/eclipse/emf/compare/match/eobject/ProximityEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject">ProximityEObjectMatcher</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">IEObjectMatcher</span></pre>
<div class="block">An <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>IEObjectMatcher</code></a> will be used by the default implementation of the
<a href="../../../../../../org/eclipse/emf/compare/match/DefaultMatchEngine.html" title="class in org.eclipse.emf.compare.match"><code>DefaultMatchEngine</code></a> in order to determine the mappings between three
lists of EObjects coming from the left, right and origin sides.
<p>
Do take note that the match engine expects <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" title="interface in org.eclipse.emf.compare.match.eobject"><code>IEObjectMatcher</code></a>s to return both matching and unmatching
EObjects.
</p>
<p>
A default implementation of this interface, matching EObjects through their identifier, can also be
subclassed by clients. Sett <a href="../../../../../../org/eclipse/emf/compare/match/eobject/IdentifierEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><code>IdentifierEObjectMatcher</code></a>.
</p></div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../../org/eclipse/emf/compare/match/eobject/IdentifierEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><code>IdentifierEObjectMatcher</code></a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html#createMatches(org.eclipse.emf.compare.Comparison,%20java.util.Iterator,%20java.util.Iterator,%20java.util.Iterator,%20org.eclipse.emf.common.util.Monitor)">createMatches</a></strong>(<a href="../../../../../../org/eclipse/emf/compare/Comparison.html" title="interface in org.eclipse.emf.compare">Comparison</a>&nbsp;comparison,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;leftEObjects,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;rightEObjects,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;originEObjects,
<a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/common/util/Monitor.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">Monitor</a>&nbsp;monitor)</code>
<div class="block">This will be called by the match engine to determine matches between EObjects.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="createMatches(org.eclipse.emf.compare.Comparison, java.util.Iterator, java.util.Iterator, java.util.Iterator, org.eclipse.emf.common.util.Monitor)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createMatches</h4>
<pre>void&nbsp;createMatches(<a href="../../../../../../org/eclipse/emf/compare/Comparison.html" title="interface in org.eclipse.emf.compare">Comparison</a>&nbsp;comparison,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;leftEObjects,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;rightEObjects,
<a href="http://download.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;? extends <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html?is-external=true" title="class or interface in org.eclipse.emf.ecore">EObject</a>&gt;&nbsp;originEObjects,
<a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/common/util/Monitor.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">Monitor</a>&nbsp;monitor)</pre>
<div class="block">This will be called by the match engine to determine matches between EObjects.
<p>
The implementation should update the given comparison object by adding the Matches it detect. These
matches should include both matching and unmatchings EObjects (i.e. EObjects that can be matched in all
three lists, EObjects that cna be matched in only two of the three lists, and EObjects that can only be
found in one of the three.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>comparison</code> - the comparison to update.</dd><dd><code>leftEObjects</code> - An iterator over the EObjects that could be found in the left side.</dd><dd><code>rightEObjects</code> - An iterator over the EObjects that could be found in the right side.</dd><dd><code>originEObjects</code> - And iterator over the EObject that may be considered ancestors of the couples that can be
detected in the left and right sides.</dd><dd><code>monitor</code> - The monitor to report progress or to check for cancellation</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IEObjectMatcher.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><span style='font-size:small'><b>EMF Compare</b><br>3.2.0.201505180755</span></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/emf/compare/match/eobject/IdentifierEObjectMatcher.DefaultIDFunction.html" title="class in org.eclipse.emf.compare.match.eobject"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/eclipse/emf/compare/match/eobject/ProximityEObjectMatcher.html" title="class in org.eclipse.emf.compare.match.eobject"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/emf/compare/match/eobject/IEObjectMatcher.html" target="_top">Frames</a></li>
<li><a href="IEObjectMatcher.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><br><span style='font-size:small;float:right'>Copyright (c) 2006, 2014 Obeo and others. All rights reserved.</span></small></p>
</body>
</html>