blob: 1e672f17031e951e418614250cf8a44a195c1ef8 [file] [log] [blame]
package org.eclipse.scout.sdk.compatibility.v36v37v41.internal;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.pde.internal.core.PDECore;
import org.eclipse.pde.internal.core.target.provisional.ITargetDefinition;
import org.eclipse.pde.internal.core.target.provisional.ITargetHandle;
import org.eclipse.pde.internal.core.target.provisional.ITargetPlatformService;
import org.eclipse.pde.internal.core.target.provisional.LoadTargetDefinitionJob;
import org.eclipse.scout.sdk.compatibility.internal.service.ITargetPlatformCompatService;
@SuppressWarnings("restriction")
public class TargetPlatformCompatService implements ITargetPlatformCompatService {
@Override
public void resolveTargetPlatform(IFile targetFile, boolean loadPlatform, IProgressMonitor monitor) throws CoreException {
ITargetPlatformService targetService = (ITargetPlatformService) PDECore.getDefault().acquireService(ITargetPlatformService.class.getName());
ITargetHandle handle = targetService.getTarget(targetFile);
ITargetDefinition def = handle.getTargetDefinition();
def.resolve(monitor);
if (loadPlatform) {
LoadTargetDefinitionJob loadJob = new LoadTargetDefinitionJob(def);
loadJob.schedule();
}
}
}