Copyright (c) 2000, 2009 IBM Corporation and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: IBM Corporation - initial API and implementation
/******************************************************************************* * Copyright (c) 2000, 2009 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/
package org.eclipse.jdt.internal.core.dom.rewrite; /** * */ public class NodeRewriteEvent extends RewriteEvent { private Object originalValue; private Object newValue; public NodeRewriteEvent(Object originalValue, Object newValue) { this.originalValue= originalValue; this.newValue= newValue; }
Returns:Returns the new value.
/** * @return Returns the new value. */
@Override public Object getNewValue() { return this.newValue; }
Returns:Returns the original value.
/** * @return Returns the original value. */
@Override public Object getOriginalValue() { return this.originalValue; } @Override public int getChangeKind() { if (this.originalValue == this.newValue) { return UNCHANGED; } if (this.originalValue == null) { return INSERTED; } if (this.newValue == null) { return REMOVED; } if (this.originalValue.equals(this.newValue)) { return UNCHANGED; } return REPLACED; } @Override public boolean isListRewrite() { return false; } /* * Sets a new value for the new node. Internal access only. * @param newValue The new value to set. */ public void setNewValue(Object newValue) { this.newValue= newValue; } @Override public RewriteEvent[] getChildren() { return null; } @Override public String toString() { StringBuffer buf= new StringBuffer(); switch (getChangeKind()) { case INSERTED: buf.append(" [inserted: "); //$NON-NLS-1$ buf.append(getNewValue()); buf.append(']'); break; case REPLACED: buf.append(" [replaced: "); //$NON-NLS-1$ buf.append(getOriginalValue()); buf.append(" -> "); //$NON-NLS-1$ buf.append(getNewValue()); buf.append(']'); break; case REMOVED: buf.append(" [removed: "); //$NON-NLS-1$ buf.append(getOriginalValue()); buf.append(']'); break; default: buf.append(" [unchanged]"); //$NON-NLS-1$ } return buf.toString(); } }