org.eclipse.emf.compare.utils

## Class EMFCompareCopier

- java.lang.Object
- - java.util.AbstractMap<K,V>
  - - java.util.HashMap<K,V>
    - - java.util.LinkedHashMap<EObject,EObject>
      - - org.eclipse.emf.ecore.util.EcoreUtil.Copier
        - - org.eclipse.emf.compare.utils.EMFCompareCopier

All Implemented Interfaces:
  Serializable, Cloneable, Map<EObject,EObject>

    public class EMFCompareCopier
    extends EcoreUtil.Copier

This defines the semantics of an EObject copy in the case of EMF Compare.

Namely, references now have their own Diffs, they will be merged separately from the EObject copy. However, attributes must be copied from the start.

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class java.util.AbstractMap

`AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>`

### Field Summary

### Fields inherited from class org.eclipse.emf.ecore.util.EcoreUtil.Copier

`resolveProxies, useOriginalReferences`

### Constructor Summary

Constructors
Constructor and Description
`EMFCompareCopier()`

### Method Summary

All Methods Instance Methods Concrete Methods
`EObject` `copy(EObject eObject)` Implementation mostly copied from Copier#copy(EObject), we only remove the reference copying from here.

### Methods inherited from class org.eclipse.emf.ecore.util.EcoreUtil.Copier

`copyAll, copyAttribute, copyAttributeValue, copyContainment, copyFeatureMap, copyProxyURI, copyReference, copyReferences, createCopy, getTarget, getTarget, getTarget, getTarget`

### Methods inherited from class java.util.LinkedHashMap

`clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, removeEldestEntry, replaceAll, values`

### Methods inherited from class java.util.HashMap

`clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size`

### Methods inherited from class java.util.AbstractMap

`equals, hashCode, toString`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Map

`compute, computeIfAbsent, computeIfPresent, containsKey, equals, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size`

### Constructor Detail

#### EMFCompareCopier

    public EMFCompareCopier()

### Method Detail

#### copy

    public EObject copy(EObject eObject)

Implementation mostly copied from Copier#copy(EObject), we only remove the reference copying from here.

Overrides:
  `copy` in class `EcoreUtil.Copier`
See Also:
  `EcoreUtil.Copier.copy(org.eclipse.emf.ecore.EObject)`