private void scanSpecific(final Field field) {
// Vert.x Defined
final Set<Class<? extends Annotation>> defineds
= Plugins.INFIX_MAP.keySet();
final Annotation[] annotations = field.getDeclaredAnnotations();
// Annotation counter
final Set<String> set = new HashSet<>();
final Annotation hitted = Observable.fromArray(annotations)
.filter(annotation -> defineds.contains(annotation.annotationType()))
.map(annotation -> {
set.add(annotation.annotationType().getName());
return annotation;
}).blockingFirst();
// Duplicated annotated
Fn.flingUp(Values.ONE < set.size(), LOGGER,
MultiAnnotatedException.class, getClass(),
field.getName(), field.getDeclaringClass().getName(), set);
// Fill typed directly.
LOGGER.info(Info.SCANED_FIELD, this.reference,
field.getName(),
field.getDeclaringClass().getName(),
hitted.annotationType().getName());
this.fieldMap.put(field.getName(), field.getType());
}
AffluxThread.java 文件源码
java
阅读 29
收藏 0
点赞 0
评论 0
项目:vertx-zero
作者:
评论列表
文章目录