01: /*******************************************************************************
02: * Copyright (c) 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.jdt.debug.core;
11:
12: import org.eclipse.debug.core.DebugException;
13: import org.eclipse.debug.core.model.IDebugElement;
14:
15: /**
16: * Represents a thread group in the target VM.
17: *
18: * @since 3.2
19: */
20: public interface IJavaThreadGroup extends IDebugElement {
21:
22: /**
23: * Returns the threads in this thread group. Does not include
24: * threads in subgroups.
25: *
26: * @return threads in this group
27: * @throws DebugException
28: */
29: public IJavaThread[] getThreads() throws DebugException;
30:
31: /**
32: * Returns whether this group contains any threads.
33: *
34: * @return whether this group contains any threads
35: * @throws DebugException
36: */
37: public boolean hasThreads() throws DebugException;
38:
39: /**
40: * Returns the thread group this thread group is contained in or <code>null</code>
41: * if none.
42: *
43: * @return parent thread group or <code>null</code>
44: * @throws DebugException
45: */
46: public IJavaThreadGroup getThreadGroup() throws DebugException;
47:
48: /**
49: * Returns whether this thread group contains subgroups.
50: *
51: * @return whether this thread group contains subgroups
52: * @throws DebugException
53: */
54: public boolean hasThreadGroups() throws DebugException;
55:
56: /**
57: * Returns immediate thread groups contained in this thread. Does not include
58: * subgroups of immediate groups.
59: *
60: * @return thread groups contained in this group
61: * @throws DebugException
62: */
63: public IJavaThreadGroup[] getThreadGroups() throws DebugException;
64:
65: /**
66: * Returns the name of this thread group.
67: *
68: * @return thread group name
69: * @throws DebugException
70: */
71: public String getName() throws DebugException;
72: }
|