blob: f638c4f5a0736716308e17c1502f9353850ab039 [file] [log] [blame]
package org.eclipse.epp.installer.internal.console;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.epp.installer.core.model.IInstallStep;
/**
* A console based installer will first check that the install step has an
* adapter implementing this interface interface and then call
* {@link #prompt(Console)} once for the receiver to display information to the
* user, prompt the user for input and cache that input into the install options
* object.
*/
public interface IConsoleStep {
/**
* Return associated install step instance.
* @return associated install step.
*/
IInstallStep getInstallStep();
/**
* Called so that the operation can interact with the user via the console.
*
* @param console
* the console used to interact with the user.
* @return <code>OK_STATUS</code> if the installation should continue,
* <code>CANCEL_STATUS</code> if the user canceled the installation, or
* throw an exception if a problem has occurred.
*/
IStatus prompt(Console console) throws Exception;
}