[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [p2-dev] use of dropins support in rcp app?
|
Some more info on this. I created a new rcp app, and added the relevant
bundles. Further I created a trivial fragment bundle and after
exporting the app and creating a dropins directory, added the fragment
bundle to the dropins directory.
What I'm seeing...the directory watcher is doing it's job, and
processBundle method on class
org.eclipse.equinox.internal.provisional.p2.directorywatcher.RepositoryListener
gets called when a fragment is put in the dropins directory:
private boolean processBundle(File file, boolean isDirectory,
boolean isAddition) {
BundleDescription bundleDescription =
BundlesAction.createBundleDescription(file);
if (bundleDescription == null)
return false;
advice.setProperties(file, file.lastModified(), file.toURI());
return publish(new BundlesAction(new BundleDescription[]
{bundleDescription}), isAddition);
// TODO see bug 222370
// we only want to return the bundle IU so must exclude all
fragment IUs
// not sure if this is still relevant but we should investigate.
}
The following line from the above gets executed
return publish(new BundlesAction(new BundleDescription[]
{bundleDescription}), isAddition);
and publish() is defined as:
private boolean publish(IPublisherAction action, boolean isAddition) {
IPublisherResult result = isAddition ? iusToAdd : iusToChange;
return action.perform(info, result, new
NullProgressMonitor()).isOK();
}
The action.perform(...).isOK() returns *true*, but performing this
action has no apparent effect...the bundle in the dropins directory is
not added to the framework, and I can see that it's also not added to
bundles.info file.
I haven't yet debugged into the action.perform, but this is what I'm
going to do next. I looked at the bug referenced in the source...it
doesn't seem to be related to this issue.
Thanks for any further pointers/info.
Scott