Class PropertyBag
- java.lang.Object
-
- org.identityconnectors.test.common.PropertyBag
-
public final class PropertyBag extends Object
Encapsulates a read-only bag of properties, which can be accessed in a type-safe manner.The simplest way to obtain a required (i.e., the property must be in the bag, otherwise an exception is thrown) property value is
getProperty(String, Class)
. If the property is not a required one, thegetProperty(String, Class, Object)
method can be used, which also takes a default value which is returned when the property is not present in the bag.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
getProperty(String name, Class<T> type)
Gets the value of a required property in a type-safe manner.<T> T
getProperty(String name, Class<T> type, T def)
Gets a property value, returning a default value when no property with the specified name exists in the bag.String
getStringProperty(String name)
Gets a required property value known to be of string type.String
toString()
-
-
-
Method Detail
-
getProperty
public <T> T getProperty(String name, Class<T> type)
Gets the value of a required property in a type-safe manner. If no property exists with the given name,IllegalArgumentException
is thrown.- Type Parameters:
T
- the type of the property.- Parameters:
name
- the name of the property.type
- theClass
representing the type of the property.- Returns:
- the value of the property in bag;
null
if the value of the property wasnull
. - Throws:
IllegalArgumentException
- if no property with the given name name exists in the bag.ClassCastException
- if the property exists, but is not of the specified type.
-
getProperty
public <T> T getProperty(String name, Class<T> type, T def)
Gets a property value, returning a default value when no property with the specified name exists in the bag.- Type Parameters:
T
- the type of the property.- Parameters:
name
- the name of the property.type
- theClass
representing the type of the property.def
- the default value returned when no property with the specified name exists in the bag.- Returns:
- the value of the property in bag or the default value;
null
if the value of the property wasnull
. - Throws:
ClassCastException
- if the property exists, but is not of the specified type.
-
getStringProperty
public String getStringProperty(String name)
Gets a required property value known to be of string type. The method expects that the value is an instance ofString
. It does not attempt to callObject.toString()
on the value.- Parameters:
name
- the name of the property.- Returns:
- the value of the property in bag;
null
if the value of the property wasnull
. - Throws:
IllegalArgumentException
- if no property with the given name exists in the bag.ClassCastException
- if the property exists, but is not an instance ofString
.
-
-