tidy up
diff --git a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameListener.java b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameListener.java
index 1a93335..97bd7a6 100644
--- a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameListener.java
+++ b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameListener.java
@@ -19,7 +19,6 @@
import java.util.EventListener;
-
/**
* Implementations are notified when new Logger names
* are added to the related LoggerNameModel instance.
diff --git a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModel.java b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModel.java
index 57dac8a..bca69da 100644
--- a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModel.java
@@ -21,7 +21,6 @@
import java.util.Collection;
-
/**
* Implementations of this model contain all the known Logger
* names within it's model space.
@@ -42,11 +41,11 @@
* Attempts to add the loggerName to the model, and returns
* true if it does, i.e that the loggerName is new, otherwise
* it is ignored.
- * <p>
+ * <p />
* If the loggerName is new for this model, all the LoggerNameListeners
* are notified using this thread.
*
- * @param loggerName
+ * @param loggerName the logger name to add
*/
boolean addLoggerName(String loggerName);
diff --git a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModelSupport.java b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModelSupport.java
index 1262d1e..f628771 100644
--- a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModelSupport.java
+++ b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameModelSupport.java
@@ -25,17 +25,14 @@
import java.util.HashSet;
import java.util.Set;
-
/**
* An implementation of LoggerNameModel which can be used as a delegate
*
* @author Paul Smith <psmith@apache.org>
*/
public class LoggerNameModelSupport implements LoggerNameModel {
-
- private Set<String> loggerNameSet = new HashSet<>();
- private EventListenerList listenerList = new EventListenerList();
-
+ private final Set<String> loggerNameSet = new HashSet<>();
+ private final EventListenerList listenerList = new EventListenerList();
/* (non-Javadoc)
* @see org.apache.log4j.chainsaw.components.loggernamepanel.LoggerNameModel#getLoggerNames()
diff --git a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameTreePanel.java b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameTreePanel.java
index b9c1af5..7ff2c91 100644
--- a/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameTreePanel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/components/loggernamepanel/LoggerNameTreePanel.java
@@ -48,7 +48,6 @@
import org.apache.log4j.chainsaw.logevents.ChainsawLoggingEvent;
-
/**
* A panel that encapsulates the Logger Name tree, with associated actions
* and implements the Rule interface so that it can filter in/out events
@@ -57,15 +56,17 @@
* @author Paul Smith <psmith@apache.org>
*/
public final class LoggerNameTreePanel extends JPanel implements LoggerNameListener {
- //~ Static fields/initializers ==============================================
+ public static final String ACTION_NAME_CLOSE = " Close ";
+ public static final String ACTION_NAME_UNHIDE_ALL = " Unhide All ";
+ public static final String ACTION_NAME_CLEAR_IGNORE_LIST = "Clear Ignore list";
+ public static final String PROPERTY_HIDDEN_SET = "hiddenSet";
+ public static final String KEY_CHECKED = "checked";
+ private final Logger logger = LogManager.getLogger(LoggerNameTreePanel.class);
private static final int WARN_DEPTH = 4;
private final LogPanelPreferenceModel logPanelPreferenceModel;
- //~ Instance fields =========================================================
-
- private LoggerNameTreeCellRenderer cellRenderer =
- new LoggerNameTreeCellRenderer();
+ private final LoggerNameTreeCellRenderer cellRenderer = new LoggerNameTreeCellRenderer();
private final Action clearIgnoreListAction;
private final Action closeAction;
private final JButton closeButton = new SmallButton();
@@ -83,16 +84,13 @@
private final JButton expandButton = new SmallButton();
private final Action focusOnAction;
private final Action clearRefineFocusAction;
- private final SmallToggleButton focusOnLoggerButton =
- new SmallToggleButton();
- private final Set hiddenSet = new HashSet();
+ private final SmallToggleButton focusOnLoggerButton = new SmallToggleButton();
+ private final Set<String> hiddenSet = new HashSet<>();
private final Action hideAction;
private final Action hideSubLoggersAction;
-
private final JList ignoreList = new JList();
private final JEditorPane ignoreExpressionEntryField = new JEditorPane();
private final JEditorPane alwaysDisplayExpressionEntryField = new JEditorPane();
- private final JScrollPane ignoreListScroll = new JScrollPane(ignoreList);
private final JDialog ignoreDialog = new JDialog();
private final JDialog ignoreExpressionDialog = new JDialog();
private final JDialog alwaysDisplayExpressionDialog = new JDialog();
@@ -102,7 +100,7 @@
private final SmallToggleButton ignoreLoggerButton = new SmallToggleButton();
private final EventListenerList listenerList = new EventListenerList();
private final JTree logTree;
- private final Logger logger = LogManager.getLogger(LoggerNameTreePanel.class);
+
// private final EventListenerList focusOnActionListeners =
// new EventListenerList();
@@ -120,8 +118,6 @@
private boolean expandRootLatch = false;
private String currentlySelectedLoggerName;
- //~ Constructors ============================================================
-
/**
* Creates a new LoggerNameTreePanel object.
*
@@ -151,26 +147,29 @@
visibilityRuleDelegate = new VisibilityRuleDelegate();
colorRuleDelegate =
new AbstractRule() {
+ @Override
public boolean evaluate(ChainsawLoggingEvent e, Map matches) {
boolean hiddenLogger = e.m_logger != null && isHiddenLogger(e.m_logger);
boolean hiddenExpression = (ignoreExpressionRule != null && ignoreExpressionRule.evaluate(e, null));
boolean alwaysDisplayExpression = (alwaysDisplayExpressionRule != null && alwaysDisplayExpressionRule.evaluate(e, null));
boolean hidden = (!alwaysDisplayExpression) && (hiddenLogger || hiddenExpression);
- String currentlySelectedLoggerName = getCurrentlySelectedLoggerName();
- return !isFocusOnSelected() && !hidden && currentlySelectedLoggerName != null && !"".equals(currentlySelectedLoggerName) && (e.m_logger.startsWith(currentlySelectedLoggerName + ".") || e.m_logger.endsWith(currentlySelectedLoggerName));
+ String selectedLoggerName = getCurrentlySelectedLoggerName();
+ return !isFocusOnSelected() && !hidden && selectedLoggerName != null &&
+ !"".equals(selectedLoggerName) &&
+ (e.m_logger.startsWith(selectedLoggerName + ".") ||
+ e.m_logger.endsWith(selectedLoggerName));
}
};
- logTree =
- new JTree(logTreeModel) {
+ logTree = new JTree(logTreeModel) {
+ @Override
public String getToolTipText(MouseEvent ev) {
if (ev == null) {
return null;
}
TreePath path = logTree.getPathForLocation(ev.getX(), ev.getY());
-
String loggerName = getLoggerName(path);
if (hiddenSet.contains(loggerName)) {
@@ -186,9 +185,11 @@
// ============================================
logTreeModel.addTreeModelListener(new TreeModelListener() {
+ @Override
public void treeNodesChanged(TreeModelEvent e) {
}
+ @Override
public void treeNodesInserted(TreeModelEvent e) {
if (!expandRootLatch) {
ensureRootExpanded();
@@ -196,9 +197,11 @@
}
}
+ @Override
public void treeNodesRemoved(TreeModelEvent e) {
}
+ @Override
public void treeStructureChanged(TreeModelEvent e) {
}
});
@@ -283,7 +286,7 @@
.name("...")
.shortDescription("Click to view and manage your always-displayed expression")
.action(() -> LogPanel.centerAndSetVisible(alwaysDisplayExpressionDialog)).build();
- ;
+
alwaysDisplayExpressionPanel.add(btnShowAlwaysDisplayExpressionDialog);
ignorePanel.add(alwaysDisplayExpressionPanel);
@@ -292,15 +295,13 @@
ignoreList.setModel(new DefaultListModel());
ignoreList.addMouseListener(new MouseAdapter() {
+ @Override
public void mouseClicked(MouseEvent e) {
- if (
- (e.getClickCount() > 1)
- && ((e.getModifiers() & InputEvent.BUTTON1_MASK) > 0)) {
+ if (e.getClickCount() > 1 && ((e.getModifiersEx() & InputEvent.BUTTON1_DOWN_MASK) > 0)) {
int index = ignoreList.locationToIndex(e.getPoint());
if (index >= 0) {
- String string =
- ignoreList.getModel().getElementAt(index).toString();
+ String string = ignoreList.getModel().getElementAt(index).toString();
toggleHiddenLogger(string);
fireChangeEvent();
@@ -315,6 +316,7 @@
});
JPanel ignoreListPanel = new JPanel(new BorderLayout());
+ JScrollPane ignoreListScroll = new JScrollPane(ignoreList);
ignoreListScroll.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Double click an entry to unhide it"));
ignoreListPanel.add(ignoreListScroll, BorderLayout.CENTER);
@@ -322,7 +324,7 @@
ignoreExpressionEntryField.addKeyListener(new ExpressionRuleContext(filterModel, ignoreExpressionEntryField));
ignoreExpressionDialogPanel.add(new JScrollPane(ignoreExpressionEntryField), BorderLayout.CENTER);
- JButton ignoreExpressionCloseButton = new JButton(new AbstractAction(" Close ") {
+ JButton ignoreExpressionCloseButton = new JButton(new AbstractAction(ACTION_NAME_CLOSE) {
public void actionPerformed(ActionEvent e) {
String ignoreText = ignoreExpressionEntryField.getText();
@@ -337,7 +339,7 @@
alwaysDisplayExpressionEntryField.addKeyListener(new ExpressionRuleContext(filterModel, alwaysDisplayExpressionEntryField));
alwaysDisplayExpressionDialogPanel.add(new JScrollPane(alwaysDisplayExpressionEntryField), BorderLayout.CENTER);
- JButton alwaysDisplayExpressionCloseButton = new JButton(new AbstractAction(" Close ") {
+ JButton alwaysDisplayExpressionCloseButton = new JButton(new AbstractAction(ACTION_NAME_CLOSE) {
public void actionPerformed(ActionEvent e) {
String alwaysDisplayText = alwaysDisplayExpressionEntryField.getText();
@@ -357,7 +359,7 @@
Box ignoreListButtonPanel = Box.createHorizontalBox();
- JButton unhideAll = new JButton(new AbstractAction(" Unhide All ") {
+ JButton unhideAll = new JButton(new AbstractAction(ACTION_NAME_UNHIDE_ALL) {
public void actionPerformed(final ActionEvent e) {
SwingUtilities.invokeLater(() -> clearIgnoreListAction.actionPerformed(e));
@@ -367,7 +369,7 @@
ignoreListButtonPanel.add(unhideAll);
ignoreListButtonPanel.add(Box.createHorizontalGlue());
- JButton ignoreCloseButton = new JButton(new AbstractAction(" Close ") {
+ JButton ignoreCloseButton = new JButton(new AbstractAction(ACTION_NAME_CLOSE) {
public void actionPerformed(ActionEvent e) {
ignoreDialog.setVisible(false);
@@ -376,10 +378,8 @@
});
ignoreListButtonPanel.add(ignoreCloseButton);
-
ignoreListPanel.add(ignoreListButtonPanel, BorderLayout.SOUTH);
-
ignoreDialog.getContentPane().add(ignoreListPanel);
ignoreDialog.pack();
@@ -397,7 +397,7 @@
} else {
ignoreExpressionRule = null;
}
- visibilityRuleDelegate.firePropertyChange("hiddenSet", null, null);
+ visibilityRuleDelegate.firePropertyChange(PROPERTY_HIDDEN_SET, null, null);
updateDisplay();
ignoreExpressionEntryField.setBackground(UIManager.getColor("TextField.background"));
@@ -428,13 +428,11 @@
}
}
- //~ Methods =================================================================
-
/**
* Adds a change Listener to this LoggerNameTreePanel to be notfied
* when the State of the Focus or Hidden details have changed.
*
- * @param l
+ * @param l the change listener to add
*/
public void addChangeListener(ChangeListener l) {
listenerList.add(ChangeListener.class, l);
@@ -448,11 +446,6 @@
return visibilityRuleDelegate;
}
- /**
- * DOCUMENT ME!
- *
- * @param l DOCUMENT ME!
- */
public void removeChangeListener(ChangeListener l) {
listenerList.remove(ChangeListener.class, l);
}
@@ -460,7 +453,7 @@
/**
* Ensures the Focus is set to a specific logger name
*
- * @param
+ * @param newLogger the name of the logger to focus on
*/
public void setFocusOn(String newLogger) {
DefaultMutableTreeNode node = logTreeModel.lookupLogger(newLogger);
@@ -474,7 +467,7 @@
focusOnLoggerButton.doClick();
}
} else {
- logger.error("failed to lookup logger " + newLogger);
+ logger.error("failed to lookup logger {}", newLogger);
}
}
@@ -488,20 +481,14 @@
return false;
}
-
- /**
- * DOCUMENT ME!
- *
- * @param logger
- */
- protected void toggleHiddenLogger(String logger) {
+ private void toggleHiddenLogger(String logger) {
if (!hiddenSet.contains(logger)) {
hiddenSet.add(logger);
} else {
hiddenSet.remove(logger);
}
- visibilityRuleDelegate.firePropertyChange("hiddenSet", null, null);
+ visibilityRuleDelegate.firePropertyChange(PROPERTY_HIDDEN_SET, null, null);
}
/**
@@ -526,12 +513,6 @@
return getLoggerName(firstPath);
}
- /**
- * Returns the full
- *
- * @param path DOCUMENT ME!
- * @return
- */
String getLoggerName(TreePath path) {
if (path != null) {
Object[] objects = path.getPath();
@@ -556,11 +537,11 @@
* both the "hiddenSet" property and those expecting the Rule to change
* via the ChangeListener interface
*
- * @param fqnLoggersToIgnore
+ * @param fqnLoggersToIgnore the loggers to ignore
*/
- public void ignore(Collection fqnLoggersToIgnore) {
+ public void ignore(Collection<String> fqnLoggersToIgnore) {
hiddenSet.addAll(fqnLoggersToIgnore);
- visibilityRuleDelegate.firePropertyChange("hiddenSet", null, null);
+ visibilityRuleDelegate.firePropertyChange(PROPERTY_HIDDEN_SET, null, null);
fireChangeEvent();
}
@@ -570,14 +551,14 @@
* @return true if the FocusOn action/lement has been selected
*/
boolean isFocusOnSelected() {
- return focusOnAction.getValue("checked") != null;
+ return focusOnAction.getValue(KEY_CHECKED) != null;
}
void setFocusOnSelected(boolean selected) {
if (selected) {
- focusOnAction.putValue("checked", Boolean.TRUE);
+ focusOnAction.putValue(KEY_CHECKED, Boolean.TRUE);
} else {
- focusOnAction.putValue("checked", null);
+ focusOnAction.putValue(KEY_CHECKED, null);
}
}
@@ -595,17 +576,14 @@
logger.debug("Collapsing all children of selected node");
for (TreePath path : paths) {
- DefaultMutableTreeNode node =
- (DefaultMutableTreeNode) path.getLastPathComponent();
- Enumeration enumeration = node.depthFirstEnumeration();
+ DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
+ Enumeration<TreeNode> enumeration = node.depthFirstEnumeration();
while (enumeration.hasMoreElements()) {
- DefaultMutableTreeNode child =
- (DefaultMutableTreeNode) enumeration.nextElement();
+ DefaultMutableTreeNode child = (DefaultMutableTreeNode) enumeration.nextElement();
if ((child.getParent() != null) && (child != node)) {
- TreeNode[] nodes =
- ((DefaultMutableTreeNode) child.getParent()).getPath();
+ TreeNode[] nodes = ((DefaultMutableTreeNode) child.getParent()).getPath();
TreePath treePath = new TreePath(nodes);
logTree.collapsePath(treePath);
@@ -654,13 +632,9 @@
toolbar.add(Box.createHorizontalStrut(5));
}
- /**
- * DOCUMENT ME!
- *
- * @return
- */
private Action createClearIgnoreListAction() {
- Action action = new AbstractAction("Clear Ignore list", null) {
+ Action action = new AbstractAction(ACTION_NAME_CLEAR_IGNORE_LIST, null) {
+ @Override
public void actionPerformed(ActionEvent e) {
ignoreLoggerButton.setSelected(false);
logTreeModel.reload();
@@ -679,10 +653,11 @@
/**
* An action that closes (hides) this panel
*
- * @return
+ * @return the close action
*/
private Action createCloseAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
logPanelPreferenceModel.setLogTreePanelVisible(false);
}
@@ -695,13 +670,9 @@
return action;
}
- /**
- * DOCUMENT ME!
- *
- * @return
- */
private Action createCollapseAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
collapseCurrentlySelectedNode();
}
@@ -719,6 +690,7 @@
private Action createEditLoggerAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
@@ -731,8 +703,7 @@
action.putValue(
Action.SHORT_DESCRIPTION,
"Allows you to specify filters and coloring for this Logger");
- action.putValue(
- Action.SMALL_ICON, new ImageIcon(ChainsawIcons.ICON_EDIT_RECEIVER));
+ action.putValue(Action.SMALL_ICON, new ImageIcon(ChainsawIcons.ICON_EDIT_RECEIVER));
action.setEnabled(false);
return action;
@@ -746,6 +717,7 @@
*/
private Action createExpandAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
expandCurrentlySelectedNode();
}
@@ -769,6 +741,7 @@
*/
private Action createFindNextAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
findNextUsingCurrentlySelectedNode();
}
@@ -785,6 +758,7 @@
private Action createSetRefineFocusAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
setRefineFocusUsingCurrentlySelectedNode();
}
@@ -865,6 +839,7 @@
private Action createDefineColorRuleForLoggerAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
String selectedLogger = getCurrentlySelectedLoggerName();
TreePath[] paths = logTree.getSelectionPaths();
@@ -897,6 +872,7 @@
*/
private Action createClearFindNextAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
clearFindNext();
}
@@ -913,6 +889,7 @@
private Action createClearRefineFocusAction() {
Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
clearRefineFocus();
}
@@ -927,13 +904,9 @@
return action;
}
- /**
- * DOCUMENT ME!
- *
- * @return
- */
private Action createFocusOnAction() {
final Action action = new AbstractAction() {
+ @Override
public void actionPerformed(ActionEvent e) {
toggleFocusOnState();
}
@@ -951,21 +924,17 @@
return action;
}
- /**
- * DOCUMENT ME!
- *
- * @return
- */
private Action createIgnoreAllAction() {
Action action =
- new AbstractAction(
- "Ignore loggers below selection") {
+ new AbstractAction("Ignore loggers below selection") {
+ @Override
public void actionPerformed(ActionEvent e) {
//add all top level loggers as hidden loggers
TreePath[] paths = logTree.getSelectionPaths();
StringBuilder parentPathString = new StringBuilder();
DefaultMutableTreeNode root;
+
if ((paths == null) || (paths.length == 0)) {
root = (DefaultMutableTreeNode) logTreeModel.getRoot();
} else {
@@ -982,13 +951,14 @@
parentPathString.append(".");
}
}
- Enumeration topLevelLoggersEnumeration = root.children();
- Set topLevelLoggersSet = new HashSet();
+ Enumeration<TreeNode> topLevelLoggersEnumeration = root.children();
+ Set<String> topLevelLoggersSet = new HashSet<>();
while (topLevelLoggersEnumeration.hasMoreElements()) {
String thisLogger = topLevelLoggersEnumeration.nextElement().toString();
topLevelLoggersSet.add(parentPathString + thisLogger);
}
- if (topLevelLoggersSet.size() > 0) {
+
+ if (!topLevelLoggersSet.isEmpty()) {
ignore(topLevelLoggersSet);
}
@@ -1007,25 +977,19 @@
return action;
}
- /**
- * DOCUMENT ME!
- *
- * @return
- */
private Action createIgnoreAction() {
Action action =
- new AbstractAction(
- "Ignore this Logger", new ImageIcon(ChainsawIcons.ICON_COLLAPSE)) {
+ new AbstractAction("Ignore this Logger", new ImageIcon(ChainsawIcons.ICON_COLLAPSE)) {
+ @Override
public void actionPerformed(ActionEvent e) {
- String logger = getCurrentlySelectedLoggerName();
+ String selectedLoggerName = getCurrentlySelectedLoggerName();
- if (logger != null) {
- toggleHiddenLogger(logger);
- logTreeModel.nodeChanged(
- (TreeNode) logTree.getSelectionPath().getLastPathComponent());
- ignoreLoggerButton.setSelected(hiddenSet.contains(logger));
- focusOnAction.setEnabled(!hiddenSet.contains(logger));
- popupMenu.hideCheck.setSelected(hiddenSet.contains(logger));
+ if (selectedLoggerName != null) {
+ toggleHiddenLogger(selectedLoggerName);
+ logTreeModel.nodeChanged((TreeNode)logTree.getSelectionPath().getLastPathComponent());
+ ignoreLoggerButton.setSelected(hiddenSet.contains(selectedLoggerName));
+ focusOnAction.setEnabled(!hiddenSet.contains(selectedLoggerName));
+ popupMenu.hideCheck.setSelected(hiddenSet.contains(selectedLoggerName));
}
fireChangeEvent();
@@ -1042,8 +1006,7 @@
private void ensureRootExpanded() {
logger.debug("Ensuring Root node is expanded.");
- final DefaultMutableTreeNode root =
- (DefaultMutableTreeNode) logTreeModel.getRoot();
+ final DefaultMutableTreeNode root = (DefaultMutableTreeNode) logTreeModel.getRoot();
SwingUtilities.invokeLater(() -> logTree.expandPath(new TreePath(root)));
}
@@ -1054,6 +1017,7 @@
if (paths == null) {
return;
}
+
logPanel.setFindText("logger like '^" + selectedLogger + ".*'");
}
@@ -1093,10 +1057,8 @@
// return;
// }
- DefaultMutableTreeNode treeNode =
- (DefaultMutableTreeNode) path.getLastPathComponent();
-
- Enumeration depthEnum = treeNode.depthFirstEnumeration();
+ DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode) path.getLastPathComponent();
+ Enumeration<TreeNode> depthEnum = treeNode.depthFirstEnumeration();
if (!depthEnum.hasMoreElements()) {
break;
@@ -1105,8 +1067,7 @@
List<Integer> depths = new ArrayList<>();
while (depthEnum.hasMoreElements()) {
- depths.add(
- ((DefaultMutableTreeNode) depthEnum.nextElement()).getDepth());
+ depths.add(((DefaultMutableTreeNode) depthEnum.nextElement()).getDepth());
}
Collections.sort(depths);
@@ -1115,21 +1076,19 @@
int maxDepth = depths.get(0);
if (maxDepth > WARN_DEPTH) {
- logger.warn("Should warn user, depth=" + maxDepth);
+ logger.warn("Should warn user, depth={}", maxDepth);
}
depthEnum = treeNode.depthFirstEnumeration();
while (depthEnum.hasMoreElements()) {
- DefaultMutableTreeNode node =
- (DefaultMutableTreeNode) depthEnum.nextElement();
+ DefaultMutableTreeNode node = (DefaultMutableTreeNode) depthEnum.nextElement();
if (node.isLeaf() && node.getParent() != null) {
- TreeNode[] nodes =
- ((DefaultMutableTreeNode) node.getParent()).getPath();
+ TreeNode[] nodes = ((DefaultMutableTreeNode) node.getParent()).getPath();
TreePath treePath = new TreePath(nodes);
- logger.debug("Expanding path:" + treePath);
+ logger.debug("Expanding path: {}", treePath);
logTree.expandPath(treePath);
}
@@ -1138,8 +1097,7 @@
}
private void fireChangeEvent() {
- ChangeListener[] listeners =
- listenerList.getListeners(ChangeListener.class);
+ ChangeListener[] listeners = listenerList.getListeners(ChangeListener.class);
ChangeEvent e = null;
for (ChangeListener listener : listeners) {
@@ -1152,9 +1110,9 @@
}
private void reconfigureMenuText() {
- String logger = getCurrentlySelectedLoggerName();
+ String selectedLoggerName = getCurrentlySelectedLoggerName();
- if ((logger == null) || (logger.length() == 0)) {
+ if ((selectedLoggerName == null) || (selectedLoggerName.length() == 0)) {
focusOnAction.putValue(Action.NAME, "Focus On...");
hideAction.putValue(Action.NAME, "Ignore...");
findAction.putValue(Action.NAME, "Find...");
@@ -1163,13 +1121,13 @@
updateFindAction.putValue(Action.NAME, "Add to find field");
defineColorRuleForLoggerAction.putValue(Action.NAME, "Define color rule");
} else {
- focusOnAction.putValue(Action.NAME, "Focus On '" + logger + "'");
- hideAction.putValue(Action.NAME, "Ignore '" + logger + "'");
- findAction.putValue(Action.NAME, "Find '" + logger + "'");
- setRefineFocusAction.putValue(Action.NAME, "Set refine focus field to '" + logger + "'");
- updateRefineFocusAction.putValue(Action.NAME, "Add '" + logger + "' to 'refine focus' field");
- updateFindAction.putValue(Action.NAME, "Add '" + logger + "' to 'find' field");
- defineColorRuleForLoggerAction.putValue(Action.NAME, "Define color rule for '" + logger + "'");
+ focusOnAction.putValue(Action.NAME, "Focus On '" + selectedLoggerName + "'");
+ hideAction.putValue(Action.NAME, "Ignore '" + selectedLoggerName + "'");
+ findAction.putValue(Action.NAME, "Find '" + selectedLoggerName + "'");
+ setRefineFocusAction.putValue(Action.NAME, "Set refine focus field to '" + selectedLoggerName + "'");
+ updateRefineFocusAction.putValue(Action.NAME, "Add '" + selectedLoggerName + "' to 'refine focus' field");
+ updateFindAction.putValue(Action.NAME, "Add '" + selectedLoggerName + "' to 'find' field");
+ defineColorRuleForLoggerAction.putValue(Action.NAME, "Define color rule for '" + selectedLoggerName + "'");
}
// need to ensure the button doens't update itself with the text, looks stupid otherwise
@@ -1205,7 +1163,6 @@
(path != null) && (node != null) && (node.getParent() != null));
if (!focusOnAction.isEnabled()) {
setFocusOnSelected(false);
- } else {
}
expandAction.setEnabled(path != null);
@@ -1293,7 +1250,7 @@
});
visibilityRuleDelegate.addPropertyChangeListener(event -> {
- if (event.getPropertyName().equals("hiddenSet")) {
+ if (event.getPropertyName().equals(PROPERTY_HIDDEN_SET)) {
updateDisplay();
}
});
@@ -1309,16 +1266,12 @@
private void updateHiddenSetModels() {
DefaultListModel model = (DefaultListModel) ignoreList.getModel();
model.clear();
- List sortedIgnoreList = new ArrayList(hiddenSet);
+ List<String> sortedIgnoreList = new ArrayList<>(hiddenSet);
Collections.sort(sortedIgnoreList);
- for (Object aSortedIgnoreList : sortedIgnoreList) {
- String string = (String) aSortedIgnoreList;
- model.addElement(string);
+ for (String aSortedIgnoreList : sortedIgnoreList) {
+ model.addElement(aSortedIgnoreList);
}
-
-// ignoreList.setModel(model);
-
}
private void updateIgnoreSummary() {
@@ -1338,7 +1291,7 @@
fireChangeEvent();
}
- public Collection getHiddenSet() {
+ public Collection<String> getHiddenSet() {
return Collections.unmodifiableSet(hiddenSet);
}
@@ -1375,29 +1328,17 @@
public void reset() {
expandRootLatch = false;
//keep track if focuson was active when we were reset
- final String logger = currentlySelectedLoggerName;
final boolean focusOnSelected = isFocusOnSelected();
- if (logger == null || !focusOnSelected) {
+ if (currentlySelectedLoggerName == null || !focusOnSelected) {
return;
}
//loggernameAdded runs on EDT
- logTreeModel.loggerNameAdded(logger);
- EventQueue.invokeLater(() -> setFocusOn(logger));
+ logTreeModel.loggerNameAdded(currentlySelectedLoggerName);
+ EventQueue.invokeLater(() -> setFocusOn(currentlySelectedLoggerName));
}
- //~ Inner Classes ===========================================================
-
- /**
- * DOCUMENT ME!
- *
- * @author $author$
- * @author Paul Smith <psmith@apache.org>
- * @version $Revision$, $Date$
- */
private class LoggerNameTreeCellRenderer extends DefaultTreeCellRenderer {
- //~ Constructors ==========================================================
-
// private JPanel panel = new JPanel();
private LoggerNameTreeCellRenderer() {
super();
@@ -1408,30 +1349,13 @@
setOpaque(false);
}
- //~ Methods ===============================================================
-
/* (non-Javadoc)
* @see javax.swing.tree.TreeCellRenderer#getTreeCellRendererComponent(javax.swing.JTree, java.lang.Object, boolean, boolean, boolean, int, boolean)
*/
-
- /**
- * DOCUMENT ME!
- *
- * @param tree DOCUMENT ME!
- * @param value DOCUMENT ME!
- * @param sel DOCUMENT ME!
- * @param expanded DOCUMENT ME!
- * @param leaf DOCUMENT ME!
- * @param row DOCUMENT ME!
- * @param focus DOCUMENT ME!
- * @return DOCUMENT ME!
- */
+ @Override
public Component getTreeCellRendererComponent(
- JTree tree, Object value, boolean sel, boolean expanded, boolean leaf,
- int row, boolean focus) {
- JLabel component =
- (JLabel) super.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, focus);
+ JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean focus) {
+ JLabel component = (JLabel)super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, focus);
Font originalFont = new Font(component.getFont().getName(), component.getFont().getStyle(), component.getFont().getSize());
@@ -1441,11 +1365,9 @@
style = style | Font.BOLD;
}
- String logger =
- getLoggerName(
- new TreePath(((DefaultMutableTreeNode) value).getPath()));
+ String loggerName = getLoggerName(new TreePath(((DefaultMutableTreeNode) value).getPath()));
- if (hiddenSet.contains(logger)) {
+ if (hiddenSet.contains(loggerName)) {
// component.setEnabled(false);
// component.setIcon(leaf?null:getDefaultOpenIcon());
style = style | Font.ITALIC;
@@ -1456,12 +1378,10 @@
// component.setEnabled(true);
}
- if (originalFont != null) {
- Font font2 = originalFont.deriveFont(style);
- if (font2 != null) {
- component.setFont(font2);
- }
+ Font font2 = originalFont.deriveFont(style);
+ if (font2 != null) {
+ component.setFont(font2);
}
return component;
@@ -1469,33 +1389,19 @@
}
private class LoggerTreePopupMenu extends JPopupMenu {
- //~ Instance fields =======================================================
-
JCheckBoxMenuItem focusOnCheck = new JCheckBoxMenuItem();
JCheckBoxMenuItem hideCheck = new JCheckBoxMenuItem();
- //~ Constructors ==========================================================
-
private LoggerTreePopupMenu() {
initMenu();
}
- //~ Methods ===============================================================
-
/* (non-Javadoc)
* @see javax.swing.JPopupMenu#show(java.awt.Component, int, int)
*/
-
- /**
- * DOCUMENT ME!
- *
- * @param invoker DOCUMENT ME!
- * @param x DOCUMENT ME!
- * @param y DOCUMENT ME!
- */
+ @Override
public void show(Component invoker, int x, int y) {
- DefaultMutableTreeNode node =
- (DefaultMutableTreeNode) logTree.getLastSelectedPathComponent();
+ DefaultMutableTreeNode node = (DefaultMutableTreeNode) logTree.getLastSelectedPathComponent();
if (node == null) {
return;
@@ -1504,9 +1410,6 @@
super.show(invoker, x, y);
}
- /**
- * DOCUMENT ME!
- */
private void initMenu() {
focusOnCheck.setAction(focusOnAction);
hideCheck.setAction(hideAction);
@@ -1534,53 +1437,31 @@
}
private final class MouseFocusOnListener extends MouseAdapter {
- //~ Methods ===============================================================
-
/* (non-Javadoc)
* @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
*/
-
- /**
- * DOCUMENT ME!
- *
- * @param e DOCUMENT ME!
- */
+ @Override
public void mouseClicked(MouseEvent e) {
- if (
- (e.getClickCount() > 1)
- && ((e.getModifiers() & InputEvent.CTRL_MASK) > 0)
- && ((e.getModifiers() & InputEvent.SHIFT_MASK) > 0)) {
+ if (e.getClickCount() > 1 &&
+ ((e.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) > 0) &&
+ ((e.getModifiersEx() & InputEvent.SHIFT_DOWN_MASK) > 0)) {
ignoreLoggerAtPoint(e.getPoint());
e.consume();
fireChangeEvent();
- } else if (
- (e.getClickCount() > 1)
- && ((e.getModifiers() & InputEvent.CTRL_MASK) > 0)) {
+ } else if (e.getClickCount() > 1 &&
+ ((e.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) > 0)) {
focusAnLoggerAtPoint(e.getPoint());
e.consume();
fireChangeEvent();
}
}
- /**
- * DOCUMENT ME!
- *
- * @param point
- */
private void focusAnLoggerAtPoint(Point point) {
- String logger = getLoggerAtPoint(point);
-
- if (logger != null) {
+ if (getLoggerAtPoint(point) != null) {
toggleFocusOnState();
}
}
- /**
- * DOCUMENT ME!
- *
- * @param point
- * @return
- */
private String getLoggerAtPoint(Point point) {
TreePath path = logTree.getPathForLocation(point.x, point.y);
@@ -1591,25 +1472,17 @@
return null;
}
- /**
- * DOCUMENT ME!
- *
- * @param point
- */
private void ignoreLoggerAtPoint(Point point) {
- String logger = getLoggerAtPoint(point);
+ String loggerAtPoint = getLoggerAtPoint(point);
- if (logger != null) {
- toggleHiddenLogger(logger);
+ if (loggerAtPoint != null) {
+ toggleHiddenLogger(loggerAtPoint);
fireChangeEvent();
}
}
}
- private final class MouseKeyIconListener extends MouseMotionAdapter
- implements MouseMotionListener {
- //~ Instance fields =======================================================
-
+ private final class MouseKeyIconListener extends MouseMotionAdapter implements MouseMotionListener {
Cursor focusOnCursor =
Toolkit.getDefaultToolkit().createCustomCursor(
ChainsawIcons.FOCUS_ON_ICON.getImage(), new Point(10, 10), "");
@@ -1617,24 +1490,14 @@
Toolkit.getDefaultToolkit().createCustomCursor(
ChainsawIcons.IGNORE_ICON.getImage(), new Point(10, 10), "");
- //~ Methods ===============================================================
-
/* (non-Javadoc)
* @see java.awt.event.MouseMotionListener#mouseMoved(java.awt.event.MouseEvent)
*/
-
- /**
- * DOCUMENT ME!
- *
- * @param e DOCUMENT ME!
- */
+ @Override
public void mouseMoved(MouseEvent e) {
- // logger.debug(e.toString());
- if (
- ((e.getModifiers() & InputEvent.CTRL_MASK) > 0)
- && ((e.getModifiers() & InputEvent.SHIFT_MASK) > 0)) {
+ if (((e.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) > 0) && ((e.getModifiersEx() & InputEvent.SHIFT_DOWN_MASK) > 0)) {
logTree.setCursor(ignoreCursor);
- } else if ((e.getModifiers() & InputEvent.CTRL_MASK) > 0) {
+ } else if ((e.getModifiersEx() & InputEvent.CTRL_DOWN_MASK) > 0) {
logTree.setCursor(focusOnCursor);
} else {
logTree.setCursor(Cursor.getDefaultCursor());
@@ -1643,25 +1506,28 @@
}
class VisibilityRuleDelegate extends AbstractRule {
- public boolean evaluate(ChainsawLoggingEvent e, Map matches) {
- String currentlySelectedLoggerName = getCurrentlySelectedLoggerName();
- boolean hiddenLogger = e.m_logger != null && isHiddenLogger(e.m_logger);
- boolean hiddenExpression = (ignoreExpressionRule != null && ignoreExpressionRule.evaluate(e, null));
- boolean alwaysDisplayExpression = (alwaysDisplayExpressionRule != null && alwaysDisplayExpressionRule.evaluate(e, null));
+ @Override
+ public boolean evaluate(ChainsawLoggingEvent event, Map matches) {
+ String selectedLoggerName = getCurrentlySelectedLoggerName();
+ boolean hiddenLogger = event.m_logger != null && isHiddenLogger(event.m_logger);
+ boolean hiddenExpression = (ignoreExpressionRule != null && ignoreExpressionRule.evaluate(event, null));
+ boolean alwaysDisplayExpression = (alwaysDisplayExpressionRule != null && alwaysDisplayExpressionRule.evaluate(event, null));
boolean hidden = (!alwaysDisplayExpression) && (hiddenLogger || hiddenExpression);
- if (currentlySelectedLoggerName == null) {
+ if (selectedLoggerName == null) {
//if there is no selected logger, pass if not hidden
return !hidden;
}
- boolean result = (e.m_logger != null) && !hidden;
+
+ boolean result = (event.m_logger != null) && !hidden;
if (result && isFocusOnSelected()) {
- result = (e.m_logger != null && (e.m_logger.startsWith(currentlySelectedLoggerName + ".") || e.m_logger.endsWith(currentlySelectedLoggerName)));
+ result = (event.m_logger != null && (event.m_logger.startsWith(selectedLoggerName + ".") || event.m_logger.endsWith(selectedLoggerName)));
}
return result;
}
+ @Override
public void firePropertyChange(String propertyName, Object oldVal, Object newVal) {
super.firePropertyChange(propertyName, oldVal, newVal);
}