On 5 July 2013 22:43, Milamber <[email protected]> wrote: > > Le 05/07/2013 22:34, Philippe Mouawad a ecrit : > >> maybe we can open a bug on pom content no ? > > > I don't know. The publication of artifact (pom) seems to be the > responsibility to the author of uploaded jar... I prefer wait the answer of > Filesoft team.
Agreed. I suspect the Maven jar was uploaded by a 3rd party. It's signed as follows: gpg: Signature made 02/20/13 11:53:41 using DSA key ID C966F0B8 gpg: Good signature from "Rob Manning <[email protected]>" gpg: Note: This key has expired! Primary key fingerprint: 0F07 D120 1BDD AB67 CFB8 4EB4 7975 2DB6 C966 F0B8 > >> >> On Friday, July 5, 2013, Milamber wrote: >> >>> Le 05/07/2013 22:20, Milamber a ecrit : >>> >>>> Le 05/07/2013 21:55, sebb a ecrit : >>>> >>>>> On 5 July 2013 21:39, <[email protected]> wrote: >>>>> >>>>>> Author: milamber >>>>>> Date: Fri Jul 5 20:39:54 2013 >>>>>> New Revision: 1500124 >>>>>> >>>>>> URL: http://svn.apache.org/r1500124 >>>>>> Log: >>>>>> Bug 55202 - Proposal to add RSyntaxTextArea for BeanShell, BSF, and >>>>>> JSR223 elements >>>>>> Bugzilla Id: 55202 >>>>>> >>>>> -1 >>>>> >>>>> I think the jar needs to be obtained somewhere other than Maven >>>>> Central, as the pom license there says LGPL. >>>>> >>> Ah... I just saw the .pom on maven repo... >>> >>> >>> >>>> The mvnrepository.com website (whish said LGPL) is not official Maven >>>> repository (and not affiliate with Maven/ASF if you see the whois >>>> information). >>>> You cannot trust on informations in this site. >>>> >>>> The official website indicate the license (modified BSD), and I have >>>> added the same version than the binary release (in zip file): >>>> http://sourceforge.net/**projects/rsyntaxtextarea/** >>>> >>>> files/rsyntaxtextarea-demo/2.**0.7/<http://sourceforge.net/projects/rsyntaxtextarea/files/rsyntaxtextarea-demo/2.0.7/> >>>> >>>> Unfortunately, I don't found a direct link to the jar on official >>>> website. I think we can keep the download from Maven repo2 (it's not the >>>> mvvrepository.com site, and don't show any Lgpl license for this jar). >>>> >>>> >>>>> Please remove the download part for now. >>>>> >>>>> Added: >>>>>> >>>>>> >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties >>>>>> (with props) >>>>>> Modified: >>>>>> jmeter/trunk/LICENSE >>>>>> jmeter/trunk/build.properties >>>>>> jmeter/trunk/build.xml >>>>>> jmeter/trunk/eclipse.classpath >>>>>> jmeter/trunk/res/maven/**ApacheJMeter_parent.pom >>>>>> jmeter/trunk/src/components/**org/apache/jmeter/assertions/** >>>>>> gui/BeanShellAssertionGui.java >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> GenericTestBeanCustomizer.java >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> TextAreaEditor.java >>>>>> >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java >>>>>> >>>>>> jmeter/trunk/src/protocol/**java/org/apache/jmeter/** >>>>>> protocol/java/control/gui/**BeanShellSamplerGui.java >>>>>> jmeter/trunk/xdocs/changes.xml >>>>>> >>>>>> Modified: jmeter/trunk/LICENSE >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/LICENSE?rev=** >>>>>> >>>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/LICENSE?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/LICENSE [utf-8] (original) >>>>>> +++ jmeter/trunk/LICENSE [utf-8] Fri Jul 5 20:39:54 2013 >>>>>> @@ -1565,7 +1565,7 @@ The jsoup code-base (include source and >>>>>> distributed under the open source MIT license as described below. >>>>>> The MIT License >>>>>> >>>>>> -Copyright � 2009 - 2012 Jonathan Hedley ([email protected]) >>>>>> +Copyright � 2009 - 2012 Jonathan Hedley ([email protected]) >>>>>> >>>>>> Permission is hereby granted, free of charge, to any person >>>>>> obtaining >>>>>> a >>>>>> copy of this software and associated documentation files (the >>>>>> "Software"), >>>>>> @@ -1926,7 +1926,7 @@ As a special exception, the copyright ho >>>>>> Open Icon Library from >>>>>> >>>>>> http://openiconlibrary.**sourceforge.net/<http://openiconlibrary.sourceforge.net/> >>>>>> >>>>>> -Detailled Licenses information: >>>>>> +Detailed Licenses information: >>>>>> >>>>>> http://openiconlibrary.**sourceforge.net/LICENSES.html<http://openiconlibrary.sourceforge.net/LICENSES.html> >>>>>> >>>>>> ============ Packages used by Apache JMeter ========= >>>>>> @@ -2029,3 +2029,39 @@ UNLESS OTHERWISE MUTUALLY AGREED TO BY T >>>>>> >>>>>> ##############################**##############################** >>>>>> #################### >>>>>> >>>>>> +RSyntaxTextArea License >>>>>> +=============================**============ >>>>>> + >>>>>> +RSyntaxTextArea from >>>>>> >>>>>> +http://fifesoft.com/**rsyntaxtextarea/<http://fifesoft.com/rsyntaxtextarea/> >>>>>> + >>>>>> +Detailed License information: >>>>>> >>>>>> +http://fifesoft.com/**rsyntaxtextarea/**RSyntaxTextArea.License.txt<http://fifesoft.com/rsyntaxtextarea/RSyntaxTextArea.License.txt> >>>>>> + >>>>>> +============== RSyntaxTextArea License ============= >>>>>> +Copyright (c) 2012, Robert Futrell >>>>>> +All rights reserved. >>>>>> + >>>>>> +Redistribution and use in source and binary forms, with or without >>>>>> +modification, are permitted provided that the following conditions >>>>>> are >>>>>> met: >>>>>> + * Redistributions of source code must retain the above copyright >>>>>> + notice, this list of conditions and the following disclaimer. >>>>>> + * Redistributions in binary form must reproduce the above >>>>>> copyright >>>>>> + notice, this list of conditions and the following disclaimer in >>>>>> the >>>>>> + documentation and/or other materials provided with the >>>>>> distribution. >>>>>> + * Neither the name of the author nor the names of its >>>>>> contributors >>>>>> may >>>>>> + be used to endorse or promote products derived from this >>>>>> software >>>>>> + without specific prior written permission. >>>>>> + >>>>>> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS >>>>>> "AS IS" AND >>>>>> +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE >>>>>> IMPLIED >>>>>> +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE >>>>>> ARE >>>>>> +DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY >>>>>> +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL >>>>>> DAMAGES >>>>>> +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR >>>>>> SERVICES; >>>>>> +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER >>>>>> CAUSED AND >>>>>> +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR >>>>>> TORT >>>>>> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE >>>>>> OF THIS >>>>>> +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. >>>>>> + >>>>>> >>>>>> +#############################**##############################**##################### >>>>>> >>>>>> \ No newline at end of file >>>>>> >>>>>> Modified: jmeter/trunk/build.properties >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/build.properties?** >>>>>> >>>>>> rev=1500124&r1=1500123&r2=**1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/build.properties?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/build.properties (original) >>>>>> +++ jmeter/trunk/build.properties Fri Jul 5 20:39:54 2013 >>>>>> @@ -223,6 +223,11 @@ mongo-java-driver.jar >>>>>> = mongo-java-d >>>>>> mongo-java-driver.loc = >>>>>> ${maven2.repo}/org/mongodb/**mongo-java-driver/${mongo-** >>>>>> java-driver.version} >>>>>> mongo-java-driver.md5 = >>>>>> fed5e6d998256e285396b4e0d81537**bd >>>>>> >>>>>> +rsyntaxtextarea.version = 2.0.7 >>>>>> +rsyntaxtextarea.jar = rsyntaxtextarea-${** >>>>>> rsyntaxtextarea.version}.jar >>>>>> +rsyntaxtextarea.loc = ${maven2.repo}/com/fifesoft/** >>>>>> rsyntaxtextarea/${**rsyntaxtextarea.version} >>>>>> +rsyntaxtextarea.md5 = 00ab3c8ce58bb8bb1dbb3ae506f06d**30 >>>>>> >>>>> -1 >>>>> >>>>> I don't think we can download from there until the license issue is >>>>> sorted out. >>>>> >>>>> + >>>>>> >>>>>> slf4j-api.version = 1.7.5 >>>>>> slf4j-api.jar = slf4j-api-${slf4j-api.version}**.jar >>>>>> slf4j-api.loc = ${maven2.repo}/org/slf4j/** >>>>>> slf4j-api/${slf4j-api.version} >>>>>> >>>>>> Modified: jmeter/trunk/build.xml >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/build.xml?rev=** >>>>>> >>>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/build.xml?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/build.xml (original) >>>>>> +++ jmeter/trunk/build.xml Fri Jul 5 20:39:54 2013 >>>>>> @@ -387,6 +387,7 @@ >>>>>> <include name="${lib.dir}/${junit.jar}"**/> >>>>>> <include name="${lib.dir}/${logkit.jar}**"/> >>>>>> <include name="${lib.dir}/${mongo-java-**driver.jar}"/> >>>>>> + <include name="${lib.dir}/${**rsyntaxtextarea.jar}"/> >>>>>> <include name="${lib.dir}/${serializer.**jar}"/> >>>>>> <include name="${lib.dir}/${slf4j-api.**jar}"/> >>>>>> <include name="${lib.dir}/${soap.jar}"/**> >>>>>> @@ -454,6 +455,7 @@ >>>>>> <pathelement location="${lib.dir}/${junit.**jar}"/> >>>>>> <pathelement location="${lib.dir}/${logkit.**jar}"/> >>>>>> <pathelement location="${lib.dir}/${mongo-**java-driver.jar}"/> >>>>>> + <pathelement location="${lib.dir}/${**rsyntaxtextarea.jar}"/> >>>>>> <pathelement location="${lib.dir}/${**serializer.jar}"/> >>>>>> <pathelement location="${lib.dir}/${slf4j-**api.jar}"/> >>>>>> <pathelement location="${lib.dir}/${soap.**jar}"/> >>>>>> @@ -2879,6 +2881,7 @@ run JMeter unless all the JMeter jars ar >>>>>> <process_jarfile jarname="junit"/> >>>>>> <process_jarfile jarname="logkit"/> >>>>>> <process_jarfile jarname="mongo-java-driver"/> >>>>>> + <process_jarfile jarname="rsyntaxtextarea"/> >>>>>> <process_jarfile jarname="serializer"/> >>>>>> <process_jarfile jarname="slf4j-api"/> >>>>>> <process_jarfile jarname="soap"/> >>>>>> >>>>>> Modified: jmeter/trunk/eclipse.classpath >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/eclipse.** >>>>>> >>>>>> classpath?rev=1500124&r1=**1500123&r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/eclipse.classpath?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/eclipse.classpath (original) >>>>>> +++ jmeter/trunk/eclipse.classpath Fri Jul 5 20:39:54 2013 >>>>>> @@ -76,6 +76,7 @@ >>>>>> <classpathentry kind="lib" path="lib/logkit-2.0.jar"/> >>>>>> <classpathentry kind="lib" path="lib/mail-1.4.4.jar"/> >>>>>> <classpathentry kind="lib" path="lib/mongo-java-driver-2.** >>>>>> 11.2.jar"/> >>>>>> + <classpathentry kind="lib" path="lib/rsyntaxtextarea-2.0.** >>>>>> 7.jar"/> >>>>>> <classpathentry kind="lib" path="lib/oro-2.0.8.jar"/> >>>>>> <classpathentry kind="lib" >>>>>> path="lib/serializer-2.7.1.**jar"/> >>>>>> <classpathentry kind="lib" path="lib/slf4j-api-1.7.5.jar"**/> >>>>>> >>>>>> Modified: jmeter/trunk/res/maven/**ApacheJMeter_parent.pom >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/res/maven/** >>>>>> >>>>>> ApacheJMeter_parent.pom?rev=**1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/res/maven/ApacheJMeter_parent.pom?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/res/maven/**ApacheJMeter_parent.pom (original) >>>>>> +++ jmeter/trunk/res/maven/**ApacheJMeter_parent.pom Fri Jul 5 >>>>>> 20:39:54 2013 >>>>>> @@ -84,6 +84,7 @@ under the License. >>>>>> <junit.version>4.11</junit.**version> >>>>>> <logkit.version>2.0</logkit.**version> >>>>>> <mongo-java-driver.version>2.**11.2</mongo-java-driver.**version> >>>>>> + <rsyntaxtextarea.version>2.0.**7</rsyntaxtextarea.version> >>>>>> <slf4j.version>1.7.5</slf4j.**version> >>>>>> <soap.version>2.3.1</soap.**version> >>>>>> <tidy.version>r938</tidy.**version> >>>>>> @@ -357,6 +358,11 @@ under the License. >>>>>> <version>${mongo-java-driver.**version}</version> >>>>>> </dependency> >>>>>> <dependency> >>>>>> + <groupId>com.fifesoft</**groupId> >>>>>> + <artifactId>rsyntaxtextarea</**artifactId> >>>>>> + <version>${rsyntaxtextarea.**version}</version> >>>>>> + </dependency> >>>>>> + <dependency> >>>>>> <groupId>org.slf4j</groupId> >>>>>> <artifactId>slf4j-api</**artifactId> >>>>>> <version>${slf4j.version}</**version> >>>>>> >>>>>> Modified: >>>>>> jmeter/trunk/src/components/**org/apache/jmeter/assertions/** >>>>>> gui/BeanShellAssertionGui.java >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/components/** >>>>>> org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.** >>>>>> >>>>>> java?rev=1500124&r1=1500123&**r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/assertions/gui/BeanShellAssertionGui.java?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- >>>>>> jmeter/trunk/src/components/**org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.java >>>>>> (original) >>>>>> +++ >>>>>> jmeter/trunk/src/components/**org/apache/jmeter/assertions/**gui/BeanShellAssertionGui.java >>>>>> Fri Jul 5 20:39:54 2013 >>>>>> @@ -24,7 +24,6 @@ import javax.swing.Box; >>>>>> import javax.swing.JCheckBox; >>>>>> import javax.swing.JLabel; >>>>>> import javax.swing.JPanel; >>>>>> -import javax.swing.JScrollPane; >>>>>> import javax.swing.JTextArea; >>>>>> import javax.swing.JTextField; >>>>>> >>>>>> @@ -32,6 +31,9 @@ import org.apache.jmeter.assertions.**Bean >>>>>> import org.apache.jmeter.testelement.**TestElement; >>>>>> import org.apache.jmeter.testelement.**property.BooleanProperty; >>>>>> import org.apache.jmeter.util.**JMeterUtils; >>>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea; >>>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants; >>>>>> +import org.fife.ui.rtextarea.**RTextScrollPane; >>>>>> >>>>>> public class BeanShellAssertionGui extends AbstractAssertionGui { >>>>>> >>>>>> @@ -43,7 +45,7 @@ public class BeanShellAssertionGui exten >>>>>> >>>>>> private JTextField parameters;// parameters to pass to script >>>>>> file (or script) >>>>>> >>>>>> - private JTextArea scriptField;// script area >>>>>> + private RSyntaxTextArea scriptField; // script area >>>>>> >>>>>> public BeanShellAssertionGui() { >>>>>> init(); >>>>>> @@ -139,8 +141,10 @@ public class BeanShellAssertionGui exten >>>>>> } >>>>>> >>>>>> private JPanel createScriptPanel() { >>>>>> - scriptField = new JTextArea(); >>>>>> - scriptField.setRows(4); >>>>>> + scriptField = new RSyntaxTextArea(20,20); >>>>>> + >>>>>> scriptField.**setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_** >>>>>> JAVA); >>>>>> + scriptField.**setCodeFoldingEnabled(true); >>>>>> + scriptField.**setAntiAliasingEnabled(true); >>>>>> scriptField.setLineWrap(true); >>>>>> scriptField.setWrapStyleWord(**true); >>>>>> >>>>>> @@ -149,7 +153,7 @@ public class BeanShellAssertionGui exten >>>>>> >>>>>> JPanel panel = new JPanel(new BorderLayout()); >>>>>> panel.add(label, BorderLayout.NORTH); >>>>>> - panel.add(new JScrollPane(scriptField), BorderLayout.CENTER); >>>>>> + panel.add(new RTextScrollPane(scriptField), >>>>>> BorderLayout.CENTER); >>>>>> >>>>>> JTextArea explain = new JTextArea(JMeterUtils.** >>>>>> getResString("bsh_assertion_**script_variables")); //$NON-NLS-1$ >>>>>> explain.setLineWrap(true); >>>>>> >>>>>> Modified: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> GenericTestBeanCustomizer.java >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/** >>>>>> apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.** >>>>>> >>>>>> java?rev=1500124&r1=1500123&**r2=1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.java >>>>>> (original) >>>>>> +++ >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**GenericTestBeanCustomizer.java >>>>>> Fri Jul 5 20:39:54 2013 >>>>>> @@ -203,6 +203,8 @@ public class GenericTestBeanCustomizer e >>>>>> >>>>>> // Obtain the propertyEditors: >>>>>> editors = new PropertyEditor[descriptors.**length]; >>>>>> + int scriptLanguageIndex = 0; >>>>>> + int textAreaEditorIndex = 0; >>>>>> for (int i = 0; i < descriptors.length; i++) { // Index is >>>>>> also used for accessing editors array >>>>>> PropertyDescriptor descriptor = descriptors[i]; >>>>>> String name = descriptor.getName(); >>>>>> @@ -218,7 +220,7 @@ public class GenericTestBeanCustomizer e >>>>>> PropertyEditor propertyEditor; >>>>>> Object guiType = descriptor.getValue(GUITYPE); >>>>>> if (guiType instanceof TypeEditor) { >>>>>> - propertyEditor = ((TypeEditor) >>>>>> guiType).getInstance(** >>>>>> descriptor); >>>>>> + propertyEditor = ((TypeEditor) >>>>>> guiType).getInstance(** >>>>>> descriptor); >>>>>> } else { >>>>>> Class<?> editorClass = descriptor.** >>>>>> getPropertyEditorClass(); >>>>>> if (log.isDebugEnabled()) { >>>>>> @@ -267,6 +269,10 @@ public class GenericTestBeanCustomizer e >>>>>> { >>>>>> >>>>>> ((TestBeanPropertyEditor)**propertyEditor).setDescriptor(**descriptor); >>>>>> } >>>>>> + >>>>>> + if (propertyEditor instanceof TextAreaEditor) { >>>>>> + textAreaEditorIndex = i; >>>>>> + } >>>>>> if (propertyEditor.**getCustomEditor() instanceof >>>>>> JScrollPane) { >>>>>> scrollerCount++; >>>>>> } >>>>>> @@ -276,6 +282,17 @@ public class GenericTestBeanCustomizer e >>>>>> // Initialize the editor with the provided default >>>>>> value >>>>>> or null: >>>>>> setEditorValue(i, descriptor.getValue(DEFAULT)); >>>>>> >>>>>> + if (name.equals("scriptLanguage")**) { >>>>>> + scriptLanguageIndex = i; >>>>>> + } >>>>>> + >>>>>> + } >>>>>> + // In case of BSF and JSR elements i want to add >>>>>> textAreaEditor as a listener to scriptLanguage ComboBox. >>>>>> + String beanName = this.beanInfo.** >>>>>> getBeanDescriptor().getName(); >>>>>> + if (beanName.startsWith("BSF") || >>>>>> beanName.startsWith("JSR223")) { // $NON-NLS-1$ $NON-NLS-2$ >>>>>> + WrapperEditor we = (WrapperEditor) >>>>>> editors[scriptLanguageIndex]; >>>>>> + TextAreaEditor tae = (TextAreaEditor) >>>>>> editors[textAreaEditorIndex]; >>>>>> + we.addChangeListener(tae); >>>>>> } >>>>>> >>>>>> // Obtain message formats: >>>>>> >>>>>> Modified: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> TextAreaEditor.java >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/** >>>>>> apache/jmeter/testbeans/gui/**TextAreaEditor.java?rev=** >>>>>> >>>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/TextAreaEditor.java?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**TextAreaEditor.java >>>>>> (original) >>>>>> +++ >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**TextAreaEditor.java >>>>>> Fri Jul 5 20:39:54 2013 >>>>>> @@ -24,17 +24,23 @@ package org.apache.jmeter.testbeans.**gui; >>>>>> import java.awt.Component; >>>>>> import java.awt.event.FocusEvent; >>>>>> import java.awt.event.FocusListener; >>>>>> +import java.beans.**PropertyChangeEvent; >>>>>> +import java.beans.**PropertyChangeListener; >>>>>> import java.beans.**PropertyEditorSupport; >>>>>> +import java.util.Properties; >>>>>> >>>>>> -import javax.swing.JScrollPane; >>>>>> -import javax.swing.JTextArea; >>>>>> -import javax.swing.**ScrollPaneConstants; >>>>>> +import org.apache.jmeter.util.**JMeterUtils; >>>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea; >>>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants; >>>>>> +import org.fife.ui.rtextarea.**RTextScrollPane; >>>>>> >>>>>> -public class TextAreaEditor extends PropertyEditorSupport implements >>>>>> FocusListener { >>>>>> +public class TextAreaEditor extends PropertyEditorSupport implements >>>>>> FocusListener, PropertyChangeListener { >>>>>> >>>>>> - private JTextArea textUI; >>>>>> + private RSyntaxTextArea textUI; >>>>>> >>>>>> - private JScrollPane scroller; >>>>>> + private RTextScrollPane scroller; >>>>>> + >>>>>> + private Properties languageProperties; >>>>>> >>>>>> /** {@inheritDoc} */ >>>>>> @Override >>>>>> @@ -48,12 +54,17 @@ public class TextAreaEditor extends Prop >>>>>> } >>>>>> >>>>>> private final void init() {// called from ctor, so must not be >>>>>> overridable >>>>>> - textUI = new JTextArea(); >>>>>> + textUI = new RSyntaxTextArea(20, 20); >>>>>> + textUI.discardAllEdits(); >>>>>> + textUI.setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**JAVA); >>>>>> + textUI.setCodeFoldingEnabled(**true); >>>>>> + textUI.setAntiAliasingEnabled(**true); >>>>>> textUI.addFocusListener(this); >>>>>> textUI.setWrapStyleWord(true); >>>>>> textUI.setLineWrap(true); >>>>>> - scroller = new JScrollPane(textUI, >>>>>> ScrollPaneConstants.VERTICAL_**SCROLLBAR_AS_NEEDED, >>>>>> - ScrollPaneConstants.**HORIZONTAL_SCROLLBAR_NEVER); >>>>>> + scroller = new RTextScrollPane(textUI); >>>>>> + scroller.**setFoldIndicatorEnabled(true); >>>>>> + languageProperties = JMeterUtils.loadProperties("** >>>>>> org/apache/jmeter/testbeans/**gui/textarea.properties"); //$NON-NLS-1$ >>>>>> } >>>>>> >>>>>> /** >>>>>> @@ -112,4 +123,19 @@ public class TextAreaEditor extends Prop >>>>>> public boolean supportsCustomEditor() { >>>>>> return true; >>>>>> } >>>>>> + >>>>>> + @Override >>>>>> + public void propertyChange(**PropertyChangeEvent evt) { >>>>>> + Object source = evt.getSource(); >>>>>> + if (source instanceof ComboStringEditor && source != null) { >>>>>> + ComboStringEditor cse = (ComboStringEditor) source; >>>>>> + String lang = cse.getAsText().toLowerCase(); >>>>>> + if (languageProperties.**containsKey(lang)) { >>>>>> + textUI.setSyntaxEditingStyle(**languageProperties.** >>>>>> getProperty(lang)); >>>>>> + } else { >>>>>> + textUI.setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_**NONE); >>>>>> + } >>>>>> + >>>>>> + } >>>>>> + } >>>>>> } >>>>>> >>>>>> Modified: >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java >>>>>> >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/** >>>>>> apache/jmeter/testbeans/gui/**WrapperEditor.java?rev=** >>>>>> >>>>>> 1500124&r1=1500123&r2=1500124&**view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/WrapperEditor.java?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java >>>>>> (original) >>>>>> +++ >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**WrapperEditor.java >>>>>> Fri Jul 5 20:39:54 2013 >>>>>> @@ -445,4 +445,8 @@ class WrapperEditor extends PropertyEdit >>>>>> guiEditor.setAsText(**lastValidValue); >>>>>> } >>>>>> } >>>>>> + >>>>>> + public void addChangeListener(**PropertyChangeListener listener) >>>>>> { >>>>>> + guiEditor.**addPropertyChangeListener(**listener); >>>>>> + } >>>>>> } >>>>>> \ No newline at end of file >>>>>> >>>>>> Added: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> textarea.properties >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/core/org/** >>>>>> apache/jmeter/testbeans/gui/**textarea.properties?rev=** >>>>>> >>>>>> 1500124&view=auto<http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/textarea.properties?rev=1500124&view=auto> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties >>>>>> (added) >>>>>> +++ >>>>>> jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/**textarea.properties >>>>>> Fri Jul 5 20:39:54 2013 >>>>>> @@ -0,0 +1,52 @@ >>>>>> +# >>>>>> +# Licensed to the Apache Software Foundation (ASF) under one or more >>>>>> +# contributor license agreements. See the NOTICE file distributed >>>>>> with >>>>>> +# this work for additional information regarding copyright ownership. >>>>>> +# The ASF licenses this file to You under the Apache License, Version >>>>>> 2.0 >>>>>> +# (the "License"); you may not use this file except in compliance >>>>>> with >>>>>> +# the License. You may obtain a copy of the License at >>>>>> +# >>>>>> +# >>>>>> http://www.apache.org/**licenses/LICENSE-2.0<http://www.apache.org/licenses/LICENSE-2.0> >>>>>> +# >>>>>> +# Unless required by applicable law or agreed to in writing, software >>>>>> +# distributed under the License is distributed on an "AS IS" BASIS, >>>>>> +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >>>>>> implied. >>>>>> +# See the License for the specific language governing permissions and >>>>>> +# limitations under the License. >>>>>> +# >>>>>> + >>>>>> +javascript = text/javascript >>>>>> +js = text/javascript >>>>>> +jacl = text/tcl >>>>>> +netrexx = text/plain >>>>>> +java = text/java >>>>>> +javaclass = text/java >>>>>> +bml = text/xml >>>>>> +vbscript = text/vb >>>>>> +jscript = text/javascript >>>>>> +perlscript = text/perl >>>>>> +perl = text/perl >>>>>> +jpython = text/python >>>>>> +jython = text/python >>>>>> +lotusscript = text/vb >>>>>> +xslt = text/mxml >>>>>> +pnuts = text/java >>>>>> +beanbasic = text/java >>>>>> +beanshell = text/java >>>>>> +bsh = text/unix >>>>>> +ruby = text/ruby >>>>>> +judoscript = text/plain >>>>>> +groovy = text/groovy >>>>>> +objectscript = text/javascript >>>>>> +prolog = text/plain >>>>>> +rexx = text/plain >>>>>> +applescript = text/plain >>>>>> +ecmascript = text/actionscript >>>>>> +jexl = text/java >>>>>> +jexl2 = text/java >>>>>> +rhino = text/javascript >>>>>> +edit = text/unix >>>>>> +lua = text/lua >>>>>> +php = text/php >>>>>> +lisp = text/lisp >>>>>> +sql = text/sql >>>>>> \ No newline at end of file >>>>>> >>>>>> Propchange: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> textarea.properties >>>>>> >>>>>> ------------------------------**------------------------------**------------------ >>>>>> >>>>>> svn:eol-style = native >>>>>> >>>>>> Propchange: jmeter/trunk/src/core/org/**apache/jmeter/testbeans/gui/** >>>>>> textarea.properties >>>>>> >>>>>> ------------------------------**------------------------------**------------------ >>>>>> >>>>>> svn:mime-type = text/plain >>>>>> >>>>>> Modified: jmeter/trunk/src/protocol/**java/org/apache/jmeter/** >>>>>> protocol/java/control/gui/**BeanShellSamplerGui.java >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/src/protocol/** >>>>>> java/org/apache/jmeter/**protocol/java/control/gui/** >>>>>> BeanShellSamplerGui.java?rev=**1500124&r1=1500123&r2=1500124&** >>>>>> >>>>>> view=diff<http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/java/org/apache/jmeter/protocol/java/control/gui/BeanShellSamplerGui.java?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/src/protocol/**java/org/apache/jmeter/** >>>>>> protocol/java/control/gui/**BeanShellSamplerGui.java (original) >>>>>> +++ jmeter/trunk/src/protocol/**java/org/apache/jmeter/** >>>>>> protocol/java/control/gui/**BeanShellSamplerGui.java Fri Jul 5 >>>>>> 20:39:54 2013 >>>>>> @@ -24,7 +24,6 @@ import javax.swing.Box; >>>>>> import javax.swing.JCheckBox; >>>>>> import javax.swing.JLabel; >>>>>> import javax.swing.JPanel; >>>>>> -import javax.swing.JScrollPane; >>>>>> import javax.swing.JTextArea; >>>>>> import javax.swing.JTextField; >>>>>> >>>>>> @@ -33,6 +32,9 @@ import org.apache.jmeter.samplers.**gui.Ab >>>>>> import org.apache.jmeter.testelement.**TestElement; >>>>>> import org.apache.jmeter.testelement.**property.BooleanProperty; >>>>>> import org.apache.jmeter.util.**JMeterUtils; >>>>>> +import org.fife.ui.rsyntaxtextarea.**RSyntaxTextArea; >>>>>> +import org.fife.ui.rsyntaxtextarea.**SyntaxConstants; >>>>>> +import org.fife.ui.rtextarea.**RTextScrollPane; >>>>>> >>>>>> public class BeanShellSamplerGui extends AbstractSamplerGui { >>>>>> >>>>>> @@ -44,7 +46,7 @@ public class BeanShellSamplerGui extends >>>>>> >>>>>> private JTextField parameters;// parameters to pass to script >>>>>> file (or script) >>>>>> >>>>>> - private JTextArea scriptField;// script area >>>>>> + private RSyntaxTextArea scriptField;// script area >>>>>> >>>>>> public BeanShellSamplerGui() { >>>>>> init(); >>>>>> @@ -153,8 +155,9 @@ public class BeanShellSamplerGui extends >>>>>> } >>>>>> >>>>>> private JPanel createScriptPanel() { >>>>>> - scriptField = new JTextArea(); >>>>>> - scriptField.setRows(4); >>>>>> + scriptField = new RSyntaxTextArea(20, 20); >>>>>> + >>>>>> scriptField.**setSyntaxEditingStyle(**SyntaxConstants.SYNTAX_STYLE_** >>>>>> JAVA); >>>>>> + scriptField.**setCodeFoldingEnabled(true); >>>>>> scriptField.setLineWrap(true); >>>>>> scriptField.setWrapStyleWord(**true); >>>>>> >>>>>> @@ -163,7 +166,7 @@ public class BeanShellSamplerGui extends >>>>>> >>>>>> JPanel panel = new JPanel(new BorderLayout()); >>>>>> panel.add(label, BorderLayout.NORTH); >>>>>> - panel.add(new JScrollPane(scriptField), BorderLayout.CENTER); >>>>>> + panel.add(new RTextScrollPane(scriptField), >>>>>> BorderLayout.CENTER); >>>>>> >>>>>> JTextArea explain = new JTextArea(JMeterUtils.** >>>>>> getResString("bsh_script_**variables")); //$NON-NLS-1$ >>>>>> explain.setLineWrap(true); >>>>>> >>>>>> Modified: jmeter/trunk/xdocs/changes.xml >>>>>> URL: http://svn.apache.org/viewvc/**jmeter/trunk/xdocs/changes.** >>>>>> >>>>>> xml?rev=1500124&r1=1500123&r2=**1500124&view=diff<http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1500124&r1=1500123&r2=1500124&view=diff> >>>>>> >>>>>> ==============================**==============================**================== >>>>>> >>>>>> --- jmeter/trunk/xdocs/changes.xml (original) >>>>>> +++ jmeter/trunk/xdocs/changes.xml Fri Jul 5 20:39:54 2013 >>>>>> @@ -224,6 +224,7 @@ Transaction Controller now sets Response >>>>>> <li><bugzilla>54990</bugzilla> - Download large files avoiding >>>>>> outOfMemory</li> >>>>>> <li><bugzilla>55085</bugzilla> - UX Improvement : Ability to create >>>>>> New Test Plan from Templates</li> >>>>>> <li><bugzilla>55172</bugzilla> - Provide plugins a way to add Top >>>>>> Menu and menu items</li> >>>>>> +<li><bugzilla>55202</**bugzilla> - Add syntax color for scripts >>>>>> elements (BeanShell, BSF, and JSR223) with RSyntaxTextArea</li> >>>>>> </ul> >>>>>> >>>>>> <h2>Non-functional changes</h2> >>>>>> >>>>>> >>>>>> >>>> >
