1 /******************************************************************************* 2 * Copyright (c) 2005 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.ui.internal.components.framework; 12 13 14 /** 15 * Interface for components that need to perform cleanup when they are destroyed. 16 * This is an optional interface. Even if the component does not implement 17 * <code>IDisposable</code> it is still possible to clean up after the object by 18 * wrapping it in a custom subclass of AbstractComponentHandle that performs 19 * any necessary cleanup. 20 * 21 * <p>EXPERIMENTAL: The components framework is currently under active development. All 22 * aspects of this class including its existence, name, and public interface are likely 23 * to change during the development of Eclipse 3.1</p> 24 * 25 * @since 3.1 26 */ 27 public interface IDisposable { 28 /** 29 * This method is called when the receiver is no longer needed. 30 * It should clean up any resources allocated by the receiver. 31 * Must only be called after everything that depends on the receiver 32 * has been disposed. 33 */ 34 public void dispose(); 35 } 36