Class AbstractProperty
java.lang.Object
org.apache.jmeter.testelement.property.AbstractProperty
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<JMeterProperty>,JMeterProperty
- Direct Known Subclasses:
BooleanProperty,FunctionProperty,MultiProperty,NullProperty,NumberProperty,ObjectProperty,StringProperty
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()intcompareTo(JMeterProperty arg0) Compares two JMeterProperty object values.protected JMeterPropertyconvertObject(Object item) static JMeterPropertycreateProperty(Object item) booleanDetermines if the two objects are equal by comparing names and valuesprotected JMeterPropertyprotected static JMeterPropertygetBlankProperty(Object item) booleanReturns false if string is invalid or null.doubleReturns 0 if string is invalid or null.floatReturns 0 if string is invalid or null.intReturns 0 if string is invalid or null.protected PropertyIteratorgetIterator(Collection<JMeterProperty> values) longReturns 0 if string is invalid or null.getName()The name of the property.protected Class<? extends JMeterProperty>Get the property type for this property.inthashCode()protected booleanisEqualType(JMeterProperty prop) booleanReturns whether the property is a running version.protected static JMeterPropertymakeProperty(Object item) Create a JMeterProperty from an object.voidmergeIn(JMeterProperty prop) Take the given property object and merge it's value with the current property object.protected Collection<JMeterProperty>normalizeList(Collection<?> coll) Convert a collection of objects into JMeterProperty objects.protected Map<String,JMeterProperty> normalizeMap(Map<?, ?> coll) Given a Map, it converts the Map into a collection of JMeterProperty objects, appropriate for a MapProperty object.voidSet the property name.voidsetRunningVersion(boolean runningVersion) Make the property a running version or turn it off as the running version.toString()Provides the string representation of the property.Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.jmeter.testelement.property.JMeterProperty
getObjectValue, getStringValue, recoverRunningVersion, setObjectValue
-
Field Details
-
log
protected static final org.slf4j.Logger log
-
-
Constructor Details
-
AbstractProperty
-
AbstractProperty
protected AbstractProperty()
-
-
Method Details
-
isEqualType
-
isRunningVersion
public boolean isRunningVersion()Returns whether the property is a running version.- Specified by:
isRunningVersionin interfaceJMeterProperty- Returns:
- flag whether this property is a running version
-
getName
The name of the property. Typically this should match the name that keys the property's location in the test elements Map.- Specified by:
getNamein interfaceJMeterProperty- Returns:
- the name of the property
-
setName
Set the property name.- Specified by:
setNamein interfaceJMeterProperty- Parameters:
name- the name of the property
-
setRunningVersion
public void setRunningVersion(boolean runningVersion) Make the property a running version or turn it off as the running version. A property that is made a running version will preserve the current state in such a way that it is retrievable by a future call to 'recoverRunningVersion()'. Additionally, a property that is a running version will resolve all functions prior to returning it's property value. A non-running version property will return functions as their uncompiled string representation.- Specified by:
setRunningVersionin interfaceJMeterProperty- Parameters:
runningVersion- flag whether this property is a running version
-
getIterator
-
clone
- Specified by:
clonein interfaceJMeterProperty- Overrides:
clonein classObject
-
getIntValue
public int getIntValue()Returns 0 if string is invalid or null.- Specified by:
getIntValuein interfaceJMeterProperty- See Also:
-
getLongValue
public long getLongValue()Returns 0 if string is invalid or null.- Specified by:
getLongValuein interfaceJMeterProperty- See Also:
-
getDoubleValue
public double getDoubleValue()Returns 0 if string is invalid or null.- Specified by:
getDoubleValuein interfaceJMeterProperty- See Also:
-
getFloatValue
public float getFloatValue()Returns 0 if string is invalid or null.- Specified by:
getFloatValuein interfaceJMeterProperty- See Also:
-
getBooleanValue
public boolean getBooleanValue()Returns false if string is invalid or null.- Specified by:
getBooleanValuein interfaceJMeterProperty- See Also:
-
equals
Determines if the two objects are equal by comparing names and values -
hashCode
public int hashCode() -
compareTo
Compares two JMeterProperty object values. N.B. Does not compare names- Specified by:
compareToin interfaceComparable<JMeterProperty>- Parameters:
arg0- JMeterProperty to compare against- Returns:
- 0 if equal values or both values null; -1 otherwise
- See Also:
-
getPropertyType
Get the property type for this property. Used to convert raw values into JMeterProperties.- Returns:
- property type of this property
-
getBlankProperty
-
getBlankProperty
-
normalizeList
Convert a collection of objects into JMeterProperty objects.- Parameters:
coll- Collection of any type of object- Returns:
- Collection of JMeterProperty objects
-
normalizeMap
Given a Map, it converts the Map into a collection of JMeterProperty objects, appropriate for a MapProperty object.- Parameters:
coll- Map to convert- Returns:
- converted Map
-
createProperty
-
makeProperty
Create a JMeterProperty from an object. The object can be one of:- JMeterProperty - returned unchanged
- TestElement => TestElementProperty with the same name
- Map|Collection => Map|CollectionProperty with the name = item.hashCode
- Parameters:
item- object to be turned into a property- Returns:
- the JMeterProperty
-
convertObject
-
toString
Provides the string representation of the property. -
mergeIn
Take the given property object and merge it's value with the current property object. For most property types, this will simply be ignored. But for collection properties and test element properties, more complex behavior is required.- Specified by:
mergeInin interfaceJMeterProperty- Parameters:
prop- the property object to merge into this property
-