svn commit: r889059 - in /jakarta/jmeter/trunk: bin/ bin/testfiles/ lib/ src/core/org/apache/jmeter/gui/action/ src/core/org/apache/jmeter/reporters/ src/core/org/apache/jmeter/samplers/ src/core/org/apache/jmeter/save/ src/core/org/apache/jmeter/save/...

[email protected]
Newsgroups gmane.comp.jakarta.jmeter.devel
Message-ID <[email protected]>
Author: sebb
Date: Thu Dec 10 02:13:53 2009
New Revision: 889059

URL: http://svn.apache.org/viewvc?rev=889059&view=rev
Log:
Drop support for Avalon format JMX and JTL files

Removed:
    jakarta/jmeter/trunk/bin/testfiles/GuiTest203.jmx
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/OldSaveService.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/TestElementSaver.java
Modified:
    jakarta/jmeter/trunk/bin/jmeter.properties
    jakarta/jmeter/trunk/lib/aareadme.txt
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/Save.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/reporters/ResultCollector.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/SaveService.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementConverter.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementPropertyConverter.java
    jakarta/jmeter/trunk/src/reports/org/apache/jmeter/report/gui/action/ReportSave.java
    jakarta/jmeter/trunk/xdocs/changes.xml

Modified: jakarta/jmeter/trunk/bin/jmeter.properties
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/jmeter.properties?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/bin/jmeter.properties (original)
+++ jakarta/jmeter/trunk/bin/jmeter.properties Thu Dec 10 02:13:53 2009
@@ -40,11 +40,10 @@
 # file_format.testlog  - affects JTL files only
 #
 # Possible values are:
-# 2.0 - original format
 # 2.1 - initial format using XStream
 # 2.2 - updated format using XStream, with shorter names
 
-# Note: JMeter 2.2 does not support file_format.testlog=2.1 - only 2.0 and 2.2
+# N.B. format 2.0 (Avalon) is no longer supported
 
 #---------------------------------------------------------------------------
 # XML Parser

Modified: jakarta/jmeter/trunk/lib/aareadme.txt
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/lib/aareadme.txt?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/lib/aareadme.txt (original)
+++ jakarta/jmeter/trunk/lib/aareadme.txt Thu Dec 10 02:13:53 2009
@@ -4,8 +4,8 @@
 
 avalon-framework-4.1.4 (org.apache.avalon.framework)
 ----------------------
-- LogKit (used by HttpClient ?)
-- Configuration (ResultCollector, SaveService, SampleResult, TestElementSaver)
+- LogKit (LoggingManager)
+- Configuration (DataSourceElement)
 
 bsf-2.4.0.jar (org.apache.bsf)
 -------------
@@ -61,8 +61,7 @@
 
 excalibur-datasource-1.1.1 (org.apache.avalon.excalibur.datasource)
 --------------------------
-- jdbc - DataSourceElement
-- JDBCSampler
+- DataSourceElement (JDBC)
 
 excalibur-instrument-1.0 (org.apache.excalibur.instrument)
 ------------------------
@@ -70,7 +69,6 @@
 
 excalibur-logger-1.1 (org.apache.avalon.excalibur.logger)
 --------------------
-- httpclient?
 - LoggingManager
 
 excalibur-pool-1.2 (org.apache.avalon.excalibur.pool)

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/Save.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/Save.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/Save.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/gui/action/Save.java Thu Dec 10 02:13:53 2009
@@ -34,7 +34,6 @@
 import org.apache.jmeter.gui.GuiPackage;
 import org.apache.jmeter.gui.tree.JMeterTreeNode;
 import org.apache.jmeter.gui.util.FileDialoger;
-import org.apache.jmeter.save.OldSaveService;
 import org.apache.jmeter.save.SaveService;
 import org.apache.jmeter.testelement.TestElement;
 import org.apache.jmeter.util.JMeterUtils;
