1 /*******************************************************************************
2  * Copyright (c) 2006, 2011 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  *******************************************************************************/
14 package org.eclipse.debug.internal.ui.viewers.model.provisional;
15 
16 import org.eclipse.debug.core.IRequest;
17 import org.eclipse.jface.viewers.TreePath;
18 
19 /**
20  * A context sensitive viewer update request.
21  *
22  * @noimplement This interface is not intended to be implemented by clients.
23  * @since 3.3
24  */
25 public interface IViewerUpdate extends IRequest {
26 
27 	/**
28 	 * Returns the context this update was requested in.
29 	 *
30 	 * @return context this update was requested in
31 	 */
getPresentationContext()32 	IPresentationContext getPresentationContext();
33 
34 	/**
35 	 * Returns the model element associated with this request.
36 	 *
37 	 * @return associated model element
38 	 */
getElement()39 	Object getElement();
40 
41 	/**
42 	 * Returns the viewer tree path to the model element associated with this
43 	 * request. An empty path indicates a root element.
44 	 *
45 	 * @return tree path, possibly empty
46 	 */
getElementPath()47 	TreePath getElementPath();
48 
49 	/**
50 	 * Returns the element that was the viewer input at the time the
51 	 * request was made, possibly <code>null</code>.
52 	 *
53 	 * @return viewer input element, possibly <code>null</code>
54 	 * @since 3.4
55 	 */
getViewerInput()56 	Object getViewerInput();
57 }
58