PlaceholderAPI/src/main/java/me/clip/placeholderapi/configuration/PlaceholderAPIConfig.java

108 lines
2.5 KiB
Java
Raw Normal View History

2018-03-21 14:15:51 +01:00
/*
* This file is part of PlaceholderAPI
2018-03-21 14:15:51 +01:00
*
* PlaceholderAPI
* Copyright (c) 2015 - 2020 PlaceholderAPI Team
2018-03-21 14:15:51 +01:00
*
* PlaceholderAPI free software: you can redistribute it and/or modify
2018-03-21 14:15:51 +01:00
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* PlaceholderAPI is distributed in the hope that it will be useful,
2018-03-21 14:15:51 +01:00
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
2018-03-21 00:04:14 +01:00
package me.clip.placeholderapi.configuration;
import me.clip.placeholderapi.PlaceholderAPIPlugin;
import org.jetbrains.annotations.NotNull;
2018-03-21 00:04:14 +01:00
import java.util.Optional;
public final class PlaceholderAPIConfig
{
2018-03-21 00:04:14 +01:00
@NotNull
private final PlaceholderAPIPlugin plugin;
2018-03-21 00:04:14 +01:00
public PlaceholderAPIConfig(@NotNull final PlaceholderAPIPlugin plugin)
{
this.plugin = plugin;
}
public boolean checkUpdates()
{
return plugin.getConfig().getBoolean("check_updates");
}
public boolean cloudAllowUnverifiedExpansions()
{
return plugin.getConfig().getBoolean("cloud_allow_unverified_expansions");
}
public boolean isCloudEnabled()
{
return plugin.getConfig().getBoolean("cloud_enabled");
}
public void setCloudEnabled(boolean state)
{
plugin.getConfig().set("cloud_enabled", state);
plugin.saveConfig();
}
public boolean isDebugMode()
{
return plugin.getConfig().getBoolean("debug", false);
}
public Optional<ExpansionSort> getExpansionSort()
{
final String option = plugin.getConfig().getString("cloud_sorting", ExpansionSort.LATEST.name());
try
{
//noinspection ConstantConditions (bad spigot annotation)
return Optional.of(ExpansionSort.valueOf(option.toUpperCase()));
}
catch (final IllegalArgumentException ignored)
{
return Optional.empty();
}
}
@NotNull
public String dateFormat()
{
//noinspection ConstantConditions (bad spigot annotation)
return plugin.getConfig().getString("date_format", "MM/dd/yy HH:mm:ss");
}
@NotNull
public String booleanTrue()
{
//noinspection ConstantConditions (bad spigot annotation)
return plugin.getConfig().getString("boolean.true", "true");
}
@NotNull
public String booleanFalse()
{
//noinspection ConstantConditions (bad spigot annotation)
return plugin.getConfig().getString("boolean.false", "false");
}
2018-03-21 00:04:14 +01:00
}