summaryrefslogtreecommitdiff
path: root/dicore3/command/src/main/java/io/dico/dicore/command/chat/help/HelpTopicModifier.java
blob: 7aeb304fb650654ee452a55ccc46b33b6de4a8ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package io.dico.dicore.command.chat.help;

import io.dico.dicore.command.ExecutionContext;
import io.dico.dicore.command.ICommandAddress;
import org.bukkit.permissions.Permissible;

import java.util.List;
import java.util.Objects;

public abstract class HelpTopicModifier implements IHelpTopic {
    private final IHelpTopic delegate;

    public HelpTopicModifier(IHelpTopic delegate) {
        this.delegate = Objects.requireNonNull(delegate);
    }

    @Override
    public List<IHelpComponent> getComponents(ICommandAddress target, Permissible viewer, ExecutionContext context, boolean isForPage) {
        return modify(delegate.getComponents(target, viewer, context, true), target, viewer, context);
    }

    protected abstract List<IHelpComponent> modify(List<IHelpComponent> components, ICommandAddress target, Permissible viewer, ExecutionContext context);

}