}
// public for testing
public void addHyperlinksHelper(IBeansConfig config, final String typeName, final IProject project,
final Set<AutowireBeanHyperlink> hyperlinks) {
final AutowireDependencyProvider autowireDependencyProvider = new AutowireDependencyProvider(config, config);
final String[][] beanNamesWrapper = new String[1][];
try {
IProjectClassLoaderSupport classLoaderSupport = JdtUtils.getProjectClassLoaderSupport(project.getProject(),
null);
autowireDependencyProvider.setProjectClassLoaderSupport(classLoaderSupport);
classLoaderSupport.executeCallback(new IProjectClassLoaderAwareCallback() {
public void doWithActiveProjectClassLoader() throws Throwable {
autowireDependencyProvider.preloadClasses();
beanNamesWrapper[0] = autowireDependencyProvider.getBeansForType(typeName);
}
});
}
catch (Throwable e) {
BeansCorePlugin.log(e);
}
String[] beanNames = beanNamesWrapper[0];
for (final String beanName : beanNames) {
IBean bean = autowireDependencyProvider.getBean(beanName);
final IResource resource = bean.getElementResource();
final int line = bean.getElementStartLine();
if (resource instanceof IFile) {
AutowireBeanHyperlink newHyperlink = new AutowireBeanHyperlink((IFile) resource, line, beanName);
boolean found = false;