Java Reference
In-Depth Information
pins indicate extension-points, while filled pins indicate extensions that are
linked to their corresponding point.
Figure 10-23
GMF runtime extension-points
Figure 10-24 is a diagram of the
org.eclipse.gmf.runtime.common.
core.service
package, which contains the key elements of the service infra-
structure and API.
The
IProvider
interface declares a
provides()
method for use in deter-
mining the applicability of a service to handle a given operation. As shown in the
IProvider
interface, a
Provider
can have change listeners attached. The
AbstractProvider
class implements the
IProvider
interface and has an
abstract subclass
Service
, which is provided for clients to extend when creat-
ing new services. The
Service
class maintains a list of its providers, which are
added with a
ProviderPriority
and
ProviderDescriptor
. The following
priorities are defined in the
ProviderPriority
enumeration and specify the
provider's relative importance:
LOWEST
,
LOW
,
MEDIUM
,
HIGH
, or
HIGHEST
.
In addition to the
ProviderPriority
, a provider is selected by taking into
account an
ExecutionStrategy
. This enables you to specify an order during
execution of a given
IOperation
, which complements the priority. Table 10-4
includes each strategy that the
ExecutionStrategy
enumeration defines and
its meaning to the
Service
.
Search WWH ::
Custom Search