Package org.apache.felix.scr.impl.inject
Class ValueUtils
- java.lang.Object
-
- org.apache.felix.scr.impl.inject.ValueUtils
-
public class ValueUtils extends Object
Utility methods for handling references and activation
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ValueUtils.ValueType
The value type of the field, activation field or constructor parameter
-
Field Summary
Fields Modifier and Type Field Description static ValueUtils.ValueType[]
EMPTY_VALUE_TYPES
Empty array.
-
Constructor Summary
Constructors Constructor Description ValueUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ValueUtils.ValueType
getReferenceValueType(Class<?> componentClass, ReferenceMetadata metadata, Class<?> typeClass, Field field, ComponentLogger logger)
Get the value type of the reference for a field/constructor argumentstatic Object
getValue(String componentType, ValueUtils.ValueType type, Class<?> targetType, ComponentContextImpl componentContext, RefPair<?,?> refPair)
Get the value for the value typestatic ValueUtils.ValueType
getValueType(Class<?> typeClass)
Get the value type for the parameter class.
-
-
-
Field Detail
-
EMPTY_VALUE_TYPES
public static final ValueUtils.ValueType[] EMPTY_VALUE_TYPES
Empty array.
-
-
Method Detail
-
getValueType
public static ValueUtils.ValueType getValueType(Class<?> typeClass)
Get the value type for the parameter class. This method is used for field activation and constructor injection.- Parameters:
typeClass
- The class of the parameter- Returns:
- The value type
-
getReferenceValueType
public static ValueUtils.ValueType getReferenceValueType(Class<?> componentClass, ReferenceMetadata metadata, Class<?> typeClass, Field field, ComponentLogger logger)
Get the value type of the reference for a field/constructor argument- Parameters:
componentClass
- The component class declaring the referencemetadata
- The reference metadatatypeClass
- The type of the field/parameterf
- The optional field. Ifnull
this is a constructor referencelogger
- The logger- Returns:
- The value type for the field. If invalid,
ValueType#ignore
-
getValue
public static Object getValue(String componentType, ValueUtils.ValueType type, Class<?> targetType, ComponentContextImpl componentContext, RefPair<?,?> refPair)
Get the value for the value type- Parameters:
componentType
- The class of the componenttype
- The value typetargetType
- Optional target type, only required for typeValueType#config_annotation
.componentContext
- The component contextrefPair
- The ref pair- Returns:
- The value or
null
.
-
-