/* * Copyright 2011-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.explorer.s3.actions; import org.eclipse.jface.action.IMenuManager; import org.eclipse.jface.action.Separator; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.ui.navigator.CommonActionProvider; import com.amazonaws.eclipse.explorer.s3.OpenBucketEditorAction; import com.amazonaws.services.s3.model.Bucket; public class S3ActionProvider extends CommonActionProvider { @Override public void fillContextMenu(IMenuManager menu) { IStructuredSelection selection = (IStructuredSelection) getContext().getSelection(); if (selection.size() == 1 && selection.toList().get(0) instanceof Bucket) { Bucket bucket = (Bucket)selection.toList().get(0); menu.add(new OpenBucketEditorAction(bucket.getName())); menu.add(new Separator()); } boolean onlyBucketsSelected = true; for (Object obj : selection.toList()) { if (obj instanceof Bucket == false) { onlyBucketsSelected = false; break; } } menu.add(new CreateBucketAction()); if (onlyBucketsSelected) { menu.add(new DeleteBucketAction(selection.toList())); } } }