class GraphFileAction extends AbstractAction {

    private final AbstractExporterUI<GraphFileExporterBuilder> exporterUI;

    public GraphFileAction() {
        super(NbBundle.getMessage(GraphFileAction.class, "CTL_ExportGraphAction"));

        exporterUI = new AbstractExporterUI<>("GraphFileExporterUI", GraphFileExporterBuilder.class);
    }

    @Override
    public void actionPerformed(ActionEvent e) {<FILL_FUNCTION_BODY>}
}

        if(e.getSource() instanceof GraphFileExporterBuilder[]) {
            exporterUI.action(Arrays.asList((GraphFileExporterBuilder[]) e.getSource()));
        } else {
            exporterUI.action();
        }
    
<methods>public void <init>() ,public void <init>(java.lang.String) ,public void <init>(java.lang.String, javax.swing.Icon) ,public synchronized void addPropertyChangeListener(java.beans.PropertyChangeListener) ,public java.lang.Object[] getKeys() ,public synchronized java.beans.PropertyChangeListener[] getPropertyChangeListeners() ,public java.lang.Object getValue(java.lang.String) ,public boolean isEnabled() ,public void putValue(java.lang.String, java.lang.Object) ,public synchronized void removePropertyChangeListener(java.beans.PropertyChangeListener) ,public void setEnabled(boolean) <variables>private static java.lang.Boolean RECONFIGURE_ON_NULL,private transient javax.swing.ArrayTable arrayTable,protected javax.swing.event.SwingPropertyChangeSupport changeSupport,protected boolean enabled