public void applyDefaultFlags() { PermissionManager gm = Residence.getPermissionManager(); PermissionGroup group = gm.getGroup(this.getOwner(), world); Set<Entry<String, Boolean>> dflags = group.getDefaultResidenceFlags(); Set<Entry<String, Boolean>> dcflags = group.getDefaultCreatorFlags(); Set<Entry<String, Map<String, Boolean>>> dgflags = group.getDefaultGroupFlags(); this.applyGlobalDefaults(); for (Entry<String, Boolean> next : dflags) { if (this.checkValidFlag(next.getKey(), true)) { if (next.getValue()) { this.setFlag(next.getKey(), FlagState.TRUE); } else { this.setFlag(next.getKey(), FlagState.FALSE); } } } for (Entry<String, Boolean> next : dcflags) { if (this.checkValidFlag(next.getKey(), false)) { if (next.getValue()) { this.setPlayerFlag(this.getOwner(), next.getKey(), FlagState.TRUE); } else { this.setPlayerFlag(this.getOwner(), next.getKey(), FlagState.FALSE); } } } for (Entry<String, Map<String, Boolean>> entry : dgflags) { Map<String, Boolean> value = entry.getValue(); for (Entry<String, Boolean> flag : value.entrySet()) { if (flag.getValue()) { this.setGroupFlag(entry.getKey(), flag.getKey(), FlagState.TRUE); } else { this.setGroupFlag(entry.getKey(), flag.getKey(), FlagState.FALSE); } } } }