From 80b6cbfc9c861469146318d0b3dd5f8b8b525b8a Mon Sep 17 00:00:00 2001 From: xiejun <xiejun@vci-tech.com> Date: 星期五, 01 十一月 2024 15:11:19 +0800 Subject: [PATCH] Revert "集成获取mdm分发通用数据格式接口集成" --- Source/BladeX-Tool/blade-core-auto/src/main/java/org/springblade/core/auto/common/AbstractBladeProcessor.java | 81 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 81 insertions(+), 0 deletions(-) diff --git a/Source/BladeX-Tool/blade-core-auto/src/main/java/org/springblade/core/auto/common/AbstractBladeProcessor.java b/Source/BladeX-Tool/blade-core-auto/src/main/java/org/springblade/core/auto/common/AbstractBladeProcessor.java new file mode 100644 index 0000000..458790c --- /dev/null +++ b/Source/BladeX-Tool/blade-core-auto/src/main/java/org/springblade/core/auto/common/AbstractBladeProcessor.java @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ +package org.springblade.core.auto.common; + +import javax.annotation.processing.AbstractProcessor; +import javax.annotation.processing.RoundEnvironment; +import javax.lang.model.SourceVersion; +import javax.lang.model.element.AnnotationMirror; +import javax.lang.model.element.Element; +import javax.lang.model.element.TypeElement; +import javax.tools.Diagnostic.Kind; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.util.Set; + +/** + * 鎶借薄 澶勭悊鍣� + * + * @author L.cm + */ +public abstract class AbstractBladeProcessor extends AbstractProcessor { + + @Override + public SourceVersion getSupportedSourceVersion() { + return SourceVersion.latestSupported(); + } + + /** + * AutoService 娉ㄨВ澶勭悊鍣� + * @param annotations 娉ㄨВ getSupportedAnnotationTypes + * @param roundEnv 鎵弿鍒扮殑 娉ㄨВ鏂� + * @return 鏄惁瀹屾垚 + */ + @Override + public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) { + try { + return processImpl(annotations, roundEnv); + } catch (Exception e) { + fatalError(e); + return false; + } + } + + protected abstract boolean processImpl(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv); + + protected void log(String msg) { + if (processingEnv.getOptions().containsKey("debug")) { + processingEnv.getMessager().printMessage(Kind.NOTE, msg); + } + } + + protected void error(String msg, Element element, AnnotationMirror annotation) { + processingEnv.getMessager().printMessage(Kind.ERROR, msg, element, annotation); + } + + protected void fatalError(Exception e) { + // We don't allow exceptions of any kind to propagate to the compiler + StringWriter writer = new StringWriter(); + e.printStackTrace(new PrintWriter(writer)); + fatalError(writer.toString()); + } + + protected void fatalError(String msg) { + processingEnv.getMessager().printMessage(Kind.ERROR, "FATAL ERROR: " + msg); + } + +} -- Gitblit v1.9.3