io.micronaut.inject.BeanDefinition.findMethod()方法的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(6.6k)|赞(0)|评价(0)|浏览(75)

本文整理了Java中io.micronaut.inject.BeanDefinition.findMethod()方法的一些代码示例,展示了BeanDefinition.findMethod()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。BeanDefinition.findMethod()方法的具体详情如下:
包路径:io.micronaut.inject.BeanDefinition
类名称:BeanDefinition
方法名:findMethod

BeanDefinition.findMethod介绍

[英]Finds a single ExecutableMethod for the given name and argument types.
[中]为给定的名称和参数类型查找单个ExecutableMethod。

代码示例

代码示例来源:origin: io.micronaut/inject

@Override
public <R> Optional<ExecutableMethod<T, R>> findMethod(String name, Class[] argumentTypes) {
  return definition.findMethod(name, argumentTypes);
}

代码示例来源:origin: io.micronaut/micronaut-inject

@Override
public <R> Optional<ExecutableMethod<T, R>> findMethod(String name, Class[] argumentTypes) {
  return definition.findMethod(name, argumentTypes);
}

代码示例来源:origin: io.micronaut/micronaut-inject

@Override
public <T, R> Optional<ExecutableMethod<T, R>> findProxyTargetMethod(Class<T> beanType, String method, Class[] arguments) {
  BeanDefinition<T> definition = getProxyTargetBeanDefinition(beanType, null);
  return definition.findMethod(method, arguments);
}

代码示例来源:origin: io.micronaut/inject

@Override
default <R> Optional<ExecutableMethod<T, R>> findMethod(String name, Class... argumentTypes) {
  return getTarget().findMethod(name, argumentTypes);
}

代码示例来源:origin: io.micronaut/inject

@Override
public <T, R> Optional<ExecutableMethod<T, R>> findProxyTargetMethod(Class<T> beanType, String method, Class[] arguments) {
  BeanDefinition<T> definition = getProxyTargetBeanDefinition(beanType, null);
  return definition.findMethod(method, arguments);
}

代码示例来源:origin: io.micronaut/micronaut-inject

@Override
default <R> Optional<ExecutableMethod<T, R>> findMethod(String name, Class... argumentTypes) {
  return getTarget().findMethod(name, argumentTypes);
}

代码示例来源:origin: io.micronaut/micronaut-inject

@Override
public <T, R> Optional<ExecutableMethod<T, R>> findExecutableMethod(Class<T> beanType, String method, Class[] arguments) {
  if (beanType != null) {
    Collection<BeanDefinition<T>> definitions = getBeanDefinitions(beanType);
    if (!definitions.isEmpty()) {
      BeanDefinition<T> beanDefinition = definitions.iterator().next();
      Optional<ExecutableMethod<T, R>> foundMethod = beanDefinition.findMethod(method, arguments);
      if (foundMethod.isPresent()) {
        return foundMethod;
      } else {
        return beanDefinition.<R>findPossibleMethods(method)
            .findFirst();
      }
    }
  }
  return Optional.empty();
}

代码示例来源:origin: io.micronaut/inject

@Override
public <T, R> Optional<ExecutableMethod<T, R>> findExecutableMethod(Class<T> beanType, String method, Class[] arguments) {
  if (beanType != null) {
    Collection<BeanDefinition<T>> definitions = getBeanDefinitions(beanType);
    if (!definitions.isEmpty()) {
      BeanDefinition<T> beanDefinition = definitions.iterator().next();
      Optional<ExecutableMethod<T, R>> foundMethod = beanDefinition.findMethod(method, arguments);
      if (foundMethod.isPresent()) {
        return foundMethod;
      } else {
        return beanDefinition.<R>findPossibleMethods(method)
            .findFirst();
      }
    }
  }
  return Optional.empty();
}

代码示例来源:origin: io.micronaut/micronaut-inject

/**
 * Finds a single {@link ExecutableMethod} for the given name and argument types.
 *
 * @param name          The method name
 * @param argumentTypes The argument types
 * @param <R>           The return type
 * @return An optional {@link ExecutableMethod}
 * @throws IllegalStateException If the method cannot be found
 */
