@Override public synchronized ISourceContainer[] getSourceContainers() throws CoreException { if (fContainers == null) { fContainers = createSourceContainers(); for (int i = 0; i < fContainers.length; i++) { ISourceContainer container = fContainers[i]; container.init(getDirector()); } } return fContainers; }