/* * Copyright 2009-2012 Amazon Technologies, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://aws.amazon.com/apache2.0 * * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES * OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and * limitations under the License. */ package com.amazonaws.eclipse.ec2.ui.views.instances; import org.eclipse.jface.action.Action; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.MessageBox; import org.eclipse.swt.widgets.Shell; import com.amazonaws.eclipse.ec2.Ec2Plugin; final class TerminateInstancesAction extends Action { private final InstanceSelectionTable instanceSelectionTable; /** * @param instanceSelectionTable */ TerminateInstancesAction(InstanceSelectionTable instanceSelectionTable) { super(); this.instanceSelectionTable = instanceSelectionTable; } public void run() { MessageBox messageBox = new MessageBox(new Shell(), SWT.ICON_WARNING | SWT.OK | SWT.CANCEL); messageBox.setText("Terminate selected instances?"); messageBox.setMessage("If you continue, you won't be able to access these instances again."); // Bail out if the user cancels... if (messageBox.open() == SWT.CANCEL) return; new TerminateInstancesThread(this.instanceSelectionTable, instanceSelectionTable.getAllSelectedInstances()).start(); } @Override public ImageDescriptor getImageDescriptor() { return Ec2Plugin.getDefault().getImageRegistry().getDescriptor("terminate"); } @Override public String getText() { return "Terminate"; } @Override public String getToolTipText() { return "Terminate instances"; } }