tmf: Update copyright headers in tmf.ui
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.ui / src / org / eclipse / linuxtools / tmf / ui / project / model / ITmfProjectModelElement.java
CommitLineData
12c155f5 1/*******************************************************************************
c8422608
AM
2 * Copyright (c) 2010, 2012 Ericsson
3 *
12c155f5
FC
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
c8422608 8 *
12c155f5
FC
9 * Contributors:
10 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
12
13package org.eclipse.linuxtools.tmf.ui.project.model;
14
15import java.net.URI;
16import java.util.List;
17
18import org.eclipse.core.resources.IResource;
19import org.eclipse.core.runtime.IPath;
20
21/**
b544077e 22 * The TMF project model interface.
c8422608
AM
23 *
24 * The TMF tracing project is integrated in the Common Navigator framework.
b544077e 25 * Each tracing tree element has to implement this interface to be visible in the
c8422608
AM
26 * Project Explorer.
27 *
b544077e
BH
28 * @version 1.0
29 * @author Francois Chouinard
12c155f5
FC
30 */
31public interface ITmfProjectModelElement {
c8422608 32
b544077e
BH
33 /**
34 * Returns the name of the project model element.
35 * @return the name of the project element.
36 */
12c155f5 37 public String getName();
b544077e
BH
38 /**
39 * Returns the resource associated with the project model element.
40 * @return the model resource.
41 */
12c155f5 42 public IResource getResource();
b544077e
BH
43 /**
44 * Returns the path of the project model resource.
45 * @return the resource path.
46 */
12c155f5 47 public IPath getPath();
b544077e 48 /**
c8422608 49 * Returns the URI (location) of the resource.
b544077e
BH
50 * @return the resource URI.
51 */
12c155f5 52 public URI getLocation();
b544077e
BH
53 /**
54 * Returns the project model element.
55 * @return the project model element.
56 */
12c155f5 57 public TmfProjectElement getProject();
b544077e
BH
58 /**
59 * Returns the parent of this model element.
60 * @return the parent of this model element.
61 */
12c155f5 62 public ITmfProjectModelElement getParent();
b544077e
BH
63 /**
64 * Returns whether this model element has children or not.
65 * @return <code>true</code> if this model has children else <code>false</code>
66 */
12c155f5 67 public boolean hasChildren();
b544077e
BH
68 /**
69 * Returns a list of children model elements.
70 * @return a list of children model elements.
71 */
12c155f5 72 public List<ITmfProjectModelElement> getChildren();
b544077e
BH
73 /**
74 * Method to add a child to the model element.
75 * @param child A child element to add.
76 */
12c155f5 77 public void addChild(ITmfProjectModelElement child);
b544077e 78 /**
c8422608 79 * Method to remove a child from the model element.
b544077e
BH
80 * @param child A child element to remove
81 */
12c155f5 82 public void removeChild(ITmfProjectModelElement child);
b544077e
BH
83 /**
84 * Method to request to refresh the project.
85 */
12c155f5
FC
86 public void refresh();
87}
This page took 0.035976 seconds and 5 git commands to generate.