Apache JMeter

org.apache.jmeter.testelement.property
Class AbstractProperty

java.lang.Object
  extended by 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
protected static org.apache.log.Logger log
           
 
Constructor Summary
AbstractProperty()
           
AbstractProperty(String name)
           
 
Method Summary
 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 values
protected  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
 

Field Detail

log

protected static final org.apache.log.Logger log
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 interface JMeterProperty
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 interface JMeterProperty
Returns:
the name of the property

setName

public void setName(String name)
Set the property name.

Specified by:
setName in interface JMeterProperty
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 interface JMeterProperty
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 interface JMeterProperty
Overrides:
clone in class Object

getIntValue

public int getIntValue()
Returns 0 if string is invalid or null.

Specified by:
getIntValue in interface JMeterProperty
See Also:
JMeterProperty.getIntValue()

getLongValue

public long getLongValue()
Returns 0 if string is invalid or null.

Specified by:
getLongValue in interface JMeterProperty
See Also:
JMeterProperty.getLongValue()

getDoubleValue

public double getDoubleValue()
Returns 0 if string is invalid or null.

Specified by:
getDoubleValue in interface JMeterProperty
See Also:
JMeterProperty.getDoubleValue()

getFloatValue

public float getFloatValue()
Returns 0 if string is invalid or null.

Specified by:
getFloatValue in interface JMeterProperty
See Also:
JMeterProperty.getFloatValue()

getBooleanValue

public boolean getBooleanValue()
Returns false if string is invalid or null.

Specified by:
getBooleanValue in interface JMeterProperty
See Also:
JMeterProperty.getBooleanValue()

equals

public boolean equals(Object o)
Determines if the two objects are equal by comparing names and values

Overrides:
equals in class Object
Returns:
true if names are equal and values are equal (or both null)

hashCode

public int hashCode()

Overrides:
hashCode in class Object

compareTo

public int compareTo(JMeterProperty arg0)
Compares two JMeterProperty object values. N.B. Does not compare names

Specified by:
compareTo in interface Comparable<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:

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.

Overrides:
toString in class Object
Returns:
the string value

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 interface JMeterProperty
Parameters:
prop - the property object to merge into this property

Apache JMeter

Copyright © 1998-2015 Apache Software Foundation. All Rights Reserved.