1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.security.app.action;
35
36 import info.magnolia.cms.security.Group;
37 import info.magnolia.cms.security.Security;
38 import info.magnolia.cms.security.SecuritySupport;
39 import info.magnolia.cms.security.User;
40 import info.magnolia.commands.CommandsManager;
41 import info.magnolia.event.EventBus;
42 import info.magnolia.i18nsystem.SimpleTranslator;
43 import info.magnolia.objectfactory.Components;
44 import info.magnolia.ui.api.context.UiContext;
45 import info.magnolia.ui.api.event.AdmincentralEventBus;
46 import info.magnolia.ui.vaadin.integration.jcr.JcrItemAdapter;
47
48 import java.util.Collection;
49
50 import javax.inject.Inject;
51 import javax.inject.Named;
52
53
54
55
56 public class DeleteGroupAction extends AbstractDeleteGroupOrRoleAction<DeleteGroupActionDefinition> {
57
58 @Inject
59 public DeleteGroupAction(DeleteGroupActionDefinition definition, JcrItemAdapter item, CommandsManager commandsManager, @Named(AdmincentralEventBus.NAME) EventBus eventBus, UiContext uiContext, SimpleTranslator i18n, SecuritySupport securitySupport) {
60 super(definition, item, commandsManager, eventBus, uiContext, i18n, securitySupport);
61 }
62
63
64
65
66 @Deprecated
67 public DeleteGroupAction(DeleteGroupActionDefinition definition, JcrItemAdapter item, CommandsManager commandsManager, @Named(AdmincentralEventBus.NAME) EventBus eventBus, UiContext uiContext, SimpleTranslator i18n) {
68 super(definition, item, commandsManager, eventBus, uiContext, i18n, Security.getSecuritySupport());
69 }
70
71
72
73
74 @Deprecated
75 public DeleteGroupAction(DeleteGroupActionDefinition definition, JcrItemAdapter item, @Named(AdmincentralEventBus.NAME) EventBus eventBus, UiContext uiContext, SimpleTranslator i18n) {
76 this(definition, item, Components.getComponent(CommandsManager.class), eventBus, uiContext, i18n);
77 }
78
79 @Override
80 protected Collection<String> getGroupsOrRoles(User user) {
81 return user.getGroups();
82 }
83
84 @Override
85 protected Collection<String> getGroupsOrRoles(Group group) {
86 return group.getGroups();
87 }
88
89 @Override
90 protected Collection<String> getUsersWithGroupOrRoleToDelete(final String groupOrRole) {
91 return getSecuritySupport().getUserManager().getUsersWithGroup(groupOrRole);
92 }
93
94 @Override
95 protected Collection<String> getGroupsWithGroupOrRoleToDelete(final String groupOrRole) {
96 return getSecuritySupport().getGroupManager().getGroupsWithGroup(groupOrRole);
97 }
98
99 @Override
100 protected String getConfirmationDialogTitle() {
101 return getI18n().translate("security.groups.actions.confirmDeleteGroup.confirmationHeader");
102 }
103
104 @Override
105 protected String getConfirmationDialogBody() {
106 return getI18n().translate("security.groups.actions.confirmDeleteGroup.confirmationMessage");
107 }
108
109 @Override
110 protected String getConfirmationDialogProceedLabel() {
111 return getI18n().translate("security.groups.actions.confirmDeleteGroup.proceedLabel");
112 }
113
114 @Override
115 protected String getConfirmationDialogCancelLabel() {
116 return getI18n().translate("security.groups.actions.confirmDeleteGroup.cancelLabel");
117 }
118
119 @Override
120 protected String getBaseErrorMessage() {
121 return getI18n().translate("security.delete.group.isAssignedError");
122 }
123
124 @Override
125 protected String getVerificationErrorMessage() {
126 return getI18n().translate("security.delete.group.cannotVerifyError");
127 }
128 }