From 071f3fe5982e2c6d4eadf810fa87ffe2ee30d742 Mon Sep 17 00:00:00 2001 From: jendave Date: Wed, 26 Oct 2011 20:10:53 +0000 Subject: [PATCH] checkstyle --- src/main/java/forge/error/BugzReporter.java | 871 +++++++++--------- src/main/java/forge/error/ErrorViewer.java | 115 ++- .../java/forge/error/ExceptionHandler.java | 29 +- src/main/java/forge/error/package-info.java | 2 +- 4 files changed, 495 insertions(+), 522 deletions(-) diff --git a/src/main/java/forge/error/BugzReporter.java b/src/main/java/forge/error/BugzReporter.java index 7a7e135c36b..1f251b222e9 100644 --- a/src/main/java/forge/error/BugzReporter.java +++ b/src/main/java/forge/error/BugzReporter.java @@ -1,30 +1,31 @@ package forge.error; import java.awt.BorderLayout; +import java.awt.Dimension; import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.net.MalformedURLException; +import java.net.URL; import javax.swing.JButton; -import javax.swing.JDialog; -import javax.swing.JPanel; -import javax.swing.border.EmptyBorder; - -import forge.Singletons; -import forge.model.BuildInfo; -import forge.properties.ForgePreferences; - -import javax.swing.JLabel; import javax.swing.JCheckBox; -import javax.swing.JOptionPane; -import javax.swing.SwingConstants; -import javax.swing.JTextField; -import javax.swing.JPasswordField; import javax.swing.JComboBox; +import javax.swing.JDialog; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JPasswordField; +import javax.swing.JScrollPane; import javax.swing.JSeparator; import javax.swing.JTextArea; -import java.awt.Dimension; -import javax.swing.JScrollPane; +import javax.swing.JTextField; +import javax.swing.SwingConstants; +import javax.swing.border.EmptyBorder; import org.apache.log4j.Logger; +import org.mantisbt.connect.Enumeration; import org.mantisbt.connect.MCException; import org.mantisbt.connect.axis.MCSession; import org.mantisbt.connect.model.CustomFieldValue; @@ -34,467 +35,419 @@ import org.mantisbt.connect.model.IMCAttribute; import org.mantisbt.connect.model.IProjectVersion; import org.mantisbt.connect.model.MCAttribute; import org.mantisbt.connect.ui.DefaultSubmitter; -import org.mantisbt.connect.Enumeration; -import java.awt.Font; -import java.awt.event.ActionEvent; -import java.net.MalformedURLException; -import java.net.URL; -import java.awt.event.ActionListener; +import forge.Singletons; +import forge.model.BuildInfo; +import forge.properties.ForgePreferences; +/** + * The Class BugzReporter. + */ public class BugzReporter extends JDialog { - /** - * - */ - private static final long serialVersionUID = -4068301054750322783L; + /** + * + */ + private static final long serialVersionUID = -4068301054750322783L; - private ForgePreferences prefs= null; - - private final JPanel contentPanel = new JPanel(); - private JTextField txtUserName; - private JPasswordField txtPassword = new JPasswordField(); - private JComboBox cboCategory = new JComboBox(); - private JTextField txtSummary; - private JTextArea txtDescription = new JTextArea(); - private JTextArea txtErrorDump = new JTextArea(); - private JComboBox cboVersion = new JComboBox(); - private JComboBox cboSeverity = new JComboBox(); - final JCheckBox chkReportAnonymously = new JCheckBox("Report Anonymously"); - private JTextField txtSVN; - private JLabel lblAddInfo = new JLabel(); - private JTextArea txtSteps = new JTextArea(); - - private static BugzReporter dialog = null; - - private IMCAttribute Severities[]; + private ForgePreferences prefs = null; - /** - * Launch the application. - */ - public static void main(String[] args) { - //try { - dialog.setVisible(true); - //} catch (Exception e) { - //System.out.println("Exception - main - " + e.getMessage()); - //} - } + private final JPanel contentPanel = new JPanel(); + private JTextField txtUserName; + private JPasswordField txtPassword = new JPasswordField(); + private JComboBox cboCategory = new JComboBox(); + private JTextField txtSummary; + private JTextArea txtDescription = new JTextArea(); + private JTextArea txtErrorDump = new JTextArea(); + private JComboBox cboVersion = new JComboBox(); + private JComboBox cboSeverity = new JComboBox(); + + /** The chk report anonymously. */ + final JCheckBox chkReportAnonymously = new JCheckBox("Report Anonymously"); + private JTextField txtSVN; + private JLabel lblAddInfo = new JLabel(); + private JTextArea txtSteps = new JTextArea(); + + private static BugzReporter dialog = null; + + private IMCAttribute[] Severities; + + /** + * Launch the application. + * + * @param args + * the arguments + */ + public static void main(final String[] args) { + // try { + dialog.setVisible(true); + // } catch (Exception e) { + // System.out.println("Exception - main - " + e.getMessage()); + // } + } + + /** + * Sets the dump text. + * + * @param dump + * the new dump text + */ + public final void setDumpText(final String dump) { + txtErrorDump.setText(dump); + lblAddInfo.setText("Crash Report"); + cboCategory.setSelectedItem("New Crash Report"); + } + + /** + * Create the dialog. + */ + public BugzReporter() { + dialog = this; + setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); + setResizable(false); - public void setDumpText(String dump) { - txtErrorDump.setText(dump); - lblAddInfo.setText("Crash Report"); - cboCategory.setSelectedItem("New Crash Report"); - } - - /** - * Create the dialog. - */ - public BugzReporter() { - dialog = this; - setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - setResizable(false); - // Init Logger for Axis, which is used by Mantis Library - org.apache.log4j.ConsoleAppender appCON = new org.apache.log4j.ConsoleAppender(new org.apache.log4j.SimpleLayout(), "System.out"); + org.apache.log4j.ConsoleAppender appCON = new org.apache.log4j.ConsoleAppender( + new org.apache.log4j.SimpleLayout(), "System.out"); - org.apache.log4j.Logger logAxis= Logger.getLogger("org.apache.axis"); + org.apache.log4j.Logger logAxis = Logger.getLogger("org.apache.axis"); logAxis.addAppender(appCON); logAxis.setLevel(org.apache.log4j.Level.ERROR); // Init Logger - - //System.out.println(System.getProperties().toString().replace(", ", "\n")); - - MCSession mCS = null; - - try { - mCS = new MCSession(new URL("http://cardforge.org/bugz/api/soap/mantisconnect.php"), "ForgeGUI", "vi2ccTbfBUu^"); - } catch (MalformedURLException e1) { - System.out.println("MalFormedURLException"); - } catch (MCException e1) { - System.out.println("MCException - new MCSession"); - } - String cats[] = {}; - try { - cats = mCS.getCategories(1); - } catch (MCException e1) { - System.out.println("MCException - getCategories - " + e1.getMessage()); - } - - try { - Severities = mCS.getEnum(Enumeration.SEVERITIES); - } catch (MCException e1) { - System.out.println("MCException - getEnum - " + e1.getMessage()); - } - - IProjectVersion[] vers = {}; - try { - vers = mCS.getVersions(1); - } catch (MCException e1) { - System.out.println("MCException - getVersions - " + e1.getMessage()); - } - - BuildInfo bi = Singletons.getModel().getBuildInfo(); - - setTitle("Report Issue"); - setBounds(100, 100, 442, 575); - getContentPane().setLayout(new BorderLayout()); - contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); - getContentPane().add(contentPanel, BorderLayout.CENTER); - contentPanel.setLayout(null); - { - JLabel lblMantisUsername = new JLabel("Username"); - lblMantisUsername.setHorizontalAlignment(SwingConstants.RIGHT); - lblMantisUsername.setBounds(10, 16, 75, 14); - contentPanel.add(lblMantisUsername); - } - { - txtUserName = new JTextField("ForgeGUI"); - txtUserName.setBounds(90, 13, 185, 21); - txtUserName.setFont(new Font("Dialog", Font.PLAIN, 11)); - contentPanel.add(txtUserName); - txtUserName.setColumns(4); - - try { - prefs = new ForgePreferences("forge.preferences"); - if (!prefs.BugzName.equals("")) { - txtUserName.setText(prefs.BugzName); - txtPassword.setText(prefs.BugzPwd); - chkReportAnonymously.setSelected(false); - } - else - chkReportAnonymously.setSelected(true); - } catch (Exception e) { - - } - } - { - chkReportAnonymously.setBounds(284, 11, 139, 25); - chkReportAnonymously.setFont(new Font("Dialog", Font.PLAIN, 12)); - chkReportAnonymously.setHorizontalAlignment(SwingConstants.CENTER); + // System.out.println(System.getProperties().toString().replace(", ", + // "\n")); - chkReportAnonymously.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(ActionEvent e) { - if (chkReportAnonymously.isSelected()) { - txtUserName.setText("ForgeGUI"); - txtPassword.setText("vi2ccTbfBUu^"); - } - else { - if (!prefs.BugzName.equals("")) { - txtUserName.setText(prefs.BugzName); - txtPassword.setText(prefs.BugzPwd); - } - } - } - }); + MCSession mCS = null; - contentPanel.add(chkReportAnonymously); - } - { - JLabel lblMantisPassword = new JLabel("Password"); - lblMantisPassword.setHorizontalAlignment(SwingConstants.RIGHT); - lblMantisPassword.setBounds(10, 45, 75, 14); - contentPanel.add(lblMantisPassword); - } - { - txtPassword.setBounds(90, 42, 185, 21); - txtPassword.setFont(new Font("Dialog", Font.PLAIN, 11)); - contentPanel.add(txtPassword); - } - { - JSeparator separator = new JSeparator(); - separator.setBounds(10, 69, 417, 2); - contentPanel.add(separator); - } - { - JLabel lblCategory = new JLabel("Category"); - lblCategory.setBounds(10, 81, 75, 14); - lblCategory.setFont(new Font("Tahoma", Font.BOLD, 11)); - lblCategory.setHorizontalAlignment(SwingConstants.RIGHT); - contentPanel.add(lblCategory); - } - { - cboCategory.setBounds(90, 77, 223, 22); - cboCategory.setFont(new Font("Dialog", Font.BOLD, 10)); - - if (cats.length > 0) { - for (int i=0; i

Additional
Information

"); - lblAddInfo.setBounds(10, 294, 75, 40); - lblAddInfo.setFont(new Font("Dialog", Font.PLAIN, 12)); - lblAddInfo.setHorizontalAlignment(SwingConstants.RIGHT); - - contentPanel.add(lblAddInfo); - } - { - JScrollPane scrollPane = new JScrollPane(); - scrollPane.setBounds(90, 254, 337, 120); - contentPanel.add(scrollPane); - { - txtErrorDump.setFont(new Font("Monospaced", Font.PLAIN, 10)); - scrollPane.setViewportView(txtErrorDump); - txtErrorDump.setAutoscrolls(false); - txtErrorDump.setMaximumSize(new Dimension(2147483647, 300)); - txtErrorDump.setBorder(null); - txtErrorDump.setLineWrap(true); - txtErrorDump.setWrapStyleWord(true); - txtErrorDump.setRows(8); - } - } - { - JLabel lblVersion = new JLabel("Version"); - lblVersion.setHorizontalAlignment(SwingConstants.RIGHT); - lblVersion.setBounds(20, 468, 65, 16); - lblVersion.setFont(new Font("Dialog", Font.PLAIN, 12)); - contentPanel.add(lblVersion); - } - { - cboVersion.setBounds(90, 465, 160, 22); - cboVersion.setFont(new Font("Dialog", Font.BOLD, 10)); - - cboVersion.addItem(""); - if (vers.length > 0) { - for (int i=0; i " + rx); - - if (curVer.equals("SVN")) { - cboVersion.setSelectedItem("SVN"); - } else { - for (int i=0; i 0) { - for (int i=0; i

Steps to
Reproduce

"); - lblSteps.setHorizontalAlignment(SwingConstants.RIGHT); - lblSteps.setFont(new Font("Dialog", Font.PLAIN, 12)); - lblSteps.setBounds(10, 400, 75, 40); - contentPanel.add(lblSteps); - } - { - JPanel buttonPane = new JPanel(); - buttonPane.setOpaque(false); - buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); - getContentPane().add(buttonPane, BorderLayout.SOUTH); - { - JButton cmdReport = new JButton("Report"); - cmdReport.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent arg0) { - doReport(); - } - }); - - buttonPane.add(cmdReport); - } - { - JButton cmdCancel = new JButton("Cancel"); - - cmdCancel.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent arg0) { - dialog.dispose(); - } - }); - - buttonPane.add(cmdCancel); - } - } - } - - private void doReport() { - Report: { - - if (txtSummary.getText().length() < 4) { - JOptionPane.showMessageDialog(null, "Summary field must be provided", "Bug Report", JOptionPane.ERROR_MESSAGE); - break Report; - } - - if (txtDescription.getText().length() < 10) { - JOptionPane.showMessageDialog(null, "Description field must be provided", "Bug Report", JOptionPane.ERROR_MESSAGE); - break Report; - } - - MCSession rep = null; - if (!chkReportAnonymously.isSelected()) { - try { - rep = new MCSession(new URL("http://cardforge.org/bugz/api/soap/mantisconnect.php"), txtUserName.getText(), String.valueOf(txtPassword.getPassword())); - } catch (MalformedURLException e) { - System.out.println("MalFormedURLException"); - } catch (MCException e) { - System.out.println("MCException - new MCSession - " + e.getMessage()); - JOptionPane.showMessageDialog(null, "MCException - new MCSession - " + e.getMessage(), "Bug Report", JOptionPane.INFORMATION_MESSAGE); - break Report; - } - } else { - try { - rep = new MCSession(new URL("http://cardforge.org/bugz/api/soap/mantisconnect.php"), "ForgeGUI", "vi2ccTbfBUu^"); - } catch (MalformedURLException e) { - System.out.println("MalformedURLException"); - } catch (MCException e) { - System.out.println("MCException - new MCSession - " + e.getMessage()); - JOptionPane.showMessageDialog(null, "MCException - new MCSession - " + e.getMessage(), "Bug Report", JOptionPane.INFORMATION_MESSAGE); - break Report; - } - } - - IIssue iBug = null; try { - iBug = rep.newIssue(1); - } catch (MCException e) { - System.out.println("MCException - newIssue - " + e.getMessage()); - JOptionPane.showMessageDialog(null, "MCException - newIssue - " + e.getMessage(), "Bug Report", JOptionPane.INFORMATION_MESSAGE); - break Report; - } - - iBug.setCategory(cboCategory.getSelectedItem().toString()); - iBug.setSummary(txtSummary.getText()); - iBug.setDescription(txtDescription.getText()); - iBug.setAdditionalInformation(txtErrorDump.getText()); - iBug.setVersion(cboVersion.getSelectedItem().toString()); - - for (int i=0; i 0) { + for (int i = 0; i < cats.length; i++) { + cboCategory.addItem(cats[i]); + } + } + cboCategory.setSelectedItem("General Bug Report"); + contentPanel.add(cboCategory); + JLabel lblSummary = new JLabel("Summary"); + lblSummary.setBounds(10, 108, 75, 14); + lblSummary.setFont(new Font("Tahoma", Font.BOLD, 11)); + lblSummary.setHorizontalAlignment(SwingConstants.RIGHT); + contentPanel.add(lblSummary); + txtSummary = new JTextField(); + txtSummary.setBounds(90, 105, 337, 21); + txtSummary.setFont(new Font("Dialog", Font.PLAIN, 11)); + contentPanel.add(txtSummary); + txtSummary.setColumns(10); + JLabel lblDescription = new JLabel("Description"); + lblDescription.setBounds(10, 182, 75, 21); + lblDescription.setFont(new Font("Tahoma", Font.BOLD, 11)); + lblDescription.setHorizontalAlignment(SwingConstants.RIGHT); + contentPanel.add(lblDescription); + JScrollPane scrollPane = new JScrollPane(); + scrollPane.setBounds(90, 132, 337, 120); + contentPanel.add(scrollPane); + txtDescription.setFont(new Font("Dialog", Font.PLAIN, 10)); + scrollPane.setViewportView(txtDescription); + txtDescription.setBorder(null); + txtDescription.setWrapStyleWord(true); + txtDescription.setLineWrap(true); + txtDescription.setRows(8); + lblAddInfo.setText("

Additional
Information

"); + lblAddInfo.setBounds(10, 294, 75, 40); + lblAddInfo.setFont(new Font("Dialog", Font.PLAIN, 12)); + lblAddInfo.setHorizontalAlignment(SwingConstants.RIGHT); + contentPanel.add(lblAddInfo); + JScrollPane scrollPane3 = new JScrollPane(); + scrollPane3.setBounds(90, 254, 337, 120); + contentPanel.add(scrollPane3); + txtErrorDump.setFont(new Font("Monospaced", Font.PLAIN, 10)); + scrollPane.setViewportView(txtErrorDump); + txtErrorDump.setAutoscrolls(false); + txtErrorDump.setMaximumSize(new Dimension(2147483647, 300)); + txtErrorDump.setBorder(null); + txtErrorDump.setLineWrap(true); + txtErrorDump.setWrapStyleWord(true); + txtErrorDump.setRows(8); + JLabel lblVersion = new JLabel("Version"); + lblVersion.setHorizontalAlignment(SwingConstants.RIGHT); + lblVersion.setBounds(20, 468, 65, 16); + lblVersion.setFont(new Font("Dialog", Font.PLAIN, 12)); + contentPanel.add(lblVersion); + cboVersion.setBounds(90, 465, 160, 22); + cboVersion.setFont(new Font("Dialog", Font.BOLD, 10)); + cboVersion.addItem(""); + if (vers.length > 0) { + for (int i = 0; i < vers.length; i++) { + cboVersion.addItem(vers[i].getName()); + // System.out.println(vers[i].getName()); + } + } + cboVersion.setSelectedIndex(0); + String curVer = bi.getVersion(); + String[] ss = curVer.split("-"); + String rx = "^" + ss[0].replaceAll("\\.", "\\\\.") + ".*"; + System.out.println(ss[0] + " -> " + rx); + if (curVer.equals("SVN")) { + cboVersion.setSelectedItem("SVN"); + } else { + for (int i = 0; i < vers.length; i++) { + System.out.println(vers[i].getName()); + if (vers[i].getName().matches(rx)) { + System.out.println("match"); + cboVersion.setSelectedItem(vers[i].getName()); + } + } + } + contentPanel.add(cboVersion); + JLabel lblRev = new JLabel("SVN rev."); + lblRev.setBounds(247, 468, 66, 16); + lblRev.setHorizontalAlignment(SwingConstants.RIGHT); + lblRev.setFont(new Font("Dialog", Font.PLAIN, 12)); + contentPanel.add(lblRev); + txtSVN = new JTextField(); + String curRev = bi.getBuildID(); + if (curRev != null) { + if (!curRev.equals("null")) { + txtSVN.setText(curRev); + } + } + txtSVN.setBounds(318, 465, 109, 21); + txtSVN.setFont(new Font("Dialog", Font.PLAIN, 11)); + txtSVN.setColumns(10); + contentPanel.add(txtSVN); + JLabel lblSeverity = new JLabel("Severity"); + lblSeverity.setBounds(10, 496, 75, 16); + lblSeverity.setFont(new Font("Dialog", Font.PLAIN, 12)); + lblSeverity.setHorizontalAlignment(SwingConstants.RIGHT); + contentPanel.add(lblSeverity); + cboSeverity.setBounds(90, 493, 160, 22); + cboSeverity.setFont(new Font("Dialog", Font.BOLD, 10)); + cboSeverity.addItem(""); + if (Severities.length > 0) { + for (int i = 0; i < Severities.length; i++) { + cboSeverity.addItem(Severities[i].getName()); + } + } + contentPanel.add(cboSeverity); + JScrollPane scrollPane2 = new JScrollPane(); + scrollPane2.setBounds(90, 380, 337, 80); + contentPanel.add(scrollPane2); + txtSteps.setWrapStyleWord(true); + txtSteps.setRows(5); + txtSteps.setMaximumSize(new Dimension(2147483647, 300)); + txtSteps.setLineWrap(true); + txtSteps.setFont(new Font("Monospaced", Font.PLAIN, 10)); + txtSteps.setAutoscrolls(false); + scrollPane.setViewportView(txtSteps); + JLabel lblSteps = new JLabel(); + lblSteps.setText("

Steps to
Reproduce

"); + lblSteps.setHorizontalAlignment(SwingConstants.RIGHT); + lblSteps.setFont(new Font("Dialog", Font.PLAIN, 12)); + lblSteps.setBounds(10, 400, 75, 40); + contentPanel.add(lblSteps); + JPanel buttonPane = new JPanel(); + buttonPane.setOpaque(false); + buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); + getContentPane().add(buttonPane, BorderLayout.SOUTH); + JButton cmdReport = new JButton("Report"); + cmdReport.addActionListener(new ActionListener() { + public void actionPerformed(final ActionEvent arg0) { + doReport(); + } + }); + buttonPane.add(cmdReport); + JButton cmdCancel = new JButton("Cancel"); + cmdCancel.addActionListener(new ActionListener() { + public void actionPerformed(final ActionEvent arg0) { + dialog.dispose(); + } + }); + buttonPane.add(cmdCancel); + } + + private void doReport() { + Report: { + + if (txtSummary.getText().length() < 4) { + JOptionPane.showMessageDialog(null, "Summary field must be provided", "Bug Report", + JOptionPane.ERROR_MESSAGE); + break Report; + } + + if (txtDescription.getText().length() < 10) { + JOptionPane.showMessageDialog(null, "Description field must be provided", "Bug Report", + JOptionPane.ERROR_MESSAGE); + break Report; + } + + MCSession rep = null; + if (!chkReportAnonymously.isSelected()) { + try { + rep = new MCSession(new URL("http://cardforge.org/bugz/api/soap/mantisconnect.php"), + txtUserName.getText(), String.valueOf(txtPassword.getPassword())); + } catch (MalformedURLException e) { + System.out.println("MalFormedURLException"); + } catch (MCException e) { + System.out.println("MCException - new MCSession - " + e.getMessage()); + JOptionPane.showMessageDialog(null, "MCException - new MCSession - " + e.getMessage(), + "Bug Report", JOptionPane.INFORMATION_MESSAGE); + break Report; + } + } else { + try { + rep = new MCSession(new URL("http://cardforge.org/bugz/api/soap/mantisconnect.php"), "ForgeGUI", + "vi2ccTbfBUu^"); + } catch (MalformedURLException e) { + System.out.println("MalformedURLException"); + } catch (MCException e) { + System.out.println("MCException - new MCSession - " + e.getMessage()); + JOptionPane.showMessageDialog(null, "MCException - new MCSession - " + e.getMessage(), + "Bug Report", JOptionPane.INFORMATION_MESSAGE); + break Report; + } + } + + IIssue iBug = null; + try { + iBug = rep.newIssue(1); + } catch (MCException e) { + System.out.println("MCException - newIssue - " + e.getMessage()); + JOptionPane.showMessageDialog(null, "MCException - newIssue - " + e.getMessage(), "Bug Report", + JOptionPane.INFORMATION_MESSAGE); + break Report; + } + + iBug.setCategory(cboCategory.getSelectedItem().toString()); + iBug.setSummary(txtSummary.getText()); + iBug.setDescription(txtDescription.getText()); + iBug.setAdditionalInformation(txtErrorDump.getText()); + iBug.setVersion(cboVersion.getSelectedItem().toString()); + + for (int i = 0; i < Severities.length; i++) { + if (cboSeverity.getSelectedItem().toString().equals(Severities[i].getName())) { + iBug.setSeverity(Severities[i]); + } + } + + iBug.setStepsToReproduce(txtSteps.getText()); + + ICustomFieldValue[] icfv = {new CustomFieldValue(new MCAttribute(1, "Detected at SVN Rev"), + txtSVN.getText())}; + iBug.setCustomFields(icfv); + + DefaultSubmitter ds = new DefaultSubmitter(false); + try { + ds.submitIssue(rep, iBug); + } catch (MCException e1) { + System.out.println("MCException - submit Issue - " + e1.getMessage()); + JOptionPane.showMessageDialog(null, "MCException - submit Issue - " + e1.getMessage(), "Bug Report", + JOptionPane.INFORMATION_MESSAGE); + break Report; + } + + prefs.BugzName = txtUserName.getText(); + prefs.BugzPwd = String.valueOf(txtPassword.getPassword()); + try { + prefs.save(); + } catch (Exception e) { + System.out.println("Exception - save preferences - " + e.getMessage()); + } + + JOptionPane.showMessageDialog(null, "This Issue Has Been Reported, Thank You.", "Bug Report", + JOptionPane.INFORMATION_MESSAGE); + dialog.dispose(); + } // Report: + + } } diff --git a/src/main/java/forge/error/ErrorViewer.java b/src/main/java/forge/error/ErrorViewer.java index 28e3f1871ea..c18a5344c32 100644 --- a/src/main/java/forge/error/ErrorViewer.java +++ b/src/main/java/forge/error/ErrorViewer.java @@ -1,11 +1,10 @@ package forge.error; - import static forge.properties.ForgeProps.getLocalized; import static forge.properties.ForgeProps.getProperty; import static java.awt.event.InputEvent.CTRL_DOWN_MASK; -import static java.awt.event.KeyEvent.VK_S; import static java.awt.event.KeyEvent.VK_B; +import static java.awt.event.KeyEvent.VK_S; import static javax.swing.JOptionPane.DEFAULT_OPTION; import static javax.swing.JOptionPane.ERROR_MESSAGE; @@ -33,10 +32,10 @@ import javax.swing.KeyStroke; import forge.Singletons; import forge.properties.NewConstants; - /** - * The class ErrorViewer. Enables showing and saving error messages that occurred in forge. - * + * The class ErrorViewer. Enables showing and saving error messages that + * occurred in forge. + * * @author Clemens Koza * @version V1.0 02.08.2009 */ @@ -58,20 +57,26 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer private static JDialog dlg = null; /** - * Shows an error dialog taking the exception's message as the error message. - * - * @param ex a {@link java.lang.Throwable} object. + * Shows an error dialog taking the exception's message as the error + * message. + * + * @param ex + * a {@link java.lang.Throwable} object. */ public static void showError(final Throwable ex) { showError(ex, null); } /** - * Shows an error dialog creating the error message by a formatting operation. - * - * @param ex a {@link java.lang.Throwable} object. - * @param format a {@link java.lang.String} object. - * @param args a {@link java.lang.Object} object. + * Shows an error dialog creating the error message by a formatting + * operation. + * + * @param ex + * a {@link java.lang.Throwable} object. + * @param format + * a {@link java.lang.String} object. + * @param args + * a {@link java.lang.Object} object. */ public static void showError(final Throwable ex, final String format, final Object... args) { if (ex == null) { @@ -82,9 +87,11 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Shows an error dialog with the specified error message. - * - * @param ex a {@link java.lang.Throwable} object. - * @param message a {@link java.lang.String} object. + * + * @param ex + * a {@link java.lang.Throwable} object. + * @param message + * a {@link java.lang.String} object. */ public static void showError(final Throwable ex, final String message) { if (ex == null) { @@ -100,9 +107,11 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Shows an error without an exception that caused it. - * - * @param format a {@link java.lang.String} object. - * @param args a {@link java.lang.Object} object. + * + * @param format + * a {@link java.lang.String} object. + * @param args + * a {@link java.lang.Object} object. */ public static void showError(final String format, final Object... args) { showError(String.format(format, args)); @@ -110,8 +119,9 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Shows an error without an exception that caused it. - * - * @param message a {@link java.lang.String} object. + * + * @param message + * a {@link java.lang.String} object. */ public static void showError(final String message) { showError(new Exception(), message); @@ -119,9 +129,11 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Shows an error message for all running threads. - * - * @param format a {@link java.lang.String} object. - * @param args a {@link java.lang.Object} object. + * + * @param format + * a {@link java.lang.String} object. + * @param args + * a {@link java.lang.Object} object. */ public static void showErrorAllThreads(final String format, final Object... args) { showErrorAllThreads(String.format(format, args)); @@ -129,8 +141,9 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Shows an error message for all running threads. - * - * @param message a {@link java.lang.String} object. + * + * @param message + * a {@link java.lang.String} object. */ public static void showErrorAllThreads(final String message) { final StringWriter sw = new StringWriter(); @@ -141,9 +154,12 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer } /** - *

showDialog.

- * - * @param fullMessage a {@link java.lang.String} object. + *

+ * showDialog. + *

+ * + * @param fullMessage + * a {@link java.lang.String} object. */ private static void showDialog(final String fullMessage) { JTextArea area = new JTextArea(fullMessage, 40, 90); @@ -152,10 +168,10 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer area.setLineWrap(true); area.setWrapStyleWord(true); - //Button is not modified, String gets the automatic listener to hide the dialog - Object[] options = { - new JButton(new BugzAction(area)), new JButton(new SaveAction(area)), getLocalized(BUTTON_CLOSE), - new JButton(new ExitAction())}; + // Button is not modified, String gets the automatic listener to hide + // the dialog + Object[] options = {new JButton(new BugzAction(area)), new JButton(new SaveAction(area)), + getLocalized(BUTTON_CLOSE), new JButton(new ExitAction())}; JOptionPane pane = new JOptionPane(new JScrollPane(area), ERROR_MESSAGE, DEFAULT_OPTION, null, options, options[1]); @@ -167,10 +183,13 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer /** * Prints the error message for the specified exception to the print writer. - * - * @param pw a {@link java.io.PrintWriter} object. - * @param ex a {@link java.lang.Throwable} object. - * @param message a {@link java.lang.String} object. + * + * @param pw + * a {@link java.io.PrintWriter} object. + * @param ex + * a {@link java.lang.Throwable} object. + * @param message + * a {@link java.lang.String} object. */ private static void printError(final PrintWriter pw, final Throwable ex, final String message) { if (message != null) { @@ -179,26 +198,27 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer ex.printStackTrace(); pw.printf(getLocalized(MESSAGE), getProperty(HOW_TO_REPORT_BUGS_URL), - message != null ? message : ex.getMessage(), - Singletons.getModel().getBuildInfo().toPrettyString(), + message != null ? message : ex.getMessage(), Singletons.getModel().getBuildInfo().toPrettyString(), System.getProperty(NAME_OS), System.getProperty(VERSION_OS), System.getProperty(ARCHITECTURE_OS), System.getProperty(VERSION_JAVA), System.getProperty(VENDOR_JAVA)); ex.printStackTrace(pw); } /** - * Prints the error message to the print writer, showing all running threads' stack traces. - * - * @param pw a {@link java.io.PrintWriter} object. - * @param message a {@link java.lang.String} object. + * Prints the error message to the print writer, showing all running + * threads' stack traces. + * + * @param pw + * a {@link java.io.PrintWriter} object. + * @param message + * a {@link java.lang.String} object. */ private static void printError(final PrintWriter pw, final String message) { System.err.println(message); - pw.printf(getLocalized(MESSAGE), getProperty(HOW_TO_REPORT_BUGS_URL), message, - Singletons.getModel().getBuildInfo().toPrettyString(), - System.getProperty(NAME_OS), System.getProperty(VERSION_OS), System.getProperty(ARCHITECTURE_OS), - System.getProperty(VERSION_JAVA), System.getProperty(VENDOR_JAVA)); + pw.printf(getLocalized(MESSAGE), getProperty(HOW_TO_REPORT_BUGS_URL), message, Singletons.getModel() + .getBuildInfo().toPrettyString(), System.getProperty(NAME_OS), System.getProperty(VERSION_OS), + System.getProperty(ARCHITECTURE_OS), System.getProperty(VERSION_JAVA), System.getProperty(VENDOR_JAVA)); Map traces = Thread.getAllStackTraces(); for (Entry e : traces.entrySet()) { pw.println(); @@ -278,7 +298,6 @@ public class ErrorViewer implements NewConstants, NewConstants.LANG.ErrorViewer super(getLocalized(BUTTON_EXIT)); } - public void actionPerformed(final ActionEvent e) { System.exit(0); } diff --git a/src/main/java/forge/error/ExceptionHandler.java b/src/main/java/forge/error/ExceptionHandler.java index dc7a6f46100..4301ce1d547 100644 --- a/src/main/java/forge/error/ExceptionHandler.java +++ b/src/main/java/forge/error/ExceptionHandler.java @@ -6,45 +6,46 @@ package forge.error; +import java.lang.Thread.UncaughtExceptionHandler; import com.esotericsoftware.minlog.Log; -import java.lang.Thread.UncaughtExceptionHandler; - - /** - * This class handles all exceptions that weren't caught by showing the error to the user. - * + * This class handles all exceptions that weren't caught by showing the error to + * the user. + * * @author Forge * @version $Id$ */ public class ExceptionHandler implements UncaughtExceptionHandler { static { - //Tells Java to let this class handle any uncaught exception + // Tells Java to let this class handle any uncaught exception Thread.setDefaultUncaughtExceptionHandler(new ExceptionHandler()); - //Tells AWT to let this class handle any uncaught exception + // Tells AWT to let this class handle any uncaught exception System.setProperty("sun.awt.exception.handler", ExceptionHandler.class.getName()); } /** - * Call this at the beginning to make sure that the class is loaded and the static initializer has run + * Call this at the beginning to make sure that the class is loaded and the + * static initializer has run. */ public static void registerErrorHandling() { Log.debug("Error handling registered!"); } - /** {@inheritDoc} */ - public void uncaughtException(Thread t, Throwable ex) { + public final void uncaughtException(final Thread t, final Throwable ex) { ErrorViewer.showError(ex); } /** - * This Method is called by AWT when an error is thrown in the event dispatching thread and not caught. - * - * @param ex a {@link java.lang.Throwable} object. + * This Method is called by AWT when an error is thrown in the event + * dispatching thread and not caught. + * + * @param ex + * a {@link java.lang.Throwable} object. */ - public void handle(Throwable ex) { + public final void handle(final Throwable ex) { ErrorViewer.showError(ex); } } diff --git a/src/main/java/forge/error/package-info.java b/src/main/java/forge/error/package-info.java index 14bc358513a..8b8e912da0a 100644 --- a/src/main/java/forge/error/package-info.java +++ b/src/main/java/forge/error/package-info.java @@ -1,2 +1,2 @@ -/** Forge Card Game */ +/** Forge Card Game. */ package forge.error;