ProjectAres/Util/bukkit/src/main/java/tc/oc/commons/bukkit/inject/BukkitPluginManifest.java

38 lines
1.2 KiB
Java

package tc.oc.commons.bukkit.inject;
import java.io.File;
import java.nio.file.Path;
import javax.inject.Named;
import com.google.inject.Provides;
import org.bukkit.plugin.Plugin;
import tc.oc.commons.bukkit.commands.BukkitCommandManifest;
import tc.oc.commons.bukkit.scheduler.BukkitSchedulerManifest;
import tc.oc.commons.core.inject.HybridManifest;
import tc.oc.commons.core.plugin.MinecraftPluginManifest;
import tc.oc.commons.core.plugin.PluginFacetManifest;
public class BukkitPluginManifest extends HybridManifest {
@Override
protected void configure() {
publicBinder().install(new BukkitServerManifest());
install(new MinecraftPluginManifest());
install(new PluginFacetManifest());
install(new BukkitSchedulerManifest());
install(new BukkitCommandManifest());
bind(tc.oc.minecraft.api.configuration.Configuration.class).to(org.bukkit.configuration.Configuration.class);
}
@Provides @Named("pluginData")
File pluginDataFile(Plugin plugin) {
return plugin.getDataFolder();
}
@Provides @Named("pluginData")
Path pluginDataPath(Plugin plugin) {
return pluginDataFile(plugin).toPath();
}
}