Класс AbstractProcessor
- Все реализуемые интерфейсы:
Processor
public abstract class AbstractProcessor extends Object implements Processor
Методы получения могут выдавать предупреждения о примечательных условиях, используя средства, доступные после инициализации процессора.
Подклассы могут переопределять реализацию и спецификацию любого из методов этого класса при условии соблюдения общего контракта Processor для этого метода.
- Начиная с версии:
- 1.6
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected ProcessingEnvironment |
processingEnv |
Среда обработки, предоставляемая инфраструктурой инструмента. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор, предназначенный для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Iterable |
getCompletions |
Возвращает пустой итерируемый объект завершений. |
Set |
getSupportedAnnotationTypes() |
Возвращает имена интерфейсов аннотаций, поддерживаемых этим процессором. |
Set |
getSupportedOptions() |
Возвращает параметры, распознаваемые этим процессором. |
SourceVersion |
getSupportedSourceVersion() |
Возвращает последнюю версию исходного кода, поддерживаемую этим процессором аннотаций. |
void |
init |
Инициализирует процессор средой обработки. |
protected boolean |
isInitialized() |
|
abstract boolean |
process |
Обрабатывает набор интерфейсов аннотаций для корневых элементов, полученных в предыдущем раунде, и возвращает, обрабатываются ли эти интерфейсы аннотаций данным процессором. |
Подробное описание полей
processingEnv
protected ProcessingEnvironment processingEnv
Подробное описание конструкторов
AbstractProcessor
protected AbstractProcessor()
Подробное описание методов
getSupportedOptions
public Set<String> getSupportedOptions()
- Определено в:
-
getSupportedOptionsв интерфейсеProcessor - Требования к реализации:
- Если класс процессора аннотирован с помощью
SupportedOptions, возвращает неизменяемый набор, содержащий тот же набор строк, что и аннотация. Если класс не аннотирован таким образом, возвращается пустой набор. - Возвращает:
- параметры, распознаваемые этим процессором, или пустой набор, если таких параметров нет
- См. также:
getSupportedAnnotationTypes
public Set<String> getSupportedAnnotationTypes()
- Определено в:
-
getSupportedAnnotationTypesв интерфейсеProcessor - Требования к реализации:
- Если класс процессора аннотирован с помощью
SupportedAnnotationTypes, возвращает неизменяемый набор, содержащий тот же набор строк, что и аннотация. Если класс не аннотирован таким образом, возвращается пустой набор. Если версия исходного кода не поддерживает модули, то есть меньше или равнаRELEASE_8, из имен удаляются все начальные префиксы модулей. - Возвращает:
- имена интерфейсов аннотаций, поддерживаемых этим процессором, или пустой набор, если таких интерфейсов нет
- См. также:
getSupportedSourceVersion
public SourceVersion getSupportedSourceVersion()
- Определено в:
-
getSupportedSourceVersionв интерфейсеProcessor - Требования к реализации:
- Если класс процессора аннотирован с помощью
SupportedSourceVersion, возвращает версию исходного кода, указанную в аннотации. Если класс не аннотирован таким образом, возвращаетсяSourceVersion.RELEASE_6. - Возвращает:
- последнюю версию исходного кода, поддерживаемую этим процессором аннотаций
- См. также:
init
public void init(ProcessingEnvironment processingEnv)
- Определено в:
-
initв интерфейсеProcessor - Требования к реализации:
- Инициализирует процессор средой обработки, присваивая полю
processingEnvзначение аргументаprocessingEnv. Если этот метод вызывается для одного и того же объекта более одного раза, будет выброшено исключениеIllegalStateException. - Параметры:
-
processingEnv— среда для доступа к средствам, предоставляемым инфраструктурой инструмента процессору - Выбрасывает:
-
IllegalStateException— если этот метод вызван более одного раза.
process
public abstract boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv)
true, интерфейсы аннотаций считаются обработанными, и последующим процессорам не будет предложено их обрабатывать; если возвращается false, интерфейсы аннотаций считаются необработанными, и последующим процессорам может быть предложено их обработать. Процессор может всегда возвращать одно и то же логическое значение или менять результат в соответствии с выбранными им критериями. Входной набор будет пустым, если процессор поддерживает
"*", а корневые элементы не содержат аннотаций.
Processor должен корректно обрабатывать пустой набор аннотаций.
getCompletions
public Iterable<? extends Completion> getCompletions(Element element, AnnotationMirror annotation, ExecutableElement member, String userText)
- Определено в:
-
getCompletionsв интерфейсеProcessor - Параметры:
-
element— элемент, к которому применяется аннотация -
annotation— аннотация (возможно, неполная), применяемая к элементу -
member— член аннотации, для которого нужно вернуть возможные варианты завершения -
userText— текст исходного кода, который требуется дополнить - Возвращает:
- пустой итерируемый объект завершений
isInitialized
protected boolean isInitialized()
- Возвращает:
-
true, если этот объект был инициализирован, иfalseв противном случае
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.compiler/javax/annotation/processing/AbstractProcessor.html