You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by tu...@apache.org on 2001/07/27 23:25:38 UTC
cvs commit: jakarta-jmeter/src/org/apache/jmeter/reporters Filer.java
tusharbhatia 01/07/27 14:25:38
Modified: src/org/apache/jmeter/gui/tree NonGuiTree.java
src/org/apache/jmeter/reporters Filer.java
Log:
Opening of Filer when loaded in a NonGuiTree and setting auto flush on it.
Revision Changes Path
1.3 +27 -0 jakarta-jmeter/src/org/apache/jmeter/gui/tree/NonGuiTree.java
Index: NonGuiTree.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/org/apache/jmeter/gui/tree/NonGuiTree.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- NonGuiTree.java 2001/07/26 00:34:46 1.2
+++ NonGuiTree.java 2001/07/27 21:25:38 1.3
@@ -66,6 +66,8 @@
import org.apache.jmeter.gui.JMeterComponentModel;
import org.apache.jmeter.util.ListedHashTree;
+import org.apache.log4j.Category;
+
/************************************************************
* Title: JMeter Description: Copyright: Copyright (c) 2000 Company: Apache
* This class simulates a tree and eliminates the need for the swing components.
@@ -79,15 +81,22 @@
***********************************************************/
public class NonGuiTree extends NonGuiTreeNode{
+ private Category log = Category.getInstance(NonGuiTree.class);
public NonGuiTree(){
super(null);
+
+ log.info("Adding Test Plan");
this.insertNodeInto(new NonGuiTreeNode(TestPlan.createTestPlan("Test Plan")),0);
+
+ log.info("Adding WorkBench");
this.insertNodeInto(new NonGuiTreeNode(new WorkBench("WorkBench")),1);
}
public void addSubTree(ListedHashTree subTree, NonGuiTreeNode current)
{
+ if(log.isDebugEnabled())
+ log.debug("addSubTree:" + (current==null?"null":current.getUserObject().getClass().getName()));
Iterator iter = subTree.list().iterator();
while (iter.hasNext())
{
@@ -106,6 +115,9 @@
private NonGuiTreeNode addComponent(JMeterComponentModel component,NonGuiTreeNode node)
{
+ if(log.isDebugEnabled())
+ log.debug("addComponent:" + (component==null?"null":component.getClass().getName()) +
+ ", " + node.getUserObject().getClass().getName());
NonGuiTreeNode newNode = new NonGuiTreeNode(component);
node.insertNodeInto(newNode, node.getChildCount());
newNode.setParent(node);
@@ -133,12 +145,16 @@
*/
public JMeterComponentModel compileComponent(NonGuiTreeNode node)
{
+ if(log.isDebugEnabled())
+ log.debug("compileComponent:" + node.getUserObject().getClass().getName());
traverseNode(node);
return (JMeterComponentModel)node.getUserObject();
}
private void traverseNode(NonGuiTreeNode node)
{
+ if(log.isDebugEnabled())
+ log.debug("traverseNode:" + node.getUserObject().getClass().getName());
Enumeration enum = node.children();
while (enum.hasMoreElements())
{
@@ -152,6 +168,9 @@
private void addChildToParent(Object child,Object parent)
{
+ if(log.isDebugEnabled())
+ log.debug("addChildToParent:" + (child != null?child.getClass().getName():"null") + ", " +
+ (parent != null?parent.getClass().getName():"null"));
if(parent instanceof ThreadGroup)
{
if(child instanceof Timer)
@@ -169,6 +188,14 @@
else if(child instanceof SampleListener)
{
((ThreadGroup)parent).addListener((SampleListener)child);
+ // Open the file if this is a Filer.
+ if(child instanceof org.apache.jmeter.reporters.Filer){
+ org.apache.jmeter.reporters.Filer filer = (org.apache.jmeter.reporters.Filer)child;
+ log.debug("Opening the file:" + filer.getFile());
+ filer.open();
+ filer.setAutoFlush(true);
+
+ }
}
}
else if(parent instanceof SamplerController)
1.7 +11 -0 jakarta-jmeter/src/org/apache/jmeter/reporters/Filer.java
Index: Filer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/org/apache/jmeter/reporters/Filer.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Filer.java 2001/07/26 00:34:49 1.6
+++ Filer.java 2001/07/27 21:25:38 1.7
@@ -84,6 +84,10 @@
private String file;
private PrintWriter stream;
+ // if set to true, the file will flush each time a sample is recorded.
+ // required for non-gui testing. Will be added to GUI in a little bit.
+ private boolean autoFlush = false;
+
public Filer()
{
}
@@ -156,6 +160,8 @@
public void sampleOccurred(SampleEvent e)
{
recordSample(e.getResult());
+ if(open && autoFlush)
+ flush();
if(listener != null)
{
listener.updateGui();
@@ -227,4 +233,9 @@
public void setFile(String file) {
this.file = file;
}
+
+ public void setAutoFlush(boolean value) {
+ this.autoFlush = value;
+ }
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org