/** * SlingBeans - NetBeans Sling plugin https://github.com/jkan997/SlingBeans * Licensed under Apache 2.0 license http://www.apache.org/licenses/LICENSE-2.0 */ package org.jkan997.slingbeans.nbactions.node; import java.awt.event.ActionEvent; import org.jkan997.slingbeans.helper.LogHelper; import org.jkan997.slingbeans.helper.SwingHelper; import org.jkan997.slingbeans.nbactions.AbstractAction; import org.jkan997.slingbeans.nbtree.SlingNode; import org.jkan997.slingbeans.slingfs.FileObject; import org.jkan997.slingbeans.slingfs.FileSystem; public class RemoveNodeAction extends AbstractAction { private SlingNode node; private String initialSelection = null; private boolean lockSelection = false; public RemoveNodeAction(SlingNode node) { setActionName("Remove node..."); this.node = node; } @Override public void actionPerformed(ActionEvent e) { try { FileObject fo = node.getFileObject(); String msg = String.format("Are you sure to delete file: %s", fo.getPath()); boolean confirmed = SwingHelper.showConfirmation(msg); if (confirmed) { FileSystem fs = fo.getFileSystem(); fs.remove(fo.getPath()); SlingNode parentNode = (SlingNode)node.getParentNode(); parentNode.refresh(); } } catch (Exception ex) { LogHelper.logError(ex); } } }