@@ -136,11 +135,7 @@
         FileOutputStream ostream = null;
         try {
             ostream = new FileOutputStream(updateFile);
-            if (SaveService.isSaveTestPlanFormat20()) {
-                OldSaveService.saveSubTree(subTree, ostream);
-            } else {
-                SaveService.saveTree(subTree, ostream);
-            }
+            SaveService.saveTree(subTree, ostream);
         } catch (Throwable ex) {
             GuiPackage.getInstance().setTestPlanFile(null);
             log.error("", ex);

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/reporters/ResultCollector.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/reporters/ResultCollector.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/reporters/ResultCollector.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/reporters/ResultCollector.java Thu Dec 10 02:13:53 2009
@@ -35,7 +35,6 @@
 import java.util.Iterator;
 import java.util.Map;
 
-import org.apache.avalon.framework.configuration.DefaultConfigurationSerializer;
 import org.apache.jmeter.engine.event.LoopIterationEvent;
 import org.apache.jmeter.engine.util.NoThreadClone;
 import org.apache.jmeter.gui.GuiPackage;
@@ -46,7 +45,6 @@
 import org.apache.jmeter.samplers.SampleResult;
 import org.apache.jmeter.samplers.SampleSaveConfiguration;
 import org.apache.jmeter.save.CSVSaveService;
-import org.apache.jmeter.save.OldSaveService;
 import org.apache.jmeter.save.SaveService;
 import org.apache.jmeter.testelement.TestElement;
 import org.apache.jmeter.testelement.TestListener;
@@ -126,8 +124,6 @@
 
     // Instance variables
     
-    private transient volatile DefaultConfigurationSerializer serializer;
-
     private transient volatile PrintWriter out;
 
     private volatile boolean inTest = false;
@@ -317,13 +313,7 @@
                                     new ResultCollectorHelper(this, visualizer));
                             parsedOK = true;
                         } catch (Exception e) {
-                            log.info("Failed to load "+filename+" using XStream, trying old XML format. Error was: "+e);
-                            try {
-                                OldSaveService.processSamples(filename, visualizer, this);
-                                parsedOK = true;
-                            } catch (Exception e1) {
-                                log.warn("Error parsing Avalon XML. " + e1.getLocalizedMessage());
-                            }
+                            log.warn("Failed to load "+filename+" using XStream. Error was: "+e);
                         }
                     }
                 }
