Skip to content
This repository has been archived by the owner on Feb 3, 2024. It is now read-only.

Commit

Permalink
Add command to set a subject's parents, replacing any existing ones
Browse files Browse the repository at this point in the history
  • Loading branch information
zml2008 committed Jul 15, 2016
1 parent 390aeb5 commit ace577e
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 10 deletions.
Expand Up @@ -35,7 +35,7 @@ private ParentCommands() {}
public static CommandSpec getParentCommand(PermissionsEx pex) {
return CommandSpec.builder()
.setAliases("parents", "parent", "par", "p")
.setChildren(getAddParentCommand(pex), getRemoveParentCommand(pex))
.setChildren(getAddParentCommand(pex), getRemoveParentCommand(pex), getSetParentsCommand(pex))
.build();
}

Expand Down Expand Up @@ -74,4 +74,23 @@ public <TextType> void execute(Commander<TextType> src, CommandContext args) thr
})
.build();
}

private static CommandSpec getSetParentsCommand(final PermissionsEx pex) {
return CommandSpec.builder()
.setAliases("set", "replace", "=")
.setArguments(subject(t("parent"), pex, PermissionsEx.SUBJECTS_GROUP))
.setExecutor(new PermissionsExExecutor(pex) {
@Override
public <TextType> void execute(Commander<TextType> src, CommandContext args) throws CommandException {
SubjectDataReference ref = getDataRef(src, args, "permissionsex.parent.set");
Set<Map.Entry<String, String>> contexts = ImmutableSet.copyOf(args.<Map.Entry<String, String>>getAll("context"));
Map.Entry<String, String> parent = args.getOne("parent");
messageSubjectOnFuture(
ref.update(old -> old.clearParents(contexts).addParent(contexts, parent.getKey(), parent.getValue())), src,
t("Set parent for %s to %s in %s context", src.fmt().hl(src.fmt().subject(ref)), src.fmt().subject(parent), formatContexts(src, contexts)));
}
})
.build();

}
}
11 changes: 8 additions & 3 deletions permissionsex-core/src/main/po/de.po
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-11 13:48-0700\n"
"POT-Creation-Date: 2016-07-15 07:52-0700\n"
"PO-Revision-Date: 2015-04-02 17:09-0700\n"
"Last-Translator: <zml@aoeu.xyz>\n"
"Language-Team: German\n"
Expand Down Expand Up @@ -361,6 +361,10 @@ msgstr ""
msgid "Set option %s for %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:90
msgid "Set parent for %s to %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:63
msgid "Set permission %s for %s in %s context"
msgstr ""
Expand Down Expand Up @@ -509,8 +513,8 @@ msgstr ""
msgid "filter"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
msgid "key"
msgstr ""

Expand All @@ -526,6 +530,7 @@ msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:45
#: ninja/leaping/permissionsex/command/ParentCommands.java:63
#: ninja/leaping/permissionsex/command/ParentCommands.java:81
msgid "parent"
msgstr ""

Expand Down Expand Up @@ -553,9 +558,9 @@ msgstr ""
msgid "suffix"
msgstr ""

#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:72
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
msgid "value"
msgstr ""

Expand Down
11 changes: 8 additions & 3 deletions permissionsex-core/src/main/po/keys.pot
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-24 19:33-0700\n"
"POT-Creation-Date: 2016-07-15 07:52-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
Expand Down Expand Up @@ -348,6 +348,10 @@ msgstr ""
msgid "Set option %s for %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:90
msgid "Set parent for %s to %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:63
msgid "Set permission %s for %s in %s context"
msgstr ""
Expand Down Expand Up @@ -494,8 +498,8 @@ msgstr ""
msgid "filter"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
msgid "key"
msgstr ""

Expand All @@ -511,6 +515,7 @@ msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:45
#: ninja/leaping/permissionsex/command/ParentCommands.java:63
#: ninja/leaping/permissionsex/command/ParentCommands.java:81
msgid "parent"
msgstr ""

Expand Down Expand Up @@ -538,9 +543,9 @@ msgstr ""
msgid "suffix"
msgstr ""

#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:72
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
msgid "value"
msgstr ""

Expand Down
11 changes: 8 additions & 3 deletions permissionsex-core/src/main/po/zh_HK.po
Expand Up @@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PermissionsEx git\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-11 13:48-0700\n"
"POT-Creation-Date: 2016-07-15 07:52-0700\n"
"PO-Revision-Date: 2015-04-17 16:19-0700\n"
"Last-Translator: <zml@aoeu.xyz>\n"
"Language-Team: Chinese (Hong Kong)\n"
Expand Down Expand Up @@ -347,6 +347,10 @@ msgstr ""
msgid "Set option %s for %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:90
msgid "Set parent for %s to %s in %s context"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:63
msgid "Set permission %s for %s in %s context"
msgstr ""
Expand Down Expand Up @@ -493,8 +497,8 @@ msgstr ""
msgid "filter"
msgstr ""

#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
msgid "key"
msgstr ""

Expand All @@ -510,6 +514,7 @@ msgstr ""

#: ninja/leaping/permissionsex/command/ParentCommands.java:45
#: ninja/leaping/permissionsex/command/ParentCommands.java:63
#: ninja/leaping/permissionsex/command/ParentCommands.java:81
msgid "parent"
msgstr ""

Expand Down Expand Up @@ -537,9 +542,9 @@ msgstr ""
msgid "suffix"
msgstr ""

#: ninja/leaping/permissionsex/command/OptionCommands.java:39
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:47
#: ninja/leaping/permissionsex/command/PermissionsCommands.java:72
#: ninja/leaping/permissionsex/command/OptionCommands.java:39
msgid "value"
msgstr ""

Expand Down

0 comments on commit ace577e

Please sign in to comment.