1 /******************************************************************************* 2 * Copyright (c) 2000, 2017 IBM Corporation and others. 3 * 4 * This program and the accompanying materials 5 * are made available under the terms of the Eclipse Public License 2.0 6 * which accompanies this distribution, and is available at 7 * https://www.eclipse.org/legal/epl-2.0/ 8 * 9 * SPDX-License-Identifier: EPL-2.0 10 * 11 * Contributors: 12 * IBM Corporation - initial API and implementation 13 * Lars Vogel <Lars.Vogel@vogella.com> - Bug 527657 14 *******************************************************************************/ 15 package org.eclipse.core.resources; 16 17 import java.util.EventListener; 18 19 /** 20 * A resource change listener is notified of changes to resources 21 * in the workspace. 22 * These changes arise from direct manipulation of resources, or 23 * indirectly through re-synchronization with the local file system. 24 * <p> 25 * Clients may implement this interface. 26 * </p> 27 * @see IResourceDelta 28 * @see IWorkspace#addResourceChangeListener(IResourceChangeListener, int) 29 */ 30 31 @FunctionalInterface 32 public interface IResourceChangeListener extends EventListener { 33 /** 34 * Notifies this listener that some resource changes 35 * are happening, or have already happened. 36 * <p> 37 * The supplied event gives details. This event object (and the 38 * resource delta within it) is valid only for the duration of 39 * the invocation of this method. 40 * </p> 41 * <p> 42 * Note: This method is called by the platform; it is not intended 43 * to be called directly by clients. 44 * <p> 45 * Note that during resource change event notification, further changes 46 * to resources may be disallowed. 47 * </p> 48 * 49 * @param event the resource change event 50 * @see IResourceDelta 51 */ resourceChanged(IResourceChangeEvent event)52 void resourceChanged(IResourceChangeEvent event); 53 } 54