QueriesInvocationHandler.java 文件源码

java
阅读 36 收藏 0 点赞 0 评论 0

项目:queries 作者:
private SourceId getSourceId(AnnotatedElement element) {
    SourceId sourceId = null;
    Optional<Annotation> sourceAnnotation = Stream.of(element.getAnnotations())
            .filter(a -> a.annotationType().isAnnotationPresent(RegisteredSourceIdProducer.class)).findFirst();

    if (sourceAnnotation.isPresent()) {
        RegisteredSourceIdProducer sourceIdProviderAnnotation = sourceAnnotation.get().annotationType()
                .getAnnotation(RegisteredSourceIdProducer.class);
        try {
            SourceIdProducer sourceIdProducer = sourceIdProviderAnnotation.value().newInstance();
            sourceId = sourceIdProducer.get(element, sourceAnnotation.get());
        } catch (Exception e) {
            throw new QueryProxyException("Problem with sourceId aquiring: can't find suitable constructor " + e,
                    e);
        }
    }
    return sourceId;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号