@Override protected String buildHeader() { String header = options().header(); if (options().copyHeader()) { Configuration def = getDefaults(); if ((def != null) && (def instanceof FileConfiguration)) { FileConfiguration filedefaults = (FileConfiguration) def; String defaultsHeader = filedefaults.buildHeader(); if ((defaultsHeader != null) && (defaultsHeader.length() > 0)) { return defaultsHeader; } } } if (header == null) { return ""; } StringBuilder builder = new StringBuilder(); String[] lines = header.split("\r?\n", -1); boolean startedHeader = false; for (int i = lines.length - 1; i >= 0; i--) { builder.insert(0, "\n"); if ((startedHeader) || (lines[i].length() != 0)) { builder.insert(0, lines[i]); builder.insert(0, COMMENT_PREFIX); startedHeader = true; } } return builder.toString(); }
/** * Initialize a new ServerConfig and associated settings. * * @param directory The config directory, or null for default. * @param configFile The config file, or null for default. * @param parameters The command-line parameters used as overrides. */ public ServerConfig(File directory, File configFile, Map<Key, Object> parameters) { checkNotNull(directory); checkNotNull(configFile); checkNotNull(parameters); this.directory = directory; this.configFile = configFile; this.parameters = parameters; config.options().indent(4).copyHeader(true).header( "glowstone.yml is the main configuration file for a Glowstone server\n" + "It contains everything from server.properties and bukkit.yml in a\n" + "normal CraftBukkit installation.\n\n" + "Configuration entries are documented on the wiki: " + "https://github.com/GlowstoneMC/Glowstone/wiki/Configuration-Guide\n" + "For help, join us on Discord: https://discord.gg/TFJqhsC"); }
@Override public void loadFromString(String contents) throws InvalidConfigurationException { Validate.notNull(contents, "Contents cannot be null"); Map<?, ?> input; try { input = (Map<?, ?>) yaml.load(contents); } catch (YAMLException e) { throw new InvalidConfigurationException(e); } catch (ClassCastException e) { throw new InvalidConfigurationException("Top level is not a Map."); } String header = parseHeader(contents); if (header.length() > 0) { options().header(header); } if (input != null) { convertMapsToSections(input, this); } }
@Override public String saveToString() { yamlOptions.setIndent(options().indent()); yamlOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); yamlOptions.setAllowUnicode(SYSTEM_UTF); yamlRepresenter.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); String header = buildHeader(); String dump = yaml.dump(getValues(false)); if (dump.equals(BLANK_CONFIG)) { dump = ""; } return header + dump; }
public void save(String header) throws IOException { config.options().header(header).indent(2); try { config.save(configFile.toFile()); } catch (IOException ex) { throw new IOException("Failed to save to " + configFile.toAbsolutePath(), ex); } }
/** * Sets the indentation of sub-nodes * * @param indent size */ public void setIndent(int indent) { this.getSource().options().indent(indent); }
/** * Gets the indentation of sub-nodes * * @return indent size */ public int getIndent() { return this.getSource().options().indent(); }
void save(SignStore signStore) { YamlConfiguration yaml = new YamlConfiguration(); List<ArenaSign> values = new ArrayList<>(signStore.findAll()); yaml.set("signs", values); try { File data = new File(plugin.getDataFolder(), "data"); yaml.options().header("MobArena Sign Store\n\nPlease DON'T edit this file by hand!\n"); yaml.save(new File(data, SignStore.FILENAME)); } catch (IOException e) { throw new IllegalStateException(e); } }
@Override public void save() throws IOException { Path kitFile = plugin.getDataFolder().toPath().resolve("kits.yml"); if (!Files.exists(kitFile)) { plugin.saveResource("kits.yml", true); } YamlConfiguration config = YamlConfiguration.loadConfiguration(kitFile.toFile()); for (SkyKit kit : kits.values()) { SkyKitEnconder.encodeKit(kit, config); } for (SkyKit kit : disabledKits) { SkyKitEnconder.encodeKit(kit, config); } config.options().header(String.format(KIT_HEADER)).indent(2); config.save(kitFile.toFile()); }
public void saveArena(Path path, SkyArenaConfig arenaConfig, String header) { YamlConfiguration newConfig = new YamlConfiguration(); newConfig.options().header(header).indent(2); arenaConfig.serialize(newConfig); try { newConfig.save(path.toFile()); } catch (IOException ex) { plugin.getLogger().log(Level.SEVERE, "Failed to save arena config to file " + path.toAbsolutePath(), ex); } }
@Override public void loadFromString(String contents) throws InvalidConfigurationException { Validate.notNull(contents, "Contents cannot be null"); Map<?, ?> input; try { input = (Map<?, ?>) yaml.load(contents); } catch (YAMLException e) { throw new InvalidConfigurationException(e); } catch (ClassCastException e) { throw new InvalidConfigurationException("Top level is not a Map."); } String header = parseHeader(contents); if (header.length() > 0) { options().header(header); } if (input != null) { convertMapsToSections(input, this); } }
@Override public String saveToString() { yamlOptions.setIndent(options().indent()); yamlOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); yamlOptions.setAllowUnicode(SYSTEM_UTF); yamlRepresenter.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK); String header = buildHeader(); String dump = yaml.dump(getValues(false)); if (dump.equals(BLANK_CONFIG)) { dump = ""; } return header + dump; }
public DiscountModule() { config = YamlConfiguration.loadConfiguration(ChestShop.loadFile("discounts.yml")); config.options().header("This file is for discount management. You are able to do that:\n" + "group1: 75\n" + "That means that the person with ChestShop.discount.group1 permission will pay only 75% of the price. \n" + "For example, if the price is 100 dollars, the player pays only 75 dollars.\n" + "(Only works in buy-only Admin Shops!)"); try { config.save(ChestShop.loadFile("discounts.yml")); } catch (IOException e) { e.printStackTrace(); } groupList = config.getKeys(false); }
public McStatsMetrics(final Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public MetricsLite(Plugin plugin) throws IOException{ if(plugin == null){ throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if(configuration.get("guid", null) == null){ configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public McStatsMetrics(final Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public MetricsLite(Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public Metrics(final Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public MCStats(Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }
public Metrics(final Plugin plugin) throws IOException { if (plugin == null) { throw new IllegalArgumentException("Plugin cannot be null"); } this.plugin = plugin; // load the config configurationFile = getConfigFile(); configuration = YamlConfiguration.loadConfiguration(configurationFile); // add some defaults configuration.addDefault("opt-out", false); configuration.addDefault("guid", UUID.randomUUID().toString()); configuration.addDefault("debug", false); // Do we need to create the file? if (configuration.get("guid", null) == null) { configuration.options().header("http://mcstats.org").copyDefaults(true); configuration.save(configurationFile); } // Load the guid then guid = configuration.getString("guid"); debug = configuration.getBoolean("debug", false); }