Аннотация для генерации методов сбора java - PullRequest
0 голосов
/ 03 мая 2019

Я знаком с Lombok, умею генерировать геттеры, сеттеры, конструкторы, строители, холку и т. Д. Однако, по моему мнению, чего-то не хватает. Предположим, у вас есть следующий класс

public class Example {

    List<Item> items;
}

Я ищу аннотацию, которая может генерировать следующие методы:

    public List<Item> getItems() {
        return Collections.unmodifiableList(items);
    }

    public boolean addItem(Item item) {
        return items.add(item);
    }

    public boolean addAllItems(List<Item> items) {
        return this.items.addAll(items);
    }

    public boolean removeItem(Item item) {
        return items.remove(item);
    }

    public boolean removeAllItems(List<Item> items) {
        return this.items.removeAll(items);
    }

    public void clearItems() {
        items.clear();
    }

Существует ли какая-либо платформа или API с аннотацией, которая может предоставить эти (или аналогичные) методы?

А если нет, то как это можно реализовать? (Для контекста: я сам до сих пор занимался только обработкой аннотаций во время выполнения, а не во время компиляции).

...