class DeleteEdgesWithNodes extends BasicEdgesManipulator {

    private Edge[] edges;
    private boolean deleteSource, deleteTarget;

    @Override
    public void setup(Edge[] edges, Edge clickedEdge) {
        this.edges = edges;
    }

    @Override
    public void execute() {
        GraphElementsController gec = Lookup.getDefault().lookup(GraphElementsController.class);
        gec.deleteEdgesWithNodes(edges, deleteSource, deleteTarget);
    }

    @Override
    public String getName() {<FILL_FUNCTION_BODY>}

    @Override
    public String getDescription() {
        return "";
    }

    @Override
    public boolean canExecute() {
        return true;
    }

    @Override
    public ManipulatorUI getUI() {
        return new DeleteEdgesWithNodesUI();
    }

    @Override
    public int getType() {
        return 100;
    }

    @Override
    public int getPosition() {
        return 400;
    }

    @Override
    public Icon getIcon() {
        return ImageUtilities.loadImageIcon("DataLaboratoryPlugin/cross.png", false);
    }

    public void setDeleteSource(boolean deleteSource) {
        this.deleteSource = deleteSource;
    }

    public void setDeleteTarget(boolean deleteTarget) {
        this.deleteTarget = deleteTarget;
    }
}

        if (edges.length > 1) {
            return NbBundle.getMessage(DeleteEdgesWithNodes.class, "DeleteEdgesWithNodes.name.multiple");
        } else {
            return NbBundle.getMessage(DeleteEdgesWithNodes.class, "DeleteEdgesWithNodes.name.single");
        }
    
<methods>public non-sealed void <init>() ,public java.lang.Integer getMnemonicKey() ,public org.gephi.datalab.spi.ContextMenuItemManipulator[] getSubItems() ,public boolean isAvailable() <variables>