[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[equinox-dev] Extension Registry optional import of org.eclipse.core.runtime.jobs


In the manifest of org.eclipse.equinox.registry bundle, the
org.eclipse.core.runtime.jobs import is marked optional. However, it
doesn't work this way. If you remove the org.eclipse.core.jobs bundle,
you end with class not found exception.

This is expectable because no where in the code there is a check whether
 jobs bundle is provided. The logic always use EquinoxRegistryStrategy
which depends on jobs bundle. The correct strategy which should be used
is RegistryStrategyOSGI. But it is never used.

The version I talk about is 3.2.1.

In the CVS HEAD, the activator now checks whether the configuration
location is available and make decision on this - whether to use the
EquinoxRegistryStrategy or RegistryStrategyOSGI. So, the only thing
which determines whether to use container time stamp (through
PlatformAdmin) and not use Jobs mechanism for notifying is the presence
of configuration location.

So, if the registry is deployed on OSGi standard container (which
doesn't provide configuration locations) it will use the correct
strategy (no jobs and no PlatformAdmin usage)
If the configuration locations is available, then the container should
be equinox and will use the container time stamp (OK) and will use jobs

It appears that I need jobs to run registry on Equinox. What if I want
to run registry on Equinox and don't use jobs bundle?

So, the questions are the following:

1. Do I overlooked something?
2. Why this optional import even exists in 3.2.1
3. Where should I post my comments on the CVS HEAD version