/** * Aptana Studio * Copyright (c) 2005-2011 by Appcelerator, Inc. All Rights Reserved. * Licensed under the terms of the GNU Public License (GPL) v3 (with exceptions). * Please see the license.html included with this distribution for details. * Any modifications to this file must keep this entire header intact. */ package com.aptana.deploy; import org.eclipse.core.resources.IContainer; import org.eclipse.core.runtime.IProgressMonitor; public interface IDeployProvider { /** * Attempt to deploy the provided project or folder. * * @param container * @param monitor */ public void deploy(IContainer container, IProgressMonitor monitor); /** * Is this a project or folder that can be handled by this provider? This method is used to implicitly bind a * container to a provider, when we haven't explicitly deployed via a provider yet. In real terms, this means * looking to see if this container was set up to deploy to this provider outside the deploy wizard (and maybe * outside the IDE). * * @param selectedContainer * @return */ public boolean handles(IContainer selectedContainer); /** * Returns the text of the menu item for deploying. If null is returned, the name associated with the deploy command * will be used. * * @return the text of the menu item, or null if the default name for the deploy command should be used */ public String getDeployMenuName(); }