package tc.oc.commons.bukkit.users; import java.util.function.Predicate; import javax.inject.Inject; import tc.oc.commons.core.configuration.ConfigUtils; import tc.oc.commons.core.util.Predicates; import tc.oc.minecraft.api.configuration.Configuration; import tc.oc.minecraft.api.configuration.ConfigurationSection; public class JoinMessageConfiguration { private final ConfigurationSection config; @Inject JoinMessageConfiguration(Configuration config) { this.config = config.getSection("join-messages"); } /** * Show join/leave/change messages */ public boolean enabled() { return config.getBoolean("enabled", true); } /** * Show messages from other server networks */ public boolean crossNetwork() { return config.getBoolean("cross-network", true); } /** * Show messages only from servers in the given families */ public Predicate<String> families() { return ConfigUtils.getStringSetPredicate(config, "families", Predicates.alwaysTrue()); } /** * Show messages only from servers in the given realms */ public Predicate<String> realms() { return ConfigUtils.getStringSetPredicate(config, "realms", Predicates.alwaysTrue()); } }