- java.lang.Object
-
- jdk.dynalink.linker.support.DefaultInternalObjectFilter
-
- All Implemented Interfaces:
-
MethodHandleTransformer
public class DefaultInternalObjectFilter extends Object implements MethodHandleTransformer
一个DynamicLinkerFactory.setInternalObjectsFilter(MethodHandleTransformer)
的默认实现,委托一对过滤方法句柄。 它需要Object(Object)
类型的方法句柄来过滤参数值,另一个类型用于过滤返回值。 它将它们应用于传递给其transform(MethodHandle)
方法的方法句柄上的参数和返回值过滤器,以及声明为具有类型为Object
的那些参数和返回值。 还处理method handles that support variable arity calls
与最后一个Object[]
参数。 您可以将参数过滤器广泛地认为是将包含在具有一些公共接口的适配器的内部运行时对象暴露的包装方法,返回值过滤器作为其反展开方法。
-
-
构造方法摘要
构造方法 Constructor 描述 DefaultInternalObjectFilter(MethodHandle parameterFilter, MethodHandle returnFilter)
创建一个新的过滤器。
-
-
-
构造方法详细信息
-
DefaultInternalObjectFilter
public DefaultInternalObjectFilter(MethodHandle parameterFilter, MethodHandle returnFilter)
创建一个新的过滤器。- 参数
-
parameterFilter
- 方法参数的过滤器。 必须是Object(Object)
或null
。 -
returnFilter
- 返回值的过滤器。 必须是Object(Object)
或null
。 - 异常
-
IllegalArgumentException
- 如果一个或两个过滤器不是预期类型。
-
-
方法详细信息
-
transform
public MethodHandle transform(MethodHandle target)
描述从接口MethodHandleTransformer
复制转换方法句柄。- Specified by:
-
transform
在接口MethodHandleTransformer
- 参数
-
target
- 正在转换的方法句柄。 - 结果
- transformed method handle.
-
-