core/com.nokia.carbide.discovery.ui/src/com/nokia/carbide/internal/discovery/ui/p2/DynamicP2Installer.java
changeset 2012 df3206234d8e
parent 2001 75d787292eea
child 2034 8ca82bbe1973
equal deleted inserted replaced
2011:445b096b330f 2012:df3206234d8e
    37 import org.eclipse.equinox.p2.repository.metadata.IMetadataRepository;
    37 import org.eclipse.equinox.p2.repository.metadata.IMetadataRepository;
    38 import org.eclipse.equinox.p2.repository.metadata.IMetadataRepositoryManager;
    38 import org.eclipse.equinox.p2.repository.metadata.IMetadataRepositoryManager;
    39 import org.eclipse.equinox.p2.ui.ProvisioningUI;
    39 import org.eclipse.equinox.p2.ui.ProvisioningUI;
    40 
    40 
    41 import com.nokia.carbide.discovery.ui.Activator;
    41 import com.nokia.carbide.discovery.ui.Activator;
       
    42 import com.nokia.carbide.remoteconnections.RemoteConnectionsActivator;
    42 
    43 
    43 /**
    44 /**
    44  * Installer to install features from a p2 repository at a supplied URL or directory.
    45  * Installer to install features from a p2 repository at a supplied URL or directory.
    45  * 
    46  * 
    46  * The supplied directory should have as sub-directories features and plugins. These 
    47  * The supplied directory should have as sub-directories features and plugins. These 
    78 	/**
    79 	/**
    79 	 * Performs the install.
    80 	 * Performs the install.
    80 	 * @param monitor An implementation of IProgressMonitor, usually showing the 
    81 	 * @param monitor An implementation of IProgressMonitor, usually showing the 
    81 	 * installation progress as a Progress Bar to the user.
    82 	 * installation progress as a Progress Bar to the user.
    82 	 */
    83 	 */
    83 	public static IStatus install(File repositoryDirectory, IProgressMonitor monitor) {
    84 	public static IStatus install(String sdkId, File repositoryDirectory, IProgressMonitor monitor) {
    84 		try {
    85 		try {
    85 			DynamicP2Installer installer = new DynamicP2Installer(repositoryDirectory);
    86 			DynamicP2Installer installer = new DynamicP2Installer(repositoryDirectory);
    86 			installer.doInstall(monitor);
    87 			installer.doInstall(monitor);
       
    88 			RemoteConnectionsActivator.getStatusDisplay().displayStatus(
       
    89 					Activator.makeStatus(IStatus.INFO, "Installed features from " + sdkId, null));
    87 			return Status.OK_STATUS;
    90 			return Status.OK_STATUS;
    88 		} catch (CoreException e) {
    91 		} catch (CoreException e) {
    89 			return e.getStatus();
    92 			return e.getStatus();
    90 		} catch (FileNotFoundException e) {
    93 		} catch (FileNotFoundException e) {
    91 			return Activator.makeErrorStatus(null, e);
    94 			return Activator.makeErrorStatus(null, e);