mstover1    2002/09/05 06:51:28

  Modified:    src/components/org/apache/jmeter/visualizers
                        TableDataModel.java ViewResultsFullVisualizer.java
  Log:
  Gui improvements (Jochen Stiepel)
  
  Revision  Changes    Path
  1.6       +1 -1      
jakarta-jmeter/src/components/org/apache/jmeter/visualizers/TableDataModel.java
  
  Index: TableDataModel.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/TableDataModel.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- TableDataModel.java       3 Sep 2002 15:37:16 -0000       1.5
  +++ TableDataModel.java       5 Sep 2002 13:51:28 -0000       1.6
  @@ -194,7 +194,7 @@
                {
                        if((rowIndex >= 0) && (rowIndex < getSampleCount()))
                        {
  -                             return new Integer(rowIndex);
  +                             return new Integer(rowIndex+1);
                        }
                }
                else if(columnIndex == 1)
  
  
  
  1.8       +89 -93    
jakarta-jmeter/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java
  
  Index: ViewResultsFullVisualizer.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/ViewResultsFullVisualizer.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- ViewResultsFullVisualizer.java    30 Aug 2002 15:51:21 -0000      1.7
  +++ ViewResultsFullVisualizer.java    5 Sep 2002 13:51:28 -0000       1.8
  @@ -60,7 +60,6 @@
   import java.awt.GridBagLayout;
   import java.awt.Insets;
   import java.io.UnsupportedEncodingException;
  -
   import javax.swing.ImageIcon;
   import javax.swing.JLabel;
   import javax.swing.JPanel;
  @@ -74,7 +73,6 @@
   import javax.swing.tree.DefaultTreeCellRenderer;
   import javax.swing.tree.DefaultTreeModel;
   import javax.swing.tree.TreeSelectionModel;
  -
   import org.apache.jmeter.gui.util.JLabeledTextArea;
   import org.apache.jmeter.samplers.Clearable;
   import org.apache.jmeter.samplers.SampleResult;
  @@ -82,7 +80,6 @@
   import org.apache.jmeter.visualizers.gui.AbstractVisualizer;
   import org.apache.log.Hierarchy;
   import org.apache.log.Logger;
  -
   /****************************************
    * Allows the tester to view the textual response from sampling an Entry. This
    * also allows to "single step through" the sampling process via a nice
  @@ -92,10 +89,10 @@
    *@created   2001/07/25
    *@version   $Revision$ $Date$
    ***************************************/
  -public class ViewResultsFullVisualizer extends AbstractVisualizer implements
  -             TreeSelectionListener,Clearable
  +public class ViewResultsFullVisualizer
  +     extends AbstractVisualizer
  +     implements TreeSelectionListener, Clearable
   {
  -
        public final static Color SERVER_ERROR_COLOR = Color.red;
        public final static Color CLIENT_ERROR_COLOR = Color.blue;
        public final static Color REDIRECT_COLOR = Color.green;
  @@ -109,9 +106,8 @@
        protected JSplitPane treeSplitPane;
        protected JTree jTree;
        protected int childIndex;
  -
  -     transient private static Logger log = 
Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.gui");
  -
  +     transient private static Logger log =
  +             Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.gui");
        /****************************************
         * !ToDo (Constructor description)
         ***************************************/
  @@ -122,47 +118,39 @@
                log.debug("Start : ViewResultsFullVisualizer1");
                log.debug("End : ViewResultsFullVisualizer1");
        }
  -
        public void add(SampleResult res)
        {
                updateGui(res);
        }
  -
        public String getStaticLabel()
        {
                return JMeterUtils.getResString("view_results_tree_title");
        }
  -
        /****************************************
         * Update the visualizer with new data
         ***************************************/
        public void updateGui(SampleResult res)
        {
                log.debug("Start : updateGui1");
  -
  -             if(log.isDebugEnabled())
  +             if (log.isDebugEnabled())
                        log.debug("updateGui1 : sample result - " + res);
  -
                DefaultMutableTreeNode currNode = new DefaultMutableTreeNode(res);
                treeModel.insertNodeInto(currNode, root, root.getChildCount());
  -             SampleResult[] subResults= res.getSubResults();
  -             if(subResults != null)
  +             SampleResult[] subResults = res.getSubResults();
  +             if (subResults != null)
                {
                        int leafIndex = 0;
  -                     for(int i = 0;i < subResults.length;i++)
  +                     for (int i = 0; i < subResults.length; i++)
                        {
                                SampleResult child = subResults[i];
  -                             if(log.isDebugEnabled())
  +                             if (log.isDebugEnabled())
                                        log.debug("updateGui1 : child sample result - 
" + child);
  -
  -                             DefaultMutableTreeNode leafNode =
  -                                             new DefaultMutableTreeNode(child);
  +                             DefaultMutableTreeNode leafNode = new 
DefaultMutableTreeNode(child);
                                treeModel.insertNodeInto(leafNode, currNode, 
leafIndex++);
                        }
                }
                log.debug("End : updateGui1");
        }
  -
        /****************************************
         * Clears the visualizer
         ***************************************/
  @@ -170,22 +158,18 @@
        {
                log.debug("Start : clear1");
                int totalChild = root.getChildCount();
  -             if(log.isDebugEnabled())
  +             if (log.isDebugEnabled())
                        log.debug("clear1 : total child - " + totalChild);
  -
  -             for(int i = 0; i < totalChild; i++)
  -                     // the child to be removed will always be 0 'cos as the nodes 
are removed
  +             for (int i = 0; i < totalChild; i++)                    // the child 
to be removed will always be 0 'cos as the nodes are removed
                        // the nth node will become (n-1)th
                        treeModel.removeNodeFromParent(
  -                                     (DefaultMutableTreeNode)root.getChildAt(0));
  -
  +                             (DefaultMutableTreeNode) root.getChildAt(0));
                resultPanel.removeAll();
                resultPanel.revalidate();
                // reset the child index
                childIndex = 0;
                log.debug("End : clear1");
        }
  -
        /****************************************
         * Returns the description of this visualizer
         *
  @@ -194,12 +178,10 @@
        public String toString()
        {
                String desc = "Shows the text results of sampling in tree form";
  -             if(log.isDebugEnabled())
  +             if (log.isDebugEnabled())
                        log.debug("toString1 : Returning description - " + desc);
  -
                return desc;
        }
  -
        /****************************************
         * Sets the bottom pane to correspond to the selected node of the top tree
         *
  @@ -208,17 +190,16 @@
        public void valueChanged(TreeSelectionEvent e)
        {
                log.debug("Start : valueChanged1");
  -             DefaultMutableTreeNode node = 
(DefaultMutableTreeNode)jTree.getLastSelectedPathComponent();
  -             if(log.isDebugEnabled())
  +             DefaultMutableTreeNode node =
  +                     (DefaultMutableTreeNode) jTree.getLastSelectedPathComponent();
  +             if (log.isDebugEnabled())
                        log.debug("valueChanged : selected node - " + node);
  -
  -             if(node != null)
  +             if (node != null)
                {
  -                     SampleResult res = (SampleResult)node.getUserObject();
  -                     if(log.isDebugEnabled())
  +                     SampleResult res = (SampleResult) node.getUserObject();
  +                     if (log.isDebugEnabled())
                                log.debug("valueChanged1 : sample result - " + res);
  -
  -                     if(res != null)
  +                     if (res != null)
                        {
                                resultPanel.removeAll();
                                // load time label
  @@ -233,82 +214,92 @@
                                gbc.weightx = 1.0;
                                // pad a bit from the display area
                                gbc.insets = new Insets(0, 10, 0, 0);
  -                             if(res != null && res.getSamplerData() != null)
  +                             if (res != null && res.getSamplerData() != null)
                                {
  -                                     JLabeledTextArea postData = new 
JLabeledTextArea(JMeterUtils.getResString("request_data"),null);
  +                                     JLabeledTextArea postData =
  +                                             new JLabeledTextArea(
  +                                                     
JMeterUtils.getResString("request_data"),
  +                                                     null);
                                        
postData.setText(res.getSamplerData().toString());
  -                                     resultPanel.add(postData,gbc.clone());
  +                                     resultPanel.add(postData, gbc.clone());
                                        gbc.gridy++;
                                }
  -                             resultPanel.add(loadTime,gbc.clone());
  +                             resultPanel.add(loadTime, gbc.clone());
                                // response code label
                                JLabel httpResponseCode = new JLabel();
                                String responseCode = res.getResponseCode();
                                log.debug("valueChanged1 : response code - " + 
responseCode);
                                int responseLevel = 0;
  -                             if(responseCode != null)
  +                             if (responseCode != null)
                                        try
                                        {
                                                responseLevel = 
Integer.parseInt(responseCode) / 100;
                                        }
  -                                     catch(NumberFormatException 
numberFormatException)
  +                                     catch (NumberFormatException 
numberFormatException)
                                        {
                                                // no need to change the foreground 
color
                                        }
  -
                                switch (responseLevel)
                                {
  -                                     case 3:
  +                                     case 3 :
                                                
httpResponseCode.setForeground(REDIRECT_COLOR);
  -                                     case 4:
  +                                     case 4 :
                                                
httpResponseCode.setForeground(CLIENT_ERROR_COLOR);
  -                                     case 5:
  +                                     case 5 :
                                                
httpResponseCode.setForeground(SERVER_ERROR_COLOR);
                                }
  -                             
httpResponseCode.setText(JMeterUtils.getResString("HTTP response code")+" : " +
  -                                             responseCode);
  +                             httpResponseCode.setText(
  +                                     JMeterUtils.getResString("HTTP response code")
  +                                             + " : "
  +                                             + responseCode);
                                gbc.gridx = 0;
                                gbc.gridy++;
                                gridBag.setConstraints(httpResponseCode, gbc);
                                resultPanel.add(httpResponseCode);
                                // response message label
                                JLabel httpResponseMsg = new JLabel();
  -                                                                               
String responseMsgStr = res.getResponseMessage();
  -                                                                               
log.debug("valueChanged1 : response message - " + responseMsgStr);
  -                             httpResponseMsg.setText("HTTP response message : " +
  -                                             responseMsgStr);
  +                             String responseMsgStr = res.getResponseMessage();
  +                             log.debug("valueChanged1 : response message - " + 
responseMsgStr);
  +                             httpResponseMsg.setText("HTTP response message : " + 
responseMsgStr);
                                gbc.gridx = 0;
                                gbc.gridy++;
                                gridBag.setConstraints(httpResponseMsg, gbc);
                                resultPanel.add(httpResponseMsg);
                                gbc.gridy++;
  -
                                // get the text response and image icon
                                // to determine which is NOT null
  -                                                                               
byte[] responseBytes = (byte[])res.getResponseData();
  +                             byte[] responseBytes = (byte[]) res.getResponseData();
                                String response = null;
                                ImageIcon icon = null;
  -                                                                               
if(res.getDataType() != null && res.getDataType().equals(SampleResult.TEXT))
  -                                                                               {
  -                                                                                    
  try {
  -                                                                                    
         response = new String(responseBytes,"utf-8");
  -                                                                                    
 } catch(UnsupportedEncodingException err) {
  -                                                                                    
         response = new String(responseBytes);
  -                                                                                    
 }
  -                                                                               }
  -                                                                               else 
if(responseBytes != null)
  -                                                                               {
  -                                                                                    
 icon = new ImageIcon(responseBytes);
  -                                                                               }
  -                             if(response != null)
  -                             {       
  +                             if (res.getDataType() != null
  +                                     && res.getDataType().equals(SampleResult.TEXT))
  +                             {
  +                                     try
  +                                     {
  +                                             response = new String(responseBytes, 
"utf-8");
  +                                     }
  +                                     catch (UnsupportedEncodingException err)
  +                                     {
  +                                             response = new String(responseBytes);
  +                                     }
  +                             }
  +                             else if (responseBytes != null)
  +                             {
  +                                     icon = new ImageIcon(responseBytes);
  +                             }
  +                             if (response != null)
  +                             {
                                        JTextArea textArea = new JTextArea();
                                        textArea.setText(response);
  +                                     textArea.setColumns(70);
  +                                     textArea.setLineWrap(true);
  +                                     textArea.setWrapStyleWord(true);
  +                                     textArea.setTabSize(4);
                                        gbc.gridx = 0;
                                        gridBag.setConstraints(textArea, gbc);
                                        resultPanel.add(textArea);
                                }
  -                             else if(icon != null)
  +                             else if (icon != null)
                                {
                                        JLabel image = new JLabel();
                                        image.setIcon(icon);
  @@ -322,7 +313,6 @@
                }
                log.debug("End : valueChanged1");
        }
  -
        /****************************************
         * Initialize this visualizer
         ***************************************/
  @@ -337,33 +327,40 @@
                jTree = new JTree(treeModel);
                jTree.setCellRenderer(new ResultsNodeRenderer());
                jTree.getSelectionModel().setSelectionMode(
  -                             TreeSelectionModel.SINGLE_TREE_SELECTION);
  +                     TreeSelectionModel.SINGLE_TREE_SELECTION);
                jTree.addTreeSelectionListener(this);
                treePane = new JScrollPane(jTree);
                gridBag = new GridBagLayout();
                gbc = new GridBagConstraints();
                resultPanel = new JPanel(gridBag);
                resultPane = new JScrollPane(resultPanel);
  -             treeSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,
  -                             treePane, resultPane);
  +             treeSplitPane =
  +                     new JSplitPane(JSplitPane.VERTICAL_SPLIT, treePane, 
resultPane);
                getFilePanel().add(getErrorLoggingCheckbox());
  -             add(getFilePanel(),BorderLayout.NORTH);
  -             add(treeSplitPane,BorderLayout.CENTER);
  +             add(getFilePanel(), BorderLayout.NORTH);
  +             add(treeSplitPane, BorderLayout.CENTER);
        }
  -     
        private class ResultsNodeRenderer extends DefaultTreeCellRenderer
        {
  -             public Component getTreeCellRendererComponent(JTree tree,
  -                                                                                    
                                  Object value,
  -                                                                                    
                                  boolean sel,
  -                                                                                    
                                  boolean expanded,
  -                                                                                    
                                  boolean leaf,
  -                                                                                    
                                  int row,
  -                                                                                    
                                  boolean hasFocus)
  +             public Component getTreeCellRendererComponent(
  +                     JTree tree,
  +                     Object value,
  +                     boolean sel,
  +                     boolean expanded,
  +                     boolean leaf,
  +                     int row,
  +                     boolean hasFocus)
                {
  -                     super.getTreeCellRendererComponent(tree,value,
  -                                     sel,expanded,leaf,row,hasFocus);
  -                     
if(!((SampleResult)((DefaultMutableTreeNode)value).getUserObject()).isSuccessful())
  +                     super.getTreeCellRendererComponent(
  +                             tree,
  +                             value,
  +                             sel,
  +                             expanded,
  +                             leaf,
  +                             row,
  +                             hasFocus);
  +                     if (!((SampleResult) ((DefaultMutableTreeNode) 
value).getUserObject())
  +                             .isSuccessful())
                        {
                                this.setForeground(Color.red);
                        }
  @@ -371,4 +368,3 @@
                }
        }
   }
  -
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to