/** * {@inheritDoc} * * @see org.eclipse.emf.compare.provider.ReferenceChangeItemProvider#getText(java.lang.Object) */ @Override public String getText(Object object) { final ReferenceChange refChange = (ReferenceChange) object; final String valueText = getValueText(refChange); final String referenceText = getReferenceText(refChange); String remotely = ""; // $NON-NLS-1$ if (refChange.getSource() == DifferenceSource.RIGHT) { remotely = "remotely "; // $NON-NLS-1$ } String ret = ""; // $NON-NLS-1$ switch (refChange.getKind()) { case ADD: ret = valueText + " has been " + remotely + "added to " + referenceText; //$NON-NLS-1$ //$NON-NLS-2$ break; case DELETE: ret = valueText + " has been " + remotely + "deleted from " + referenceText; //$NON-NLS-1$ //$NON-NLS-2$ break; case CHANGE: String changeText = changeText(refChange, refChange.getReference()); ret = referenceText + " " + valueText + " has been " + remotely + changeText; //$NON-NLS-1$ //$NON-NLS-2$ break; case MOVE: ret = valueText + " has been " + remotely + "moved in " + referenceText; //$NON-NLS-1$ //$NON-NLS-2$ break; default: throw new IllegalStateException( "Unsupported " + DifferenceKind.class.getSimpleName() // $NON-NLS-1$ + " value: " + refChange.getKind()); // $NON-NLS-1$ } return ret; }
/** * {@inheritDoc} * * @see org.eclipse.emf.compare.provider.ReferenceChangeItemProvider#getText(java.lang.Object) */ @Override public String getText(Object object) { final ReferenceChange refChange = (ReferenceChange) object; EObject value = refChange.getValue(); final String valueName = CompareItemProviderAdapterFactorySpec.getText(adapterFactory, value); String change = ""; if (refChange.getSource() == DifferenceSource.RIGHT) { change = "remotely "; } if (refChange.getKind() == DifferenceKind.ADD) { change += "added to"; } else if (refChange.getKind() == DifferenceKind.DELETE) { change += "deleted from"; } else if (refChange.getKind() == DifferenceKind.CHANGE) { change += "changed from"; } else { change += "moved from"; } final String objectName; if (refChange.getMatch().getLeft() instanceof ENamedElement) { objectName = ((ENamedElement) refChange.getMatch().getLeft()).getName(); } else if (refChange.getMatch().getRight() instanceof ENamedElement) { objectName = ((ENamedElement) refChange.getMatch().getRight()).getName(); } else if (refChange.getMatch().getOrigin() instanceof ENamedElement) { objectName = ((ENamedElement) refChange.getMatch().getOrigin()).getName(); } else { objectName = ""; } return "value " + valueName + " has been " + change + " reference " + refChange.getReference().getName() + " of object " + objectName; }