Create Paper stubs for completions/contexts

This is so others can extend these, and auto get anything added in future
This commit is contained in:
Aikar
2017-04-21 19:03:12 -04:00
parent 7a862f3f67
commit 2fb3a160de
4 changed files with 76 additions and 2 deletions
@@ -30,12 +30,13 @@ import org.bukkit.plugin.Plugin;
import java.util.Map;
@SuppressWarnings("WeakerAccess")
public class BukkitCommandManager implements CommandManager {
@SuppressWarnings("WeakerAccess")
protected final Plugin plugin;
private CommandContexts contexts;
private CommandCompletions completions;
protected CommandContexts contexts;
protected CommandCompletions completions;
public BukkitCommandManager(Plugin plugin) {
this.plugin = plugin;
@@ -0,0 +1,28 @@
/*
* Copyright (c) 2016-2017 Daniel Ennis (Aikar) - MIT License
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package co.aikar.commands;
@SuppressWarnings("WeakerAccess")
public class PaperCommandCompletions extends BukkitCommandCompletions {
}
@@ -0,0 +1,28 @@
/*
* Copyright (c) 2016-2017 Daniel Ennis (Aikar) - MIT License
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package co.aikar.commands;
@SuppressWarnings("WeakerAccess")
public class PaperCommandContexts extends BukkitCommandContexts {
}
@@ -25,10 +25,27 @@ package co.aikar.commands;
import org.bukkit.plugin.Plugin;
@SuppressWarnings("WeakerAccess")
public class PaperCommandManager extends BukkitCommandManager {
// If we get anything Paper specific
public PaperCommandManager(Plugin plugin) {
super(plugin);
}
@Override
public CommandContexts getCommandContexts() {
if (this.contexts == null) {
this.contexts = new PaperCommandContexts();
}
return this.contexts;
}
@Override
public CommandCompletions getCommandCompletions() {
if (this.completions == null) {
this.completions = new PaperCommandCompletions();
}
return this.completions;
}
}