@@ -486,14 +476,7 @@
                 result.setSaveConfig(config);
                 try {
                     if (config.saveAsXml()) {
-                        if (SaveService.isSaveTestLogFormat20()) {
-                            if (serializer == null) {
-                                serializer = new DefaultConfigurationSerializer();
-                            }
-                            out.write(OldSaveService.getSerializedSampleResult(result, serializer, config));
-                        } else { // !LogFormat20
-                            SaveService.saveSampleResult(event, out);
-                        }
+                        SaveService.saveSampleResult(event, out);
                     } else { // !saveAsXml
                         String savee = CSVSaveService.resultToDelimitedString(event);
                         out.println(savee);

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java Thu Dec 10 02:13:53 2009
@@ -28,7 +28,6 @@
 import java.util.List;
 import java.util.Set;
 
-import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.jmeter.assertions.AssertionResult;
 import org.apache.jmeter.util.JMeterUtils;
 import org.apache.jorphan.logging.LoggingManager;
@@ -492,10 +491,6 @@
         return subResults.toArray(new SampleResult[0]);
     }
 
-    public void configure(Configuration info) {
-        time = info.getAttributeAsLong(TOTAL_TIME, 0L);
-    }
-
     /**
      * Sets the responseData attribute of the SampleResult object.
      *

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/SaveService.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/SaveService.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/SaveService.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/SaveService.java Thu Dec 10 02:13:53 2009
@@ -119,8 +119,6 @@
     private static final String FILE_FORMAT_TESTLOG = "file_format.testlog"; // $NON-NLS-1$
 
     // Define file format versions
-    private static final String VERSION_2_0 = "2.0";  // $NON-NLS-1$
-    //NOT USED private static final String VERSION_2_1 = "2.1";  // $NON-NLS-1$
     private static final String VERSION_2_2 = "2.2";  // $NON-NLS-1$
 
     // Default to overall format, and then to version 2.2
@@ -132,13 +130,23 @@
         = JMeterUtils.getPropDefault(FILE_FORMAT_TESTLOG
         , JMeterUtils.getPropDefault(FILE_FORMAT, VERSION_2_2));
 
-    private static final boolean IS_TESTPLAN_FORMAT_20
-        = VERSION_2_0.equals(TESTPLAN_FORMAT);
+    private static boolean validateFormat(String format){
+        if ("2.2".equals(format)) return true;
+        if ("2.1".equals(format)) return true;
+        return false;
+    }
 
-    private static final boolean IS_TESTLOG_FORMAT_20
-    = VERSION_2_0.equals(TESTLOG_FORMAT);
+    static{
+        if (!validateFormat(TESTPLAN_FORMAT)){
+            log.error("Invalid test plan format: "+TESTPLAN_FORMAT);
+        }
+        if (!validateFormat(TESTLOG_FORMAT)){
+            log.error("Invalid test log format: "+TESTLOG_FORMAT);
+        }
+    }
 
-    private static final boolean IS_TESTPLAN_FORMAT_22
+    /** New XStream format - more compressed class names */
+    public static final boolean IS_TESTPLAN_FORMAT_22
         = VERSION_2_2.equals(TESTPLAN_FORMAT);
 
     // Holds the mappings from the saveservice properties file
@@ -455,14 +463,13 @@
             wrapper = (ScriptWrapper) JMXSAVER.fromXML(inputStreamReader);
             inputStreamReader.close();
             if (wrapper == null){
-                log.error("Problem loading new style: see above.");
+                log.error("Problem loading XML: see above.");
                 return null;
             }
             return wrapper.testPlan;
         } catch (CannotResolveClassException e) {
-            log.warn("Problem loading new style: " + e.getLocalizedMessage());
-            reader.reset();
-            return OldSaveService.loadSubTree(reader);
+            log.warn("Problem loading XML: " + e.getLocalizedMessage());
+            return null;
         } catch (NoClassDefFoundError e) {
             log.error("Missing class "+e);
             return null;
@@ -535,20 +542,6 @@
         }
     }
 
-    public static boolean isSaveTestPlanFormat20() {
-        return IS_TESTPLAN_FORMAT_20;
-    }
-
-    public static boolean isSaveTestLogFormat20() {
-        return IS_TESTLOG_FORMAT_20;
-    }
-
-    // New test format - more compressed class names
-    public static boolean isSaveTestPlanFormat22() {
-        return IS_TESTPLAN_FORMAT_22;
-    }
-
-
 //  Normal output
 //  ---- Debugging information ----
 //  required-type       : org.apache.jorphan.collections.ListedHashTree

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementConverter.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementConverter.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementConverter.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementConverter.java Thu Dec 10 02:13:53 2009
@@ -37,8 +37,6 @@
     private static final Logger log = LoggingManager.getLoggerForClass();
 
 
