try {
analyzeProblems();
} catch (ServiceRuntimeException e) {
throw e;
} catch (Exception e) {
throw new ContributionReadException(e);
}
// Resolve the contribution dependencies
contributionDependencyBuilder.buildContributionDependencies(contribution, workspace);
contributionProcessor.resolve(contribution, workspace.getModelResolver());
try {
analyzeProblems();
} catch (ServiceRuntimeException e) {
throw e;
} catch (Exception e) {
throw new ContributionReadException(e);
}
return contribution;
} catch (ContributionReadException e) {
throw e;
} catch (ContributionResolveException e) {
throw new ContributionReadException(e);
} catch (MalformedURLException e) {
throw new ContributionReadException(e);
}
}