return object;
}
} else {
// object does not exists, try to find a provider
IProvider provider = findProvider(key);
if (provider != null) {
try {
Object object = provider.provide();
if (object != null) {
createEntry(key, object);
return object;
}
} catch (Exception e) {
String msg = "provider exception :" + key; //$NON-NLS-1$
String id = provider.getExtension().getNamespace();
IStatus status = new Status(IStatus.WARNING, id, 0, msg, e);
ProjectPlugin.getPlugin().getLog().log(status);
}
}