-    private final boolean testFormat22=SaveService.isSaveTestPlanFormat22();
-
     /**
      * Returns the converter version; used to check for possible
      * incompatibilities
@@ -58,14 +56,14 @@
     @Override
     public void marshal(Object arg0, HierarchicalStreamWriter writer, MarshallingContext context) {
         TestElement el = (TestElement) arg0;
-        if (testFormat22){
+        if (SaveService.IS_TESTPLAN_FORMAT_22){
             ConversionHelp.saveSpecialProperties(el,writer);
         }
         PropertyIterator iter = el.propertyIterator();
         while (iter.hasNext()) {
             JMeterProperty jmp=iter.next();
             // Skip special properties if required
-            if (!testFormat22 || !ConversionHelp.isSpecialProperty(jmp.getName())) {
+            if (!SaveService.IS_TESTPLAN_FORMAT_22 || !ConversionHelp.isSpecialProperty(jmp.getName())) {
                 // Don't save empty comments - except for the TestPlan (to maintain compatibility)
                    if (!(
                            TestElement.COMMENTS.equals(jmp.getName())

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementPropertyConverter.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementPropertyConverter.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementPropertyConverter.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/converters/TestElementPropertyConverter.java Thu Dec 10 02:13:53 2009
@@ -37,8 +37,6 @@
 public class TestElementPropertyConverter extends AbstractCollectionConverter {
     private static final Logger log = LoggingManager.getLoggerForClass();
 
-    private final boolean testFormat22=SaveService.isSaveTestPlanFormat22();
-
     private static final String HEADER_CLASSNAME
         = "org.apache.jmeter.protocol.http.control.Header"; // $NON-NLS-1$
 
@@ -64,8 +62,8 @@
         writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName()));
         Class<?> clazz = prop.getObjectValue().getClass();
         writer.addAttribute(ConversionHelp.ATT_ELEMENT_TYPE,
-                testFormat22 ?  mapper().serializedClass(clazz) : clazz.getName());
-        if (testFormat22){
+                SaveService.IS_TESTPLAN_FORMAT_22 ?  mapper().serializedClass(clazz) : clazz.getName());
+        if (SaveService.IS_TESTPLAN_FORMAT_22){
             TestElement te = (TestElement)prop.getObjectValue();
             ConversionHelp.saveSpecialProperties(te,writer);
         }
@@ -73,7 +71,7 @@
         while (iter.hasNext()) {
             JMeterProperty jmp=iter.next();
             // Skip special properties if required
-            if (!testFormat22 || !ConversionHelp.isSpecialProperty(jmp.getName()))
+            if (!SaveService.IS_TESTPLAN_FORMAT_22 || !ConversionHelp.isSpecialProperty(jmp.getName()))
             {
                 // Don't save empty comments
                    if (!(TestElement.COMMENTS.equals(jmp.getName())

Modified: jakarta/jmeter/trunk/src/reports/org/apache/jmeter/report/gui/action/ReportSave.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/reports/org/apache/jmeter/report/gui/action/ReportSave.java?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/reports/org/apache/jmeter/report/gui/action/ReportSave.java (original)
+++ jakarta/jmeter/trunk/src/reports/org/apache/jmeter/report/gui/action/ReportSave.java Thu Dec 10 02:13:53 2009
@@ -33,7 +33,6 @@
 import org.apache.jmeter.gui.action.Command;
 import org.apache.jmeter.gui.util.ReportFileDialoger;
 import org.apache.jmeter.report.gui.tree.ReportTreeNode;
-import org.apache.jmeter.save.OldSaveService;
 import org.apache.jmeter.save.SaveService;
 import org.apache.jmeter.testelement.TestElement;
 import org.apache.jorphan.collections.HashTree;
@@ -109,13 +108,8 @@
         FileOutputStream ostream = null;
         try {
             ostream = new FileOutputStream(updateFile);
-            if (SaveService.isSaveTestPlanFormat20()) {
-                OldSaveService.saveSubTree(subTree, ostream);
-                log.info("saveSubTree");
-            } else {
-                SaveService.saveTree(subTree, ostream);
-                log.info("saveTree");
-            }
+            SaveService.saveTree(subTree, ostream);
+            log.info("saveTree");
         } catch (Throwable ex) {
             ReportGuiPackage.getInstance().setReportPlanFile(null);
             log.error("", ex);

Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=889059&r1=889058&r2=889059&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Thu Dec 10 02:13:53 2009
@@ -60,6 +60,10 @@
 <h2>Incompatible changes</h2>
 
 <p>
+The Avalon file format for JMX and JTL files is no longer supported.
+</p>
+
+<p>
 The XPath Assertion and XPath Extractor elements no longer fetch external DTDs by default; this can be changed in the GUI.
 </p>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.