blob: 07920d4bc14c27fd84dfbb2e5d5e10188ca46bcc [file] [log] [blame]
/******************************************************************************
* Copyright (c) 2002, 2003 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
****************************************************************************/
package org.eclipse.gmf.runtime.common.ui.resources;
import java.util.Map;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
/**
* A file observer is notified of changes to files in the workspace.
*
* @author Anthony Hunter <a
* href="mailto:ahunter@rational.com">ahunter@rational.com </a>
*/
public interface IFileObserver {
/**
* handle the file renamed event.
*
* @param oldFile
* the original file.
* @param file
* the renamed file.
*/
public void handleFileRenamed(IFile oldFile, IFile file);
/**
* handle the file moved event.
*
* @param oldFile
* the original file.
* @param file
* the moved file.
*/
public void handleFileMoved(IFile oldFile, IFile file);
/**
* handle the file deleted event.
*
* @param file
* the deleted file.
*/
public void handleFileDeleted(IFile file);
/**
* handle the file content changed event.
*
* @param file
* the changed file.
*/
public void handleFileChanged(IFile file);
/**
* handle the marker added event
*
* @param marker
* the added marker
*/
public void handleMarkerAdded(IMarker marker);
/**
* Handle the marker deleted event.
*
* Note that if the marker was deleted, it cannot be used to access
* attributes. Use the attribute map parameter to access the old marker's
* attributes.
*
* @param marker
* the deleted marker
* @param attributes
* the old marker's attributes.
*/
public void handleMarkerDeleted(IMarker marker, Map attributes);
/**
* handle the marker changed event
*
* @param marker
* the changed marker
*/
public void handleMarkerChanged(IMarker marker);
}