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 2016/04/04 15:19:26 UTC

syncope git commit: [SYNCOPE-805] DropDownChoice provided - also set mandatory for PullTasks

Repository: syncope
Updated Branches:
  refs/heads/master 74e57f1f7 -> 323b22cd6


[SYNCOPE-805] DropDownChoice provided - also set mandatory for PullTasks


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/323b22cd
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/323b22cd
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/323b22cd

Branch: refs/heads/master
Commit: 323b22cd69b948ef1f742cc2f6d1086d6f8fedec
Parents: 74e57f1
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Mon Apr 4 15:19:19 2016 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Mon Apr 4 15:19:19 2016 +0200

----------------------------------------------------------------------
 .../tasks/ProvisioningTaskDirectoryPanel.java   |  2 +-
 .../console/tasks/SchedTaskWizardBuilder.java   | 44 ++++++++++++++++----
 .../console/widgets/AnyByRealmWidget.java       |  5 +--
 3 files changed, 38 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/323b22cd/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
index 8b0d9dc..a42a22d 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
@@ -62,7 +62,7 @@ public abstract class ProvisioningTaskDirectoryPanel<T extends AbstractProvision
 
     @Override
     protected void initResultTable() {
-        // DO nothing in order to disable the call performed by the parent
+        // Do nothing in order to disable the call performed by the parent
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/323b22cd/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskWizardBuilder.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskWizardBuilder.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskWizardBuilder.java
index 7fb01fb..e6cee5f 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskWizardBuilder.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskWizardBuilder.java
@@ -21,9 +21,13 @@ package org.apache.syncope.client.console.tasks;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.Transformer;
 import org.apache.syncope.client.console.commons.Constants;
 import org.apache.syncope.client.console.commons.DateFormatROModel;
+import org.apache.syncope.client.console.rest.RealmRestClient;
 import org.apache.syncope.client.console.rest.TaskRestClient;
 import org.apache.syncope.client.console.wicket.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior;
 import org.apache.syncope.client.console.wicket.markup.html.form.AjaxCheckBoxPanel;
@@ -33,6 +37,7 @@ import org.apache.syncope.client.console.wizards.AjaxWizardBuilder;
 import org.apache.syncope.common.lib.to.AbstractProvisioningTaskTO;
 import org.apache.syncope.common.lib.to.SchedTaskTO;
 import org.apache.syncope.common.lib.to.PullTaskTO;
+import org.apache.syncope.common.lib.to.RealmTO;
 import org.apache.syncope.common.lib.types.MatchingRule;
 import org.apache.syncope.common.lib.types.PullMode;
 import org.apache.syncope.common.lib.types.UnmatchingRule;
@@ -51,12 +56,27 @@ public class SchedTaskWizardBuilder<T extends SchedTaskTO> extends AjaxWizardBui
 
     private final TaskRestClient taskRestClient = new TaskRestClient();
 
-    /**
-     * Construct.
-     *
-     * @param taskTO task
-     * @param pageRef Caller page reference.
-     */
+    private final LoadableDetachableModel<List<String>> realms = new LoadableDetachableModel<List<String>>() {
+
+        private static final long serialVersionUID = 5275935387613157437L;
+
+        @Override
+        protected List<String> load() {
+            List<String> result = CollectionUtils.collect(
+                    new RealmRestClient().list(), new Transformer<RealmTO, String>() {
+
+                @Override
+                public String transform(final RealmTO realm) {
+                    return realm.getFullPath();
+                }
+            }, new ArrayList<String>());
+
+            Collections.sort(result);
+
+            return result;
+        }
+    };
+
     public SchedTaskWizardBuilder(final T taskTO, final PageReference pageRef) {
         super("wizard", taskTO, pageRef);
     }
@@ -120,8 +140,10 @@ public class SchedTaskWizardBuilder<T extends SchedTaskTO> extends AjaxWizardBui
 
             final AjaxDropDownChoicePanel<PullMode> pullMode = new AjaxDropDownChoicePanel<>("pullMode", "pullMode",
                     new PropertyModel<PullMode>(taskTO, "pullMode"), false);
-            pullTaskSpecifics.add(pullMode);
             pullMode.setChoices(Arrays.asList(PullMode.values()));
+            pullMode.setRequired(taskTO instanceof PullTaskTO);
+            pullMode.setNullValid(!(taskTO instanceof PullTaskTO));
+            pullTaskSpecifics.add(pullMode);
 
             final AjaxTextFieldPanel filter = new AjaxTextFieldPanel(
                     "reconciliationFilterBuilderClassName", "reconciliationFilterBuilderClassName",
@@ -140,8 +162,12 @@ public class SchedTaskWizardBuilder<T extends SchedTaskTO> extends AjaxWizardBui
                 }
             });
 
-            final AjaxTextFieldPanel destinationRealm = new AjaxTextFieldPanel("destinationRealm", "destinationRealm",
-                    new PropertyModel<String>(taskTO, "destinationRealm"), false);
+            final AjaxDropDownChoicePanel<String> destinationRealm = new AjaxDropDownChoicePanel<>(
+                    "destinationRealm", "destinationRealm",
+                    new PropertyModel<String>(taskTO, "destinationRealm"), false).
+                    setChoices(realms);
+            destinationRealm.setRequired(taskTO instanceof PullTaskTO);
+            destinationRealm.setNullValid(!(taskTO instanceof PullTaskTO));
             pullTaskSpecifics.add(destinationRealm);
 
             final AjaxDropDownChoicePanel<String> className = new AjaxDropDownChoicePanel<>(

http://git-wip-us.apache.org/repos/asf/syncope/blob/323b22cd/client/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
index e2c2c3a..896cead 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
@@ -24,9 +24,8 @@ import com.pingunaut.wicket.chartjs.data.sets.BarDataSet;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import org.apache.syncope.client.console.SyncopeConsoleSession;
+import org.apache.syncope.client.console.rest.RealmRestClient;
 import org.apache.syncope.common.lib.to.RealmTO;
-import org.apache.syncope.common.rest.api.service.RealmService;
 import org.apache.wicket.model.Model;
 
 public class AnyByRealmWidget extends BaseWidget {
@@ -88,7 +87,7 @@ public class AnyByRealmWidget extends BaseWidget {
         List<Integer> any1Values = new ArrayList<>();
         List<Integer> any2Values = new ArrayList<>();
 
-        List<RealmTO> realms = SyncopeConsoleSession.get().getService(RealmService.class).list();
+        List<RealmTO> realms = new RealmRestClient().list();
         for (int i = 0; i < realms.size() && i < MAX_REALMS; i++) {
             RealmTO realm = realms.get(i);