01: /*******************************************************************************
02: * Copyright (c) 2000, 2006 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * IBM Corporation - initial API and implementation
10: *******************************************************************************/package org.eclipse.ui.views.markers.internal;
11:
12: /**
13: * The MarkerNode class is the class that handles category nodes and
14: * concrete markers.
15: *
16: */
17: public abstract class MarkerNode {
18:
19: /**
20: * Get the children of the node.
21: * @return MarkerNode[]
22: */
23: public abstract MarkerNode[] getChildren();
24:
25: /**
26: * Return the parent node or <code>null</code> if this is a top
27: * level element.
28: * @return MarkerNode
29: */
30: public abstract MarkerNode getParent();
31:
32: /**
33: * Return whether or not this is a concrete node
34: * @return boolean
35: */
36: public abstract boolean isConcrete();
37:
38: /**
39: * Return the description of the receiver.
40: * @return String
41: */
42: public abstract String getDescription();
43:
44: /**
45: * Get a concrete marker from the receiver. If the receiver
46: * is concrete return the receiver otherwise return one of the
47: * concrete markers it contains.
48: * @return ConcreteMarker
49: */
50: public abstract ConcreteMarker getConcreteRepresentative();
51:
52: }
|