/**
* Prepare Dao interfaces from {@link SqlSourceFile} annotation
*
* @param daoDescList dao description
* @param roundEnv annotation processor environment
*/
private void prepareDaoClassImplementMap(List<DaoDesc> daoDescList, RoundEnvironment roundEnv) {
Map<String, DaoDesc> daoDescMap = daoDescList.stream().collect(Collectors.toMap(DaoDesc::getSourceClassName, x -> x));
Elements elementUtils = processingEnv.getElementUtils();
Set<? extends Element> annotatedElements = roundEnv.getElementsAnnotatedWith(SqlSourceFile.class);
for (Element element : annotatedElements) {
SqlSourceFile ann = element.getAnnotation(SqlSourceFile.class);
String key = elementUtils.getPackageOf(element).getQualifiedName().toString() + "." + element.getSimpleName().toString();
DaoDesc daoDesc = daoDescMap.get(key);
if (daoDesc == null){
continue;
}
if (ann.implement()) {
daoDesc.setImplementClassName(element.asType().toString());
}
daoDesc.setDaoType(ann.value());
daoDesc.setTargetClassName(ann.targetClassName());
daoDesc.setBaseDaoClassName(ann.baseDaoClassName());
}
}
SqlFirstAnnotationProcessor.java 文件源码
java
阅读 36
收藏 0
点赞 0
评论 0
项目:sql-first-mapper
作者:
评论列表
文章目录