13
0
geforkt von Mirrors/Paper

[Bleeding] Added option to remove entire plugins from the help index using the help.yml file. Addresses BUKKIT-1178

By: rmichela <deltahat@gmail.com>
Dieser Commit ist enthalten in:
Bukkit/Spigot 2012-03-14 23:38:59 -04:00
Ursprung f80d579c7b
Commit 0466d12a75
7 geänderte Dateien mit 35 neuen und 8 gelöschten Zeilen

Datei anzeigen

@ -0,0 +1,15 @@
package org.bukkit.command.defaults;
import org.bukkit.command.Command;
import java.util.List;
public abstract class BukkitCommand extends Command{
protected BukkitCommand(String name) {
super(name);
}
protected BukkitCommand(String name, String description, String usageMessage, List<String> aliases) {
super(name, description, usageMessage, aliases);
}
}

Datei anzeigen

@ -7,7 +7,7 @@ import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.Plugin;
public class PluginsCommand extends Command {
public class PluginsCommand extends BukkitCommand {
public PluginsCommand(String name) {
super(name);
this.description = "Gets a list of plugins running on the server";

Datei anzeigen

@ -6,7 +6,7 @@ import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
public class ReloadCommand extends Command {
public class ReloadCommand extends BukkitCommand {
public ReloadCommand(String name) {
super(name);
this.description = "Reloads the server configuration and plugins";

Datei anzeigen

@ -14,7 +14,7 @@ import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.RegisteredListener;
import org.bukkit.plugin.TimedRegisteredListener;
public class TimingsCommand extends Command {
public class TimingsCommand extends BukkitCommand {
public TimingsCommand(String name) {
super(name);
this.description = "Records timings for all plugin events";

Datei anzeigen

@ -10,7 +10,7 @@ import org.bukkit.command.CommandSender;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
public class VersionCommand extends Command {
public class VersionCommand extends BukkitCommand {
public VersionCommand(String name) {
super(name);

Datei anzeigen

@ -1,9 +1,11 @@
package org.bukkit.help;
import java.util.List;
/**
* The HelpMap tracks all help topics registered in a Bukkit server. When the server starts up or is reloaded,
* help is processed and topics are added in the following order:
*
* <p/>
* 1. General topics are loaded from the help.yml
* 2. Plugins load and optionally call {@code addTopic()}
* 3. Registered plugin commands are processed by {@link HelpTopicFactory} objects to create topics
@ -38,9 +40,19 @@ public interface HelpMap {
* derives from {@code commandClass} base class.
*
* @param commandClass The class for which the custom HelpTopicFactory applies. Must derive from
* either {@link org.bukkit.command.Command} or {@link org.bukkit.command.CommandExecutor}.
* @param factory The {@link HelpTopicFactory} implementation to associate with the {@code commandClass}.
* either {@link org.bukkit.command.Command} or {@link org.bukkit.command.CommandExecutor}.
* @param factory The {@link HelpTopicFactory} implementation to associate with the {@code commandClass}.
* @throws IllegalArgumentException Thrown if {@code commandClass} does not derive from a legal base class.
*/
public void registerHelpTopicFactory(Class<?> commandClass, HelpTopicFactory<?> factory);
/**
* Gets the list of plugins the server administrator has chosen to exclude from the help index. Plugin authors
* who choose to directly extend {@link org.bukkit.command.Command} instead of {@link org.bukkit.command.PluginCommand}
* will need to check this collection in their {@link HelpTopicFactory} implementations to ensure they meet the
* server administrator's expectations.
*
* @return A list of plugins that should be excluded from the help index.
*/
public List<String> getIgnoredPlugins();
}

Datei anzeigen

@ -28,7 +28,7 @@ public interface HelpTopicFactory<TCommand extends Command> {
* for it.
*
* @param command The custom command to build a help topic for.
* @return A new custom help topic.
* @return A new custom help topic or {@code null} to intentionally NOT create a topic.
*/
public HelpTopic createTopic(TCommand command);
}