| /** |
| * Copyright (c) 2006 IBM Corporation. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - Initial Implementation |
| * |
| */ |
| package org.eclipse.ptp.remotetools.environment.extension; |
| |
| import java.util.Map; |
| |
| import org.eclipse.core.runtime.CoreException; |
| import org.eclipse.ptp.remotetools.environment.control.ITargetControl; |
| import org.eclipse.ptp.remotetools.environment.core.ITargetElement; |
| import org.eclipse.ptp.remotetools.environment.wizard.AbstractEnvironmentDialogPage; |
| |
| |
| |
| /** |
| * Provides an interface that is an extension of a target type. This extension |
| * must be implemented by each plugin that extends the |
| * Environment Control Delegate extension point, in order to define |
| * a new target type. |
| * |
| * @author Ricardo M. Matinata, Richard Maciel |
| * @since 1.1 |
| */ |
| public interface ITargetTypeExtension { |
| |
| /** |
| * Given the attributes, produces a fresh new control instance. |
| * @param element TODO |
| * |
| * @return the control instance |
| */ |
| ITargetControl controlFactory(ITargetElement element) throws CoreException; |
| |
| /** |
| * Provides an array with all the attributes' name needed by the |
| * associated controlFactory. Only non-ciphered attributes are listed here. |
| * |
| * @return an array of attributes' name |
| */ |
| String[] getControlAttributeNames(); |
| |
| /** |
| * Provides a Dialog Page to edit the associated control's |
| * attributes |
| * This should be used to edit an existent target environment |
| * |
| * @param attributes the attributes' map. May be null in the case of a new configuration. |
| * @param name the configuration's key name. May be null in the case of a new configuration. |
| * @return an wizard page |
| */ |
| AbstractEnvironmentDialogPage dialogPageFactory(ITargetElement targetElement); |
| |
| /** |
| * Provides a Dialog Page to edit the associated control's |
| * attributes |
| * This should be used when a new Target Environment is created |
| * |
| * @return an wizard page |
| */ |
| AbstractEnvironmentDialogPage dialogPageFactory(); |
| |
| /** |
| * Provides an array with all the attributes' name needed by the |
| * associated controlFactory. Only ciphered attributes are listed here. |
| * |
| * @return an array of attributes' name |
| */ |
| String[] getControlAttributeNamesForCipheredKeys(); |
| } |