@Override public boolean isModuleEnabled(@Nonnull PulseMeta meta) { ConfigEntry entry = modules.get(meta.getId()); if (entry == null) { modules.put(meta.getId(), new ConfigEntry(meta.isDefaultEnabled(), meta.getDescription())); return meta.isEnabled(); } else { return entry.getEnabled(); } }
PulseMeta meta = new PulseMeta(id, description, forced, enabled, defaultEnabled); meta.setMissingDeps(missingDeps || !hasRequiredPulses(meta, pulseDeps)); meta.setEnabled(getEnabledFromConfig(meta)); if (meta.isEnabled()) { pulses.put(pulse, meta); flightpath.register(pulse);
/** * Check if a given Pulse ID is loaded in this manager. * * @param pulseId The ID to check. * @return Whether the ID was present. */ public boolean isPulseLoaded(String pulseId) { for(Map.Entry<Object, PulseMeta> entry : pulses.entrySet()) { if (entry.getValue().getId().equals(pulseId)) { return true; } } return false; }
private boolean getEnabledFromConfig(PulseMeta meta) { if (meta.isForced() || !useConfig) return true; // Forced or no config set. return conf.isModuleEnabled(meta); }
private boolean hasRequiredPulses(PulseMeta meta, String deps) { if (!deps.equals("")) { String[] parsedDeps = deps.split(";"); for (String s : parsedDeps) { if (!isPulseLoaded(s)) { log.info("Skipping Pulse " + meta.getId() + "; missing pulse: " + s); return false; } } } return true; }
@Override public boolean isModuleEnabled(@Nonnull PulseMeta meta) { Property prop = config.get(this.description, meta.getId(), meta.isDefaultEnabled(), meta.getDescription()); prop.setRequiresMcRestart(true); return prop.getBoolean(meta.isEnabled()); }
@Override public String call() throws Exception { String out = "\n"; for (PulseMeta meta : manager.getAllPulseMetadata()) { String state = getStateFromMeta(meta); out += "\t\t- " + meta.getId() + " (" + state + ")\n"; // Yes, yes, manual indenting, I know... } return out; }