@SuppressWarnings("unchecked")
default <R> ExecutableMethod<T, R> getRequiredMethod(String name, Class... argumentTypes) {
  return (ExecutableMethod<T, R>) findMethod(name, argumentTypes)
    .orElseThrow(() -> ReflectionUtils.newNoSuchMethodError(getBeanType(), name, argumentTypes));
}

代码示例来源:origin: io.micronaut/inject

/**
 * Finds a single {@link ExecutableMethod} for the given name and argument types.
 *
 * @param name          The method name
 * @param argumentTypes The argument types
 * @param <R>           The return type
 * @return An optional {@link ExecutableMethod}
 * @throws IllegalStateException If the method cannot be found
 */
@SuppressWarnings("unchecked")
default <R> ExecutableMethod<T, R> getRequiredMethod(String name, Class... argumentTypes) {
  return (ExecutableMethod<T, R>) findMethod(name, argumentTypes)
    .orElseThrow(() -> ReflectionUtils.newNoSuchMethodError(getBeanType(), name, argumentTypes));
}

代码示例来源:origin: io.micronaut/micronaut-inject

@SuppressWarnings("unchecked")
@Override
public <T, R> Optional<MethodExecutionHandle<T, R>> findExecutionHandle(T bean, String method, Class[] arguments) {
  if (bean != null) {
    Optional<? extends BeanDefinition<?>> foundBean = findBeanDefinition(bean.getClass());
    if (foundBean.isPresent()) {
      BeanDefinition<?> beanDefinition = foundBean.get();
      Optional<? extends ExecutableMethod<?, Object>> foundMethod = beanDefinition.findMethod(method, arguments);
      if (foundMethod.isPresent()) {
        return foundMethod.map((ExecutableMethod executableMethod) -> new ObjectExecutionHandle<>(bean, executableMethod));
      } else {
        return beanDefinition.findPossibleMethods(method)
            .findFirst()
            .map((ExecutableMethod executableMethod) -> new ObjectExecutionHandle<>(bean, executableMethod));
      }
    }
  }
  return Optional.empty();
}

代码示例来源:origin: io.micronaut/inject

@SuppressWarnings("unchecked")
@Override
public <T, R> Optional<MethodExecutionHandle<T, R>> findExecutionHandle(T bean, String method, Class[] arguments) {
  if (bean != null) {
    Optional<? extends BeanDefinition<?>> foundBean = findBeanDefinition(bean.getClass());
    if (foundBean.isPresent()) {
      BeanDefinition<?> beanDefinition = foundBean.get();
      Optional<? extends ExecutableMethod<?, Object>> foundMethod = beanDefinition.findMethod(method, arguments);
      if (foundMethod.isPresent()) {
        return foundMethod.map((ExecutableMethod executableMethod) -> new ObjectExecutionHandle<>(bean, executableMethod));
      } else {
        return beanDefinition.findPossibleMethods(method)
            .findFirst()
            .map((ExecutableMethod executableMethod) -> new ObjectExecutionHandle<>(bean, executableMethod));
      }
    }
  }
  return Optional.empty();
}

代码示例来源:origin: io.micronaut/inject

if (foundBean.isPresent()) {
  BeanDefinition<?> beanDefinition = foundBean.get();
  Optional<? extends ExecutableMethod<?, Object>> foundMethod = beanDefinition.findMethod(method, arguments);
  if (foundMethod.isPresent()) {
    return foundMethod.map((ExecutableMethod executableMethod) ->

代码示例来源:origin: io.micronaut/micronaut-inject

if (foundBean.isPresent()) {
  BeanDefinition<?> beanDefinition = foundBean.get();
  Optional<? extends ExecutableMethod<?, Object>> foundMethod = beanDefinition.findMethod(method, arguments);
  if (foundMethod.isPresent()) {
    return foundMethod.map((ExecutableMethod executableMethod) ->

相关文章