I'm guessing adding an alias doesn't cause a problem, but I'm not sure. 
I was thinking we'd make alias sets by version number, when we needed
to.  Which, yes, could be property files.  But changing converters
causes the same incompatibility, so we might need different packages to
hold different versioned converters.  Though, I've only made very basic
ones that I don't expect to need changing.

Since test plans consist of HashTree objects and TestElement objects, of
which we only save the properties, no we don't need any of that stuff. 
And all our saved classes are Serializable currently, and so have
default constructors.

-Mike

On Sat, 2004-06-19 at 20:37, Sebastian Bazley wrote:
> Presumably aliases are forward compatible; i.e. if a file was created
> without the use of an alias, it can be successfully read and processed if
> one of the classes now has an alias?
> 
> If so, then surely all we have to do is to provide the full list of aliases
> as (say) a property file?
> 
> ==
> 
> I've been reading the docs, and one thing does concern me.
> The docs say that the following classes and fields cannot be serialised
> currently, except by using the Sun JVM 1.4:
> 
> Non public classes
> Non-static inner classes
> Anonymous inner classes
> Without default constructor
> Final fields
> 
> Do we need to use any such objects in test plans?
> If so, it could seriously affect platform independence unless they can be
> replaced with alternatives.
> 
> Sebastian
> ----- Original Message ----- 
> From: "Michael Stover" <[EMAIL PROTECTED]>
> To: "Sebastian Bazley" <[EMAIL PROTECTED]>
> Cc: "JMeter Developers List" <[EMAIL PROTECTED]>
> Sent: Sunday, June 20, 2004 1:01 AM
> Subject: Re: xstream
> 
> 
> You'll notice that some package names have been eliminated (ie hashTree,
> stringProp - these are aliases for the full class name).  Unfortunately,
> xstream currently only supports class by class aliases.  I can easily
> add a whole bunch, but I doubt I'd get them all.
> 
> I'll check in what's done so far, and we can play.  A drawback, however,
> is that when you add an alias, that makes it incompatible with
> previously saved files.  So, whatever aliases we choose to add, we can't
> add more later unless we create a versioning system for aliases and
> converters (which we'll have to do at some point, and is why I added the
> "version" attribute for the test plan).
> 
> -Mike
> 
> 
> On Sat, 2004-06-19 at 18:31, Sebastian Bazley wrote:
> > Excellent - *much* easier to read.
> >
> > It would be nice if the package names (org.apache.jmeter.etc) could
> somehow
> > be eliminated; perhaps this could be done with <!ENTITY ...> definitions?
> >
> > Sebastian
> > ----- Original Message ----- 
> > From: "Michael Stover" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Saturday, June 19, 2004 6:14 PM
> > Subject: xstream
> >
> >
> > I now have xstream making .jmx files about 2/3 the size of current
> > jmeter .jmx files, and very readable in comparison.  I haven't done
> > SampleResults yet, but I'm confident I can make them smaller as well.
> >
> > here's a sample:
> > <jmeterTestPlan version="2.0.20040619">
> >   <hashTree>
> >     <org.apache.jmeter.testelement.TestPlan>
> >       <collectionProp name="TestPlan.thread_groups"/>
> >       <elementProp name="TestPlan.user_defined_variables"
> > elementType="org.apache.jmeter.config.Arguments">
> >         <stringProp
> >
> name="TestElement.gui_class">org.apache.jmeter.config.gui.ArgumentsPanel</st
> > ringProp>
> >         <stringProp
> >
> name="TestElement.test_class">org.apache.jmeter.config.Arguments</stringProp
> > >
> >         <collectionProp name="Arguments.arguments"/>
> >         <stringProp name="TestElement.name">User Defined
> > Variables</stringProp>
> >         <boolProp name="TestElement.enabled">true</boolProp>
> >       </elementProp>
> >       <stringProp
> >
> name="TestElement.gui_class">org.apache.jmeter.control.gui.TestPlanGui</stri
> > ngProp>
> >       <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
> >       <stringProp
> >
> name="TestElement.test_class">org.apache.jmeter.testelement.TestPlan</string
> > Prop>
> >       <stringProp name="TestElement.name">Test Plan</stringProp>
> >       <boolProp name="TestPlan.functional_mode">false</boolProp>
> >       <boolProp name="TestElement.enabled">true</boolProp>
> >       <stringProp name="TestPlan.comments"></stringProp>
> >     </org.apache.jmeter.testelement.TestPlan>
> >     <hashTree>
> >       <org.apache.jmeter.threads.ThreadGroup>
> >         <longProp name="ThreadGroup.start_time">0</longProp>
> >         <stringProp
> >
> name="TestElement.test_class">org.apache.jmeter.threads.ThreadGroup</stringP
> > rop>
> >         <stringProp name="ThreadGroup.delay"></stringProp>
> >         <stringProp name="ThreadGroup.duration"></stringProp>
> >         <boolProp name="TestElement.enabled">true</boolProp>
> >         <stringProp name="ThreadGroup.num_threads">1</stringProp>
> >         <boolProp name="ThreadGroup.scheduler">false</boolProp>
> >         <stringProp
> >
> name="TestElement.gui_class">org.apache.jmeter.threads.gui.ThreadGroupGui</s
> > tringProp>
> >         <elementProp name="ThreadGroup.main_controller"
> > elementType="org.apache.jmeter.control.LoopController">
> >           <stringProp
> >
> name="TestElement.gui_class">org.apache.jmeter.control.gui.LoopControlPanel<
> > /stringProp>
> >           <stringProp name="LoopController.loops">1</stringProp>
> >           <stringProp
> >
> name="TestElement.test_class">org.apache.jmeter.control.LoopController</stri
> > ngProp>
> >           <stringProp name="TestElement.name">Loop
> > Controller</stringProp>
> >           <boolProp name="TestElement.enabled">true</boolProp>
> >           <boolProp
> > name="LoopController.continue_forever">false</boolProp>
> >         </elementProp>
> >         <stringProp name="TestElement.name">Thread Group</stringProp>
> >         <longProp name="ThreadGroup.end_time">0</longProp>
> >         <stringProp
> > name="ThreadGroup.on_sample_error">continue</stringProp>
> >         <stringProp name="ThreadGroup.ramp_time">0</stringProp>
> >       </org.apache.jmeter.threads.ThreadGroup>
-- 
Michael Stover <[EMAIL PROTECTED]>
Apache Software Foundation


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

  • Re: xstream Michael Stover

Reply via email to