KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > eclipse > ui > internal > components > registry > IComponentScope


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.registry;
12
13 import org.eclipse.ui.internal.components.framework.ClassIdentifier;
14
15
16 /**
17  * Returns information about a scope registered with the
18  * org.eclipse.core.components.services extension point.
19  *
20  * Not intended to be implemented by clients.
21  *
22  * <p>EXPERIMENTAL: The components framework is currently under active development. All
23  * aspects of this class including its existence, name, and public interface are likely
24  * to change during the development of Eclipse 3.1</p>
25  *
26  * @since 3.1
27  */

28 public interface IComponentScope {
29     
30     /**
31      * Returns identifiers for the set of Class keys that can be obtained
32      * from this scope. Does not include classes inherited from parent
33      * scopes.
34      *
35      * @return the set of interface keys that can be obtained from this scope.
36      */

37     public ClassIdentifier[] getTypes();
38     
39     /**
40      * Returns the ID for this scope.
41      *
42      * @return the ID for this scope
43      */

44     public String JavaDoc getScopeId();
45     
46     /**
47      * Returns the set of known parent scopes. This includes both required
48      * and extended scopes. If the scope is required, then components in this
49      * scope depend on the services in the parent scope but this scope does
50      * not include the parent scope. If this scope extends the parent scope,
51      * then all of the services in the parent scope are also available through
52      * this scope.
53      *
54      * @return the set of all scopes referenced by this scope
55      */

56     public IScopeReference[] getParentScopes();
57     
58     /**
59      * Returns all scopes that reference this scope. This includes scopes
60      * that extend this scope and scopes that depend on this scope.
61      *
62      * @return the set of all scopes that reference this scope
63      */

64     public IScopeReference[] getChildScopes();
65     
66     /**
67      * Returns the set of class dependencies for this scope. This does not
68      * include dependencies inherited from other scopes or dependencies on
69      * other scopes.
70      *
71      * @return the set of class dependencies for this scope
72      */

73     public ClassIdentifier[] getDependencies();
74 }
75
Popular Tags