You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2022/05/18 14:20:31 UTC
[syncope] 02/02: Further Improving Realms page extendability
This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch 2_1_X
in repository https://gitbox.apache.org/repos/asf/syncope.git
commit 19d884e9bf35f79e9abd4aae1bb09eb94aeedee2
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Wed May 18 16:20:17 2022 +0200
Further Improving Realms page extendability
---
.../client/console/SyncopeConsoleSession.java | 10 +-
.../syncope/client/console/pages/Realms.java | 24 ++-
.../syncope/client/console/panels/AnyPanel.java | 2 +-
.../syncope/client/console/panels/Realm.java | 3 +-
.../client/console/panels/RealmChoicePanel.java | 168 +++++++++++----------
.../client/console/rest/RealmRestClient.java | 4 +-
.../wicket/markup/html/form/ActionsPanel.java | 15 ++
.../client/console/widgets/NumberWidget.java | 10 +-
.../client/console/panels/RealmChoicePanel.html | 2 +-
.../apache/syncope/fit/console/RealmsITCase.java | 8 +-
10 files changed, 138 insertions(+), 108 deletions(-)
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleSession.java b/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleSession.java
index c759953f33..d81e6fc4ac 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleSession.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/SyncopeConsoleSession.java
@@ -300,9 +300,13 @@ public class SyncopeConsoleSession extends AuthenticatedWebSession {
: roots.stream().sorted().collect(Collectors.toList());
}
- public Optional<String> getRootRealm() {
- List<String> roots = getSearchableRealms();
- return roots.isEmpty() ? Optional.empty() : roots.stream().findFirst();
+ public Optional<String> getRootRealm(final String initial) {
+ List<String> searchable = getSearchableRealms();
+ return searchable.isEmpty()
+ ? Optional.empty()
+ : initial != null && searchable.stream().anyMatch(initial::startsWith)
+ ? Optional.of(initial)
+ : searchable.stream().findFirst();
}
public boolean owns(final String entitlements, final String... realms) {
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/pages/Realms.java b/client/console/src/main/java/org/apache/syncope/client/console/pages/Realms.java
index ff3caf32f8..c8e65280ad 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/pages/Realms.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/pages/Realms.java
@@ -39,6 +39,7 @@ import org.apache.syncope.common.lib.to.AnyTypeTO;
import org.apache.syncope.common.lib.to.ProvisioningResult;
import org.apache.syncope.common.lib.to.RealmTO;
import org.apache.syncope.common.lib.to.TemplatableTO;
+import org.apache.wicket.PageReference;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.event.Broadcast;
import org.apache.wicket.event.IEvent;
@@ -53,6 +54,10 @@ public class Realms extends BasePage {
private static final long serialVersionUID = -1100228004207271270L;
+ public static final String SELECTED_INDEX = "selectedIndex";
+
+ public static final String INITIAL_REALM = "initialRealm";
+
protected final RealmRestClient realmRestClient = new RealmRestClient();
protected final AnyTypeRestClient anyTypeRestClient = new AnyTypeRestClient();
@@ -88,8 +93,7 @@ public class Realms extends BasePage {
content = new WebMarkupContainer("content");
- realmChoicePanel = new RealmChoicePanel("realmChoicePanel", getPageReference());
- realmChoicePanel.setOutputMarkupId(true);
+ realmChoicePanel = buildRealmChoicePanel(parameters.get(INITIAL_REALM).toOptionalString(), getPageReference());
content.add(realmChoicePanel);
content.add(new Label("body", "Root realm"));
@@ -126,7 +130,17 @@ public class Realms extends BasePage {
templateModal.show(false);
});
- updateRealmContent(realmChoicePanel.getCurrentRealm(), parameters.get("selectedIndex").toInt(0));
+ updateRealmContent(realmChoicePanel.getCurrentRealm(), parameters.get(SELECTED_INDEX).toInt(0));
+ }
+
+ protected RealmChoicePanel buildRealmChoicePanel(final String initialRealm, final PageReference pageRef) {
+ RealmChoicePanel panel = new RealmChoicePanel("realmChoicePanel", initialRealm, pageRef);
+ panel.setOutputMarkupId(true);
+ return panel;
+ }
+
+ public RealmChoicePanel getRealmChoicePanel() {
+ return realmChoicePanel;
}
@Override
@@ -169,10 +183,6 @@ public class Realms extends BasePage {
return content;
}
- public RealmChoicePanel getRealmChoicePanel() {
- return realmChoicePanel;
- }
-
protected class Content extends Realm {
private static final long serialVersionUID = 8221398624379357183L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
index 6c9692efef..3d67cc5ddf 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
@@ -83,7 +83,7 @@ public class AnyPanel extends Panel implements ModalPanel {
PageReference pageRef);
}
- protected static DirectoryPanelSupplier DEFAULT_DIRECTORYPANEL_SUPPLIER =
+ protected static final DirectoryPanelSupplier DEFAULT_DIRECTORYPANEL_SUPPLIER =
(id, anyTypeTO, realmTO, anyLayout, pageRef) -> {
AnyTypeClassRestClient anyTypeClassRestClient = new AnyTypeClassRestClient();
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/Realm.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/Realm.java
index 587d94caf2..e154e27a01 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/Realm.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/Realm.java
@@ -53,7 +53,6 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.Model;
import org.apache.wicket.model.ResourceModel;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -259,7 +258,7 @@ public abstract class Realm extends WizardMgtPanel<RealmTO> {
private static final long serialVersionUID = -5861786415855103549L;
protected RealmDetailsTabPanel() {
- super(new Model<>("DETAILS"),
+ super(new ResourceModel("realm.details", "DETAILS"),
StandardEntitlement.REALM_CREATE,
StandardEntitlement.REALM_UPDATE,
StandardEntitlement.REALM_DELETE);
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/RealmChoicePanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/RealmChoicePanel.java
index 235f233155..d3fa22ab26 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/RealmChoicePanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/RealmChoicePanel.java
@@ -60,6 +60,7 @@ import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.AbstractLink;
import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.model.IModel;
import org.apache.wicket.model.LoadableDetachableModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.model.ResourceModel;
@@ -69,36 +70,38 @@ public class RealmChoicePanel extends Panel {
private static final long serialVersionUID = -1100228004207271270L;
- private static final String SEARCH_REALMS = "searchRealms";
+ protected static final String SEARCH_REALMS = "searchRealms";
- private final RealmRestClient realmRestClient = new RealmRestClient();
+ protected final RealmRestClient realmRestClient = new RealmRestClient();
- private final PageReference pageRef;
+ protected final PageReference pageRef;
- private final LoadableDetachableModel<List<Pair<String, RealmTO>>> realmTree;
+ protected final LoadableDetachableModel<List<Pair<String, RealmTO>>> realmTree;
- private final LoadableDetachableModel<List<DynRealmTO>> dynRealmTree;
+ protected final LoadableDetachableModel<List<DynRealmTO>> dynRealmTree;
- private final WebMarkupContainerNoVeil container;
+ protected final WebMarkupContainerNoVeil container;
- private Model<RealmTO> model;
+ protected Model<RealmTO> model;
- private final Collection<String> availableRealms;
+ protected final Map<String, Pair<RealmTO, List<RealmTO>>> tree;
- private final Map<String, Pair<RealmTO, List<RealmTO>>> tree;
+ protected final List<AbstractLink> links = new ArrayList<>();
- private final List<AbstractLink> links = new ArrayList<>();
+ protected String searchQuery;
- private String searchQuery;
+ protected List<RealmTO> realmsChoices;
- private List<RealmTO> realmsChoices;
+ protected final boolean isSearchEnabled;
- private final boolean isSearchEnabled;
+ protected final Label realmDisplayKey;
- public RealmChoicePanel(final String id, final PageReference pageRef) {
+ protected final Label realmDisplayValue;
+
+ public RealmChoicePanel(final String id, final String initialRealm, final PageReference pageRef) {
super(id);
this.pageRef = pageRef;
- availableRealms = SyncopeConsoleSession.get().getSearchableRealms();
+
tree = new HashMap<>();
isSearchEnabled = RealmsUtils.isSearchEnabled(SyncopeConsoleSession.get().getSearchableRealms());
@@ -118,7 +121,7 @@ public class RealmChoicePanel extends Panel {
map(el -> Pair.of(el.getValue().getLeft().getFullPath(), el.getValue().getKey())).
sorted(Comparator.comparing(Pair::getLeft));
}
- return full.filter(realm -> availableRealms.stream().anyMatch(
+ return full.filter(realm -> SyncopeConsoleSession.get().getSearchableRealms().stream().anyMatch(
availableRealm -> realm.getValue().getFullPath().startsWith(availableRealm))).
collect(Collectors.toList());
}
@@ -130,7 +133,7 @@ public class RealmChoicePanel extends Panel {
@Override
protected List<DynRealmTO> load() {
- List<DynRealmTO> dynRealms = realmRestClient.listDynReams();
+ List<DynRealmTO> dynRealms = realmRestClient.listDynRealms();
dynRealms.sort((left, right) -> {
if (left == null) {
return -1;
@@ -140,13 +143,13 @@ public class RealmChoicePanel extends Panel {
}
return left.getKey().compareTo(right.getKey());
});
- return dynRealms.stream().filter(dynRealm -> availableRealms.stream().
+ return dynRealms.stream().filter(dynRealm -> SyncopeConsoleSession.get().getSearchableRealms().stream().
anyMatch(availableRealm -> SyncopeConstants.ROOT_REALM.equals(availableRealm)
|| dynRealm.getKey().equals(availableRealm))).collect(Collectors.toList());
}
};
- RealmTO realmTO = SyncopeConsoleSession.get().getRootRealm().map(rootRealm -> {
+ RealmTO realm = SyncopeConsoleSession.get().getRootRealm(initialRealm).map(rootRealm -> {
String rootRealmName = StringUtils.substringAfterLast(rootRealm, "/");
List<RealmTO> realmTOs = realmRestClient.search(
@@ -154,7 +157,7 @@ public class RealmChoicePanel extends Panel {
? SyncopeConstants.ROOT_REALM : rootRealmName)).getResult();
return realmTOs.stream().
- filter(realm -> rootRealm.equals(realm.getFullPath())).findFirst().
+ filter(r -> rootRealm.equals(r.getFullPath())).findFirst().
orElseGet(() -> {
RealmTO placeholder = new RealmTO();
placeholder.setName(rootRealmName);
@@ -163,30 +166,43 @@ public class RealmChoicePanel extends Panel {
});
}).orElseGet(RealmTO::new);
- model = Model.of(realmTO);
- searchQuery = realmTO.getName();
+ model = Model.of(realm);
+ searchQuery = realm.getName();
+
container = new WebMarkupContainerNoVeil("container", realmTree);
- container.setOutputMarkupId(true);
- add(container);
+ add(container.setOutputMarkupId(true));
+
+ realmDisplayKey = new Label("realmDisplayKey", realmDisplayKeyModel(null));
+ container.addOrReplace(realmDisplayKey.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true));
+ realmDisplayValue = new Label("realmDisplayValue", realmDisplayValueText());
+ container.addOrReplace(realmDisplayValue.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true));
+
reloadRealmTree();
}
- public final void reloadRealmTree() {
- Label realmLabel = new Label("realmLabel", new Model<>());
- realmLabel.setOutputMarkupId(true);
-
- container.addOrReplace(realmLabel);
+ protected IModel<String> realmDisplayKeyModel(final Boolean dynamic) {
+ return dynamic == null
+ ? model.getObject().getFullPath().startsWith(SyncopeConstants.ROOT_REALM)
+ ? new ResourceModel("realmDisplayKey", "Realm")
+ : new ResourceModel("dynRealmLabel", "Dynamic Realm")
+ : dynamic
+ ? new ResourceModel("dynRealmLabel", "Dynamic Realm")
+ : new ResourceModel("realmDisplayKey", "Realm");
+ }
- if (StringUtils.startsWith(model.getObject().getFullPath(), SyncopeConstants.ROOT_REALM)) {
- realmLabel.setDefaultModel(new ResourceModel("realmLabel", "Realm"));
- } else {
- realmLabel.setDefaultModel(new ResourceModel("dynRealmLabel", "Dynamic Realm"));
- }
+ protected String realmDisplayValueText() {
+ return RealmsUtils.getFullPath(model.getObject().getFullPath());
+ }
- Label label = new Label("realm", RealmsUtils.getFullPath(model.getObject().getFullPath()));
- label.setOutputMarkupId(true);
- container.addOrReplace(label);
+ protected void chooseRealm(final RealmTO realm, final AjaxRequestTarget target) {
+ model.setObject(realm);
+ realmDisplayValue.setDefaultModelObject(realmDisplayValueText());
+ realmDisplayKey.setDefaultModel(realmDisplayKeyModel(false));
+ target.add(realmDisplayValue);
+ send(pageRef.getPage(), Broadcast.EXACT, new ChosenRealm<>(realm, target));
+ }
+ public void reloadRealmTree() {
if (isSearchEnabled) {
realmsChoices = buildRealmChoices();
AutoCompleteSettings settings = new AutoCompleteSettings();
@@ -204,8 +220,7 @@ public class RealmChoicePanel extends Panel {
realmsChoices = RealmsUtils.checkInput(input)
? buildRealmChoices()
: Collections.emptyList();
- return realmsChoices.stream().
- map(RealmTO::getFullPath).sorted().collect(Collectors.toList()).iterator();
+ return realmsChoices.stream().map(RealmTO::getFullPath).sorted().iterator();
}
@Override
@@ -222,6 +237,7 @@ public class RealmChoicePanel extends Panel {
final String object,
final Response response,
final String criteria) {
+
response.write(object);
}
@@ -239,15 +255,9 @@ public class RealmChoicePanel extends Panel {
@Override
protected void onUpdate(final AjaxRequestTarget target) {
- realmsChoices.stream().filter(
- item -> item.getFullPath().equals(searchRealms.getModelObject())).
- findFirst().ifPresent(realm -> {
- model.setObject(realm);
- label.setDefaultModelObject(model.getObject().getFullPath());
- realmLabel.setDefaultModel(new ResourceModel("realmLabel", "Realm"));
- target.add(label);
- send(pageRef.getPage(), Broadcast.EXACT, new ChosenRealm<>(realm, target));
- });
+ realmsChoices.stream().
+ filter(item -> item.getFullPath().equals(searchRealms.getModelObject())).
+ findFirst().ifPresent(realm -> chooseRealm(realm, target));
}
});
@@ -262,7 +272,7 @@ public class RealmChoicePanel extends Panel {
@Override
protected List<AbstractLink> newSubMenuButtons(final String buttonMarkupId) {
- buildRealmLinks(label, realmLabel);
+ buildRealmLinks();
return RealmChoicePanel.this.links;
}
};
@@ -277,7 +287,7 @@ public class RealmChoicePanel extends Panel {
}
}
- private void buildRealmLinks(final Label label, final Label realmLabel) {
+ protected void buildRealmLinks() {
RealmChoicePanel.this.links.clear();
RealmChoicePanel.this.links.add(new BootstrapAjaxLink<RealmTO>(
ButtonList.getButtonMarkupId(),
@@ -313,11 +323,7 @@ public class RealmChoicePanel extends Panel {
@Override
public void onClick(final AjaxRequestTarget target) {
- model.setObject(link.getRight());
- label.setDefaultModelObject(model.getObject().getFullPath());
- realmLabel.setDefaultModel(new ResourceModel("realmLabel", "Realm"));
- target.add(label);
- send(pageRef.getPage(), Broadcast.EXACT, new ChosenRealm<>(link.getRight(), target));
+ chooseRealm(link.getRight(), target);
}
});
});
@@ -347,34 +353,44 @@ public class RealmChoicePanel extends Panel {
});
dynRealmTree.getObject().forEach(dynRealmTO -> {
- final RealmTO realmTO = new RealmTO();
- realmTO.setKey(dynRealmTO.getKey());
- realmTO.setName(dynRealmTO.getKey());
- realmTO.setFullPath(dynRealmTO.getKey());
+ RealmTO realm = new RealmTO();
+ realm.setKey(dynRealmTO.getKey());
+ realm.setName(dynRealmTO.getKey());
+ realm.setFullPath(dynRealmTO.getKey());
RealmChoicePanel.this.links.add(new BootstrapAjaxLink<RealmTO>(
ButtonList.getButtonMarkupId(),
new Model<>(),
Buttons.Type.Link,
- new Model<>(realmTO.getKey())) {
+ new Model<>(realm.getKey())) {
private static final long serialVersionUID = -7978723352517770644L;
@Override
public void onClick(final AjaxRequestTarget target) {
- model.setObject(realmTO);
- label.setDefaultModelObject(realmTO.getKey());
- realmLabel.setDefaultModel(new ResourceModel("dynRealmLabel", "Dynamic Realm"));
- target.add(label);
- send(pageRef.getPage(), Broadcast.EXACT, new ChosenRealm<>(realmTO, target));
+ chooseRealm(realm, target);
}
});
});
}
}
+ protected List<RealmTO> buildRealmChoices() {
+ return Stream.of(
+ realmTree.getObject().stream().map(Pair::getValue).collect(Collectors.toList()),
+ dynRealmTree.getObject().stream().map(item -> {
+ RealmTO realm = new RealmTO();
+ realm.setKey(item.getKey());
+ realm.setName(item.getKey());
+ realm.setFullPath(item.getKey());
+ return realm;
+ }).collect(Collectors.toList())).flatMap(Collection::stream).
+ collect(Collectors.toList());
+ }
+
public final RealmChoicePanel reloadRealmTree(final AjaxRequestTarget target) {
reloadRealmTree();
+ chooseRealm(model.getObject(), target);
target.add(container);
return this;
}
@@ -385,7 +401,7 @@ public class RealmChoicePanel extends Panel {
return this;
}
- private Map<String, Pair<RealmTO, List<RealmTO>>> reloadRealmParentMap() {
+ protected Map<String, Pair<RealmTO, List<RealmTO>>> reloadRealmParentMap() {
List<RealmTO> realmsToList = isSearchEnabled
? realmRestClient.search(RealmsUtils.buildQuery(searchQuery)).getResult()
: realmRestClient.list();
@@ -395,7 +411,7 @@ public class RealmChoicePanel extends Panel {
collect(Collectors.toList()));
}
- private Map<String, Pair<RealmTO, List<RealmTO>>> reloadRealmParentMap(final List<RealmTO> realms) {
+ protected Map<String, Pair<RealmTO, List<RealmTO>>> reloadRealmParentMap(final List<RealmTO> realms) {
tree.clear();
Map<String, List<RealmTO>> cache = new HashMap<>();
@@ -420,19 +436,6 @@ public class RealmChoicePanel extends Panel {
return tree;
}
- private List<RealmTO> buildRealmChoices() {
- return Stream.of(
- realmTree.getObject().stream().map(Pair::getValue).collect(Collectors.toList()),
- dynRealmTree.getObject().stream().map(item -> {
- RealmTO realmTO = new RealmTO();
- realmTO.setKey(item.getKey());
- realmTO.setName(item.getKey());
- realmTO.setFullPath(item.getKey());
- return realmTO;
- }).collect(Collectors.toList())).flatMap(Collection::stream).
- collect(Collectors.toList());
- }
-
/**
* Gets current selected realm.
*
@@ -456,14 +459,13 @@ public class RealmChoicePanel extends Panel {
}
}
return null;
-
}
public static class ChosenRealm<T> {
- private final AjaxRequestTarget target;
+ protected final AjaxRequestTarget target;
- private final T obj;
+ protected final T obj;
public ChosenRealm(final T obj, final AjaxRequestTarget target) {
this.obj = obj;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/RealmRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/RealmRestClient.java
index 25a7cace82..8e1b5d7cfb 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/RealmRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/RealmRestClient.java
@@ -45,11 +45,11 @@ public class RealmRestClient extends BaseRestClient {
return getService(RealmService.class).list(SyncopeConstants.ROOT_REALM);
}
- public List<DynRealmTO> listDynReams() {
+ public List<DynRealmTO> listDynRealms() {
return getService(DynRealmService.class).list();
}
- public DynRealmTO readDynReams(final String key) {
+ public DynRealmTO readDynRealm(final String key) {
return getService(DynRealmService.class).read(key);
}
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/form/ActionsPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/form/ActionsPanel.java
index 9b11efaebd..2d828c4d54 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/form/ActionsPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wicket/markup/html/form/ActionsPanel.java
@@ -77,6 +77,21 @@ public final class ActionsPanel<T extends Serializable> extends Panel {
return action;
}
+ public Action<T> add(final Action<T> action) {
+ actions.add(action);
+ return action;
+ }
+
+ public Action<T> add(final int index, final Action<T> action) {
+ actions.add(index, action);
+ return action;
+ }
+
+ public Action<T> set(final int index, final Action<T> action) {
+ actions.set(index, action);
+ return action;
+ }
+
public List<Action<T>> getActions() {
return actions;
}
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/NumberWidget.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/NumberWidget.java
index 8787a3f70b..425cec1460 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/NumberWidget.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/NumberWidget.java
@@ -57,13 +57,13 @@ public class NumberWidget extends BaseWidget {
List<String> anyTypes = new AnyTypeRestClient().list();
switch (id) {
case "totalUsers":
- pageParameters.add("selectedIndex", 1);
+ pageParameters.add(Realms.SELECTED_INDEX, 1);
responsePage = Realms.class;
isAuthorized = SyncopeConsoleSession.get().owns(StandardEntitlement.USER_SEARCH);
break;
case "totalGroups":
- pageParameters.add("selectedIndex", 2);
+ pageParameters.add(Realms.SELECTED_INDEX, 2);
responsePage = Realms.class;
isAuthorized = SyncopeConsoleSession.get().owns(StandardEntitlement.GROUP_SEARCH);
break;
@@ -74,7 +74,7 @@ public class NumberWidget extends BaseWidget {
for (int i = 0; i < anyTypes.size() && selectedIndex == null; i++) {
if (anyTypes.get(i).equals(label)) {
selectedIndex = i + 1;
- pageParameters.add("selectedIndex", selectedIndex);
+ pageParameters.add(Realms.SELECTED_INDEX, selectedIndex);
}
}
responsePage = Realms.class;
@@ -91,7 +91,7 @@ public class NumberWidget extends BaseWidget {
for (int i = 0; i < anyTypes.size() && selectedIndex == null; i++) {
if (anyTypes.get(i).equals(label)) {
selectedIndex = i + 1;
- pageParameters.add("selectedIndex", selectedIndex);
+ pageParameters.add(Realms.SELECTED_INDEX, selectedIndex);
}
}
responsePage = Realms.class;
@@ -108,7 +108,7 @@ public class NumberWidget extends BaseWidget {
break;
default:
- pageParameters.add("selectedIndex", 0);
+ pageParameters.add(Realms.SELECTED_INDEX, 0);
responsePage = Realms.class;
}
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/panels/RealmChoicePanel.html b/client/console/src/main/resources/org/apache/syncope/client/console/panels/RealmChoicePanel.html
index 3d015ed983..bfbb60600e 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/panels/RealmChoicePanel.html
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/panels/RealmChoicePanel.html
@@ -20,7 +20,7 @@ under the License.
<wicket:panel>
<div wicket:id="container" class="realm-header">
<div class="realm-label">
- <label wicket:id="realmLabel"/>: <label wicket:id="realm"/>
+ <label wicket:id="realmDisplayKey"/>: <label wicket:id="realmDisplayValue"/>
</div>
<span wicket:id="realmsFragment"></span>
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/RealmsITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/RealmsITCase.java
index c0cd43c310..f89c96686f 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/RealmsITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/RealmsITCase.java
@@ -69,7 +69,7 @@ public class RealmsITCase extends AbstractConsoleITCase {
TESTER.executeAjaxEvent("body:content:realmChoicePanel:container:realmsFragment:realms:dropdown-menu:buttons:5:button",
Constants.ON_CLICK);
- TESTER.assertLabel("body:content:realmChoicePanel:container:realm", "/testRealm");
+ TESTER.assertLabel("body:content:realmChoicePanel:container:realmDisplayValue", "/testRealm");
TESTER.getRequest().addParameter("confirm", "true");
TESTER.clickLink(
@@ -81,7 +81,7 @@ public class RealmsITCase extends AbstractConsoleITCase {
TESTER.assertLabel("body:content:body:container:content:tabbedPanel:panel:container:accountPolicy:field-label",
"Account Policy");
- TESTER.assertLabel("body:content:realmChoicePanel:container:realm", "/");
+ TESTER.assertLabel("body:content:realmChoicePanel:container:realmDisplayValue", "/");
}
@Test
@@ -107,7 +107,7 @@ public class RealmsITCase extends AbstractConsoleITCase {
TESTER.executeAjaxEvent("body:content:realmChoicePanel:container:realmsFragment:realms:dropdown-menu:buttons:4:button",
Constants.ON_CLICK);
- TESTER.assertLabel("body:content:realmChoicePanel:container:realm", "/odd");
+ TESTER.assertLabel("body:content:realmChoicePanel:container:realmDisplayValue", "/odd");
TESTER.clickLink(
"body:content:body:container:content:tabbedPanel:panel:actions:actions:actionRepeater:2:action:action");
@@ -127,7 +127,7 @@ public class RealmsITCase extends AbstractConsoleITCase {
assertSuccessMessage();
TESTER.cleanupFeedbackMessages();
- TESTER.assertLabel("body:content:realmChoicePanel:container:realm", "/odd");
+ TESTER.assertLabel("body:content:realmChoicePanel:container:realmDisplayValue", "/odd");
TESTER.clickLink(
"body:content:body:container:content:tabbedPanel:panel:actions:actions:actionRepeater:2:action:action");