21 import org.eclipse.core.runtime.CoreException; |
21 import org.eclipse.core.runtime.CoreException; |
22 import org.eclipse.core.runtime.IConfigurationElement; |
22 import org.eclipse.core.runtime.IConfigurationElement; |
23 import org.eclipse.wst.jsdt.core.IIncludePathEntry; |
23 import org.eclipse.wst.jsdt.core.IIncludePathEntry; |
24 import org.symbian.tools.tmw.core.TMWCore; |
24 import org.symbian.tools.tmw.core.TMWCore; |
25 import org.symbian.tools.tmw.core.projects.IFacetIncludePathProvider; |
25 import org.symbian.tools.tmw.core.projects.IFacetIncludePathProvider; |
26 import org.symbian.tools.tmw.core.projects.IMTWProject; |
26 import org.symbian.tools.tmw.core.projects.ITMWProject; |
27 |
27 |
28 public class LazyIncludePathProvider implements IFacetIncludePathProvider { |
28 public class LazyIncludePathProvider implements IFacetIncludePathProvider { |
29 private final IConfigurationElement element; |
29 private final IConfigurationElement element; |
30 private LazyIncludePathProvider provider; |
30 private LazyIncludePathProvider provider; |
31 |
31 |
32 public LazyIncludePathProvider(IConfigurationElement element) { |
32 public LazyIncludePathProvider(IConfigurationElement element) { |
33 this.element = element; |
33 this.element = element; |
34 } |
34 } |
35 |
35 |
36 public IIncludePathEntry[] getEntries(IMTWProject project) { |
36 public IIncludePathEntry[] getEntries(ITMWProject project) { |
37 if (provider == null) { |
37 if (provider == null) { |
38 try { |
38 try { |
39 provider = (LazyIncludePathProvider) element.createExecutableExtension("class"); |
39 provider = (LazyIncludePathProvider) element.createExecutableExtension("class"); |
40 } catch (CoreException e) { |
40 } catch (CoreException e) { |
41 TMWCore.log(null, e); |
41 TMWCore.log(null, e); |