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
public abstract class AbstractProperty extends Object implements JMeterProperty
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected static Logger
log
-
Constructor Summary
Constructors Constructor Description AbstractProperty()
AbstractProperty(String name)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractProperty
clone()
int
compareTo(JMeterProperty arg0)
Compares two JMeterProperty object values.protected JMeterProperty
convertObject(Object item)
static JMeterProperty
createProperty(Object item)
boolean
equals(Object o)
Determines if the two objects are equal by comparing names and valuesprotected JMeterProperty
getBlankProperty()
protected static JMeterProperty
getBlankProperty(Object item)
boolean
getBooleanValue()
Returns false if string is invalid or null.double
getDoubleValue()
Returns 0 if string is invalid or null.float
getFloatValue()
Returns 0 if string is invalid or null.int
getIntValue()
Returns 0 if string is invalid or null.protected PropertyIterator
getIterator(Collection<JMeterProperty> values)
long
getLongValue()
Returns 0 if string is invalid or null.String
getName()
The name of the property.protected Class<? extends JMeterProperty>
getPropertyType()
Get the property type for this property.int
hashCode()
protected boolean
isEqualType(JMeterProperty prop)
boolean
isRunningVersion()
Returns whether the property is a running version.protected static JMeterProperty
makeProperty(Object item)
Create a JMeterProperty from an object.void
mergeIn(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.void
setName(String name)
Set the property name.void
setRunningVersion(boolean runningVersion)
Make the property a running version or turn it off as the running version.String
toString()
Provides the string representation of the property.-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.jmeter.testelement.property.JMeterProperty
getObjectValue, getStringValue, recoverRunningVersion, setObjectValue
-
-
-
-
Constructor Detail
-
AbstractProperty
public AbstractProperty(String name)
-
AbstractProperty
public AbstractProperty()
-
-
Method Detail
-
isEqualType
protected boolean isEqualType(JMeterProperty prop)
-
isRunningVersion
public boolean isRunningVersion()
Returns whether the property is a running version.- Specified by:
isRunningVersion
in interfaceJMeterProperty
- Returns:
- flag whether this property is a running version
-
getName
public String 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:
getName
in interfaceJMeterProperty
- Returns:
- the name of the property
-
setName
public void setName(String name)
Set the property name.- Specified by:
setName
in 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:
setRunningVersion
in interfaceJMeterProperty
- Parameters:
runningVersion
- flag whether this property is a running version
-
getIterator
protected PropertyIterator getIterator(Collection<JMeterProperty> values)
-
clone
public AbstractProperty clone()
- Specified by:
clone
in interfaceJMeterProperty
- Overrides:
clone
in classObject
-
getIntValue
public int getIntValue()
Returns 0 if string is invalid or null.- Specified by:
getIntValue
in interfaceJMeterProperty
- See Also:
JMeterProperty.getIntValue()
-
getLongValue
public long getLongValue()
Returns 0 if string is invalid or null.- Specified by:
getLongValue
in interfaceJMeterProperty
- See Also:
JMeterProperty.getLongValue()
-
getDoubleValue
public double getDoubleValue()
Returns 0 if string is invalid or null.- Specified by:
getDoubleValue
in interfaceJMeterProperty
- See Also:
JMeterProperty.getDoubleValue()
-
getFloatValue
public float getFloatValue()
Returns 0 if string is invalid or null.- Specified by:
getFloatValue
in interfaceJMeterProperty
- See Also:
JMeterProperty.getFloatValue()
-
getBooleanValue
public boolean getBooleanValue()
Returns false if string is invalid or null.- Specified by:
getBooleanValue
in interfaceJMeterProperty
- See Also:
JMeterProperty.getBooleanValue()
-
equals
public boolean equals(Object o)
Determines if the two objects are equal by comparing names and values
-
compareTo
public int compareTo(JMeterProperty arg0)
Compares two JMeterProperty object values. N.B. Does not compare names- Specified by:
compareTo
in interfaceComparable<JMeterProperty>
- Parameters:
arg0
- JMeterProperty to compare against- Returns:
- 0 if equal values or both values null; -1 otherwise
- See Also:
Comparable.compareTo(Object)
-
getPropertyType
protected Class<? extends JMeterProperty> getPropertyType()
Get the property type for this property. Used to convert raw values into JMeterProperties.- Returns:
- property type of this property
-
getBlankProperty
protected JMeterProperty getBlankProperty()
-
getBlankProperty
protected static JMeterProperty getBlankProperty(Object item)
-
normalizeList
protected Collection<JMeterProperty> normalizeList(Collection<?> coll)
Convert a collection of objects into JMeterProperty objects.- Parameters:
coll
- Collection of any type of object- Returns:
- Collection of JMeterProperty objects
-
normalizeMap
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.- Parameters:
coll
- Map to convert- Returns:
- converted Map
-
createProperty
public static JMeterProperty createProperty(Object item)
-
makeProperty
protected static JMeterProperty makeProperty(Object item)
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 propery- Returns:
- the JMeterProperty
-
convertObject
protected JMeterProperty convertObject(Object item)
-
toString
public String toString()
Provides the string representation of the property.
-
mergeIn
public void mergeIn(JMeterProperty prop)
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:
mergeIn
in interfaceJMeterProperty
- Parameters:
prop
- the property object to merge into this property
-
-