ObjectPath 类
- java.lang.Object
- com.microsoft.bot.dialogs.ObjectPath
public final class ObjectPath
方法摘要
| 修饰符和类型 |
方法和描述 |
|
static
T
|
<T>assign(T startObject, Object overlayObject)
等效于 javascripts 对象路径。Assign,从开始创建一个新对象,对象覆盖覆盖覆盖对象中的任何非 null 值。
|
|
static
T
|
<T>assign(Object startObject, Object overlayObject, Class<T> type)
等效于 javascripts 对象路径。Assign,从开始创建一个新对象,对象覆盖覆盖覆盖对象中的任何非 null 值。
|
|
static
T
|
<T>clone(T obj)
克隆对象。
|
|
static
T
|
<T>getPathValue(Object obj, String path, Class<T> valueType)
获取相对于对象的路径的值。
|
|
static
T
|
<T>getPathValue(Object obj, String path, Class<T> valueType, T defaultValue)
获取相对于对象的路径的值。
|
|
static
T
|
<T>mapValueTo(Object val, Class<T> valueType)
将泛型对象转换为类型化对象。
|
|
static
T
|
<T>merge(Object startObject, Object overlayObject)
等效于 javascripts 对象路径。Assign,从开始创建一个新对象,对象覆盖覆盖覆盖对象中的任何非 null 值。
|
|
static
T
|
<T>merge(Object startObject, Object overlayObject, Class<T> type)
等效于 javascripts 对象路径。Assign,从开始创建一个新对象,对象覆盖覆盖覆盖对象中的任何非 null 值。
|
|
static
T
|
<T>tryGetPathValue(Object obj, String path, Class<T> valueType)
获取相对于对象的路径的值。
|
|
static
com.microsoft.bot.dialogs.Segments
|
<T>tryResolvePath(Object obj, String propertyPath)
给定根对象和属性路径时,如果 eval = true 或常量路径,则解析为常量。
|
|
static
com.microsoft.bot.dialogs.Segments
|
<T>tryResolvePath(Object obj, String propertyPath, boolean eval)
给定根对象和属性路径时,如果 eval = true 或常量路径,则解析为常量。
|
|
static
boolean
|
containsProperty(Object obj, String name)
检测对象上是否存在属性。
|
|
static
void
|
forEachProperty(Object obj, BiConsumer<String,Object> action)
将作应用于对象中的所有属性。
|
|
static
java.util.Collection<java.lang.String>
|
getProperties(Object obj)
获取对象中的所有属性。
|
|
static
boolean
|
hasValue(Object obj, String path)
对象是否具有子路径。
|
|
static
void
|
removePathValue(Object obj, String path)
从对象中删除路径。
|
|
static
void
|
setPathValue(Object obj, String path, Object value)
给定对象评估用于设置值的路径。
|
|
static
void
|
setPathValue(Object obj, String path, Object value, boolean json)
给定对象评估用于设置值的路径。
|
方法继承自 java.lang.Object
java.lang.Object.clone
java.lang.Object.equals
java.lang.Object.finalize
java.lang.Object.getClass
java.lang.Object.hashCode
java.lang.Object.notify
java.lang.Object.notifyAll
java.lang.Object.toString
java.lang.Object.wait
java.lang.Object.wait
java.lang.Object.wait
方法详细信息
<T>assign
public static T assign(T startObject, Object overlayObject)
等效于 javascripts ObjectPath.Assign,从 startObject 创建一个新对象,覆盖覆盖对象中的任何非 null 值。
参数:
startObject
- 任何类型的 overlay 对象。
overlayObject
- 任何类型的 overlay 对象。
返回:
merged 对象。
<T>assign
public static T assign(Object startObject, Object overlayObject, Class type)
等效于 javascripts ObjectPath.Assign,从 startObject 创建一个新对象,覆盖覆盖对象中的任何非 null 值。
参数:
startObject
- 任何类型的 intial 对象。
overlayObject
- 任何类型的 overlay 对象。
type
- 键入输出。
返回:
merged 对象。
<T>clone
public static T clone(T obj)
克隆对象。
参数:
obj
- 对象。
返回:
对象为 Json。
<T>getPathValue
public static T getPathValue(Object obj, String path, Class valueType)
获取相对于对象的路径的值。
参数:
obj
- 要从其开始的对象。
path
- 要计算的路径。
valueType
- T 的类型
返回:
value 或 default(T)。
<T>getPathValue
public static T getPathValue(Object obj, String path, Class valueType, T defaultValue)
获取相对于对象的路径的值。
参数:
obj
- 要从其开始的对象。
path
- 要计算的路径。
valueType
- T 的类型
defaultValue
- 如果缺少路径的任何部分,则使用默认值。
返回:
value 或 default(T)。
<T>mapValueTo
public static T mapValueTo(Object val, Class valueType)
将泛型对象转换为类型化对象。
参数:
val
- 要转换的值。
valueType
- T 的类型
返回:
转换的值。
<T>merge
public static T merge(Object startObject, Object overlayObject)
等效于 javascripts ObjectPath.Assign,从 startObject 创建一个新对象,覆盖覆盖对象中的任何非 null 值。
参数:
startObject
- Intial 对象。
overlayObject
- 覆盖对象。
返回:
merged 对象。
<T>merge
public static T merge(Object startObject, Object overlayObject, Class type)
等效于 javascripts ObjectPath.Assign,从 startObject 创建一个新对象,覆盖覆盖对象中的任何非 null 值。
参数:
startObject
- Intial 对象。
overlayObject
- 覆盖对象。
type
- T 的类型
返回:
merged 对象。
<T>tryGetPathValue
public static T tryGetPathValue(Object obj, String path, Class valueType)
获取相对于对象的路径的值。
参数:
obj
- 要从其开始的对象。
path
- 要计算的路径。
valueType
- 路径的值。
返回:
如果成功,则为 true。
<T>tryResolvePath
public static Segments tryResolvePath(Object obj, String propertyPath)
给定根对象和属性路径时,如果 eval = true 或常量路径,则解析为常量。 conversation[user.name][user.age] 到 ['conversation', 'joe', 32]。
参数:
obj
- root 对象。
propertyPath
- 要解析的属性路径。
返回:
如此 如果它能够解析所有嵌套引用。
<T>tryResolvePath
public static Segments tryResolvePath(Object obj, String propertyPath, boolean eval)
给定根对象和属性路径时,如果 eval = true 或常量路径,则解析为常量。 conversation[user.name][user.age] 到 ['conversation', 'joe', 32]。
参数:
obj
- root 对象。
propertyPath
- 要解析的属性路径。
eval
- 如果为 True,则评估生成的段。
返回:
如此 如果它能够解析所有嵌套引用。
containsProperty
public static boolean containsProperty(Object obj, String name)
检测对象上是否存在属性。
参数:
obj
- 对象。
name
- 属性的名称。
返回:
如果找到,则为 true。
forEachProperty
public static void forEachProperty(Object obj, BiConsumer action)
将作应用于对象中的所有属性。
参数:
obj
- 要映射到的对象。
action
- 要执行的作。
getProperties
public static Collection getProperties(Object obj)
获取对象中的所有属性。
参数:
obj
- 用于枚举属性名称的对象。
返回:
如果对象上属性名称不是值类型,则为枚举。
hasValue
public static boolean hasValue(Object obj, String path)
对象是否具有子路径。
参数:
obj
- 对象。
path
- 要计算的路径。
返回:
如果路径存在,则为 true。
removePathValue
public static void removePathValue(Object obj, String path)
从对象中删除路径。
参数:
obj
- 要更改的对象。
path
- 要删除的路径。
setPathValue
public static void setPathValue(Object obj, String path, Object value)
给定对象评估用于设置值的路径。
参数:
obj
- 要从其开始的对象。
path
- 要计算的路径。
value
- 要存储的值。
setPathValue
public static void setPathValue(Object obj, String path, Object value, boolean json)
给定对象评估用于设置值的路径。
参数:
obj
- 要从其开始的对象。
path
- 要计算的路径。
value
- 要存储的值。
json
- 如果为 true,则将该值设置为基元 JSON 对象。
适用于