Spec-Zone.ru › OpenJDK 24

Класс AbstractProcessor

java.lang.Object
javax.annotation.processing.AbstractProcessor
Все реализуемые интерфейсы:
Processor
public abstract class AbstractProcessor extends Object implements Processor
Абстрактный процессор аннотаций, предназначенный для удобного использования в качестве суперкласса для большинства конкретных процессоров аннотаций. Этот класс анализирует значения аннотаций, чтобы вычислить опции, интерфейсы аннотаций и версию исходного кода, поддерживаемые его подклассами.

Методы-геттеры могут выдавать предупреждения о важных условиях с использованием возможностей, доступных после того, как процессор был инициализирован.

Подклассы могут свободно переопределять реализацию и спецификацию любого из методов в этом классе, при условии соблюдения общих Processor контрактов для данного метода.

C:
1.6

Краткое описание полей

Модификатор и тип Поле Описание
protected ProcessingEnvironment processingEnv
Среда обработки, предоставляемая инструментом.

Краткое описание конструкторов

AbstractProcessor()
Модификатор Конструктор Описание
protected
Конструктор для вызова подклассами.

Краткое описание методов

Модификатор и тип Метод Описание
Iterable<? extends Completion> getCompletions(Element element, AnnotationMirror annotation, ExecutableElement member, String userText)
Возвращает пустой итерируемый набор завершений.
Set<String> getSupportedAnnotationTypes()
Возвращает имена интерфейсов аннотаций, поддерживаемых этим процессором.
Set<String> getSupportedOptions()
Возвращает опции, распознаваемые этим процессором.
SourceVersion getSupportedSourceVersion()
Возвращает последнюю поддерживаемую версию исходного кода этим процессором аннотаций.
void init(ProcessingEnvironment processingEnv)
Инициализирует процессор с помощью среды обработки.
protected boolean isInitialized()
Возвращает true, если этот объект был инициализирован, false в противном случае.
abstract boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv)
Обрабатывает набор интерфейсов аннотаций на корневых элементах, полученных из предыдущего раунда, и возвращает, используются ли эти интерфейсы аннотаций этим процессором.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

processingEnv

protected ProcessingEnvironment processingEnv
Обрабатывающая среда, предоставляемая рамками инструмента.

Подробное описание конструкторов

AbstractProcessor

protected AbstractProcessor()
Конструктор для вызова подклассами.

Подробное описание методов

getSupportedOptions

public Set<String> getSupportedOptions()
Возвращает параметры, распознаваемые этим процессором.
Указано в:
getSupportedOptions в интерфейсе Processor
Требования реализации:
Если класс процессора аннотирован с помощью SupportedOptions, возвращает неизменяемый набор со списком строк, соответствующим этой аннотации. Если класс не аннотирован таким образом, возвращается пустой набор.
Возвращает:
параметры, распознаваемые этим процессором, или пустой набор, если нет
См. также:
  • SupportedOptions

getSupportedAnnotationTypes

public Set<String> getSupportedAnnotationTypes()
Возвращает имена интерфейсов аннотаций, поддерживаемых этим процессором.
Указано в:
getSupportedAnnotationTypes в интерфейсе Processor
Требования реализации:
Если класс процессора аннотирован с помощью SupportedAnnotationTypes, возвращает неизменяемый набор со списком строк, соответствующим этой аннотации. Если класс не аннотирован таким образом, возвращается пустой набор. Если версия источника версии источника не поддерживает модули, то есть если она меньше или равна RELEASE_8, любые префиксы модулей префиксов модулей удаляются из имён.
Возвращает:
имена интерфейсов аннотаций, поддерживаемых этим процессором, или пустой набор, если нет
См. также:
  • SupportedAnnotationTypes

getSupportedSourceVersion

public SourceVersion getSupportedSourceVersion()
Возвращает последнюю поддерживаемую версию источника для этого процессора аннотаций.
Указано в:
getSupportedSourceVersion в интерфейсе Processor
Требования реализации:
Если класс процессора аннотирован с помощью SupportedSourceVersion, возвращает версию источника в аннотации. Если класс не аннотирован таким образом, возвращается SourceVersion.RELEASE_6.
Возвращает:
последнюю поддерживаемую версию источника для этого процессора аннотаций
См. также:
  • SupportedSourceVersion
  • ProcessingEnvironment.getSourceVersion()

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 должен корректно обрабатывать пустой набор аннотаций.

Указано в:
process в интерфейсе Processor
Параметры:
annotations - интерфейсы аннотаций, которые необходимо обработать
roundEnv - среда для получения информации о текущем и предыдущем раунде
Возвращает:
заявляет ли этот процессор набор интерфейсов аннотаций

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 в противном случае.
Возвращает:
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://download.java.net/java/early_access/jdk24/docs/api/java.compiler/javax/annotation/processing/AbstractProcessor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API