You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by fm...@apache.org on 2015/12/18 10:41:24 UTC
syncope git commit: [SYNCOPE-156] some fixes improve derived and
virtual attributes management
Repository: syncope
Updated Branches:
refs/heads/master 288179f26 -> 83509d7eb
[SYNCOPE-156] some fixes improve derived and virtual attributes management
Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/83509d7e
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/83509d7e
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/83509d7e
Branch: refs/heads/master
Commit: 83509d7eb8322ba8066f9278c25ba38a829cb439
Parents: 288179f
Author: fmartelli <fa...@gmail.com>
Authored: Fri Dec 18 10:41:08 2015 +0100
Committer: fmartelli <fa...@gmail.com>
Committed: Fri Dec 18 10:41:08 2015 +0100
----------------------------------------------------------------------
.../panels/search/AbstractSearchPanel.java | 14 ++++++--
.../panels/search/AnyObjectSearchPanel.java | 11 ++++--
.../console/panels/search/UserSearchPanel.java | 2 +-
.../client/console/wizards/any/DerAttrs.java | 35 +++++++++++---------
.../console/wizards/any/DynamicMemberships.java | 2 +-
.../client/console/wizards/any/Roles.java | 4 +--
.../client/console/wizards/any/VirAttrs.java | 22 ++++++------
.../client/console/panels/ListViewPanel.html | 3 +-
8 files changed, 56 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AbstractSearchPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AbstractSearchPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AbstractSearchPanel.java
index fae623a..365d0c7 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AbstractSearchPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AbstractSearchPanel.java
@@ -77,6 +77,8 @@ public abstract class AbstractSearchPanel extends Panel {
protected final AnyTypeKind typeKind;
+ protected final String type;
+
protected final boolean required;
protected final boolean enableSearch;
@@ -108,13 +110,19 @@ public abstract class AbstractSearchPanel extends Panel {
public abstract T build(final String id);
}
- protected AbstractSearchPanel(final String id, final AnyTypeKind typeKind, final Builder<?> builder) {
+ protected AbstractSearchPanel(final String id, final AnyTypeKind kind, final Builder<?> builder) {
+ this(id, kind, kind.name(), builder);
+ }
+
+ protected AbstractSearchPanel(
+ final String id, final AnyTypeKind kind, final String type, final Builder<?> builder) {
super(id);
populate();
this.model = builder.model;
- this.typeKind = typeKind;
+ this.typeKind = kind;
+ this.type = type;
this.required = builder.required;
this.enableSearch = builder.enableSearch;
@@ -186,7 +194,7 @@ public abstract class AbstractSearchPanel extends Panel {
@Override
protected List<String> load() {
return CollectionUtils.collect(schemaRestClient.getSchemas(SchemaType.PLAIN,
- anyTypeRestClient.get(typeKind.name()).getClasses().toArray(new String[] {})),
+ anyTypeRestClient.get(type).getClasses().toArray(new String[] {})),
new Transformer<AbstractSchemaTO, String>() {
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AnyObjectSearchPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AnyObjectSearchPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AnyObjectSearchPanel.java
index 681ab1c..369c99b 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AnyObjectSearchPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/AnyObjectSearchPanel.java
@@ -38,13 +38,16 @@ public class AnyObjectSearchPanel extends AbstractSearchPanel {
private static final long serialVersionUID = 6308997285778809578L;
- public Builder(final IModel<List<SearchClause>> model) {
+ private final String type;
+
+ public Builder(final String type, final IModel<List<SearchClause>> model) {
super(model);
+ this.type = type;
}
@Override
public AnyObjectSearchPanel build(final String id) {
- return new AnyObjectSearchPanel(id, AnyTypeKind.ANY_OBJECT, this);
+ return new AnyObjectSearchPanel(id, AnyTypeKind.ANY_OBJECT, type, this);
}
}
@@ -52,6 +55,10 @@ public class AnyObjectSearchPanel extends AbstractSearchPanel {
super(id, kind, builder);
}
+ protected AnyObjectSearchPanel(final String id, final AnyTypeKind kind, final String type, final Builder builder) {
+ super(id, kind, type, builder);
+ }
+
@Override
protected void populate() {
super.populate();
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/panels/search/UserSearchPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/UserSearchPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/UserSearchPanel.java
index 910986a..2d01fc2 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/UserSearchPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/UserSearchPanel.java
@@ -31,7 +31,7 @@ public final class UserSearchPanel extends AnyObjectSearchPanel {
private static final long serialVersionUID = 6308997285778809578L;
public Builder(final IModel<List<SearchClause>> model) {
- super(model);
+ super(AnyTypeKind.USER.name(), model);
}
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DerAttrs.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DerAttrs.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DerAttrs.java
index 8ac047b..6629082 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DerAttrs.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DerAttrs.java
@@ -61,11 +61,11 @@ public class DerAttrs extends AbstractAttrs {
anyTypeRestClient.getAnyTypeClass(getAllAuxClasses().toArray(new String[] {})),
new Transformer<AnyTypeClassTO, String>() {
- @Override
- public String transform(final AnyTypeClassTO input) {
- return input.getKey();
- }
- }, new ArrayList<String>(Arrays.asList(anyTypeClass)));
+ @Override
+ public String transform(final AnyTypeClassTO input) {
+ return input.getKey();
+ }
+ }, new ArrayList<String>(Arrays.asList(anyTypeClass)));
final List<DerSchemaTO> derSchemas
= schemaRestClient.getSchemas(SchemaType.DERIVED, classes.toArray(new String[] {}));
@@ -73,18 +73,21 @@ public class DerAttrs extends AbstractAttrs {
final Map<String, AttrTO> currents = entityTO.getDerAttrMap();
entityTO.getDerAttrs().clear();
- return CollectionUtils.collect(derSchemas, new Transformer<DerSchemaTO, AttrTO>() {
+ // This conversion from set to lis is required by the ListView.
+ // Didn't performed by using collect parameter because entityTO change is required.
+ return new ArrayList<AttrTO>(
+ CollectionUtils.collect(derSchemas, new Transformer<DerSchemaTO, AttrTO>() {
- @Override
- public AttrTO transform(final DerSchemaTO input) {
- AttrTO attrTO = currents.get(input.getKey());
- if (attrTO == null) {
- attrTO = new AttrTO();
- attrTO.setSchema(input.getKey());
- }
- return attrTO;
- }
- }, new ArrayList<>(entityTO.getDerAttrs()));
+ @Override
+ public AttrTO transform(final DerSchemaTO input) {
+ AttrTO attrTO = currents.get(input.getKey());
+ if (attrTO == null) {
+ attrTO = new AttrTO();
+ attrTO.setSchema(input.getKey());
+ }
+ return attrTO;
+ }
+ }, entityTO.getDerAttrs()));
}
};
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DynamicMemberships.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DynamicMemberships.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DynamicMemberships.java
index 7288163..8df2cdd 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DynamicMemberships.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/DynamicMemberships.java
@@ -104,7 +104,7 @@ public class DynamicMemberships extends WizardStep {
@Override
public Panel getPanel(final String panelId) {
return new AnyObjectSearchPanel.Builder(
- new MapOfListModel<SearchClause>(groupHandler, "aDynClauses", key)).
+ key, new MapOfListModel<SearchClause>(groupHandler, "aDynClauses", key)).
required(false).build(panelId);
}
}), Model.of(StringUtils.isBlank(groupHandler.getADynMembershipConds().get(key)) ? -1 : 0))
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
index f5f7afd..6ac91b1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
@@ -35,8 +35,6 @@ public class Roles extends WizardStep {
private static final long serialVersionUID = 552437609667518888L;
- private final RoleRestClient roleRestClient = new RoleRestClient();
-
public <T extends AnyTO> Roles(final UserTO entityTO) {
this.setOutputMarkupId(true);
@@ -56,6 +54,6 @@ public class Roles extends WizardStep {
add(new AjaxPalettePanel.Builder<String>().build("dynroles",
new PropertyModel<List<String>>(entityTO, "dynRoles"),
- new ListModel<>(allRoles)).setOutputMarkupId(true));
+ new ListModel<>(allRoles)).setEnabled(false).setOutputMarkupId(true));
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/VirAttrs.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/VirAttrs.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/VirAttrs.java
index 1c247e0..2f69864 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/VirAttrs.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/VirAttrs.java
@@ -59,11 +59,11 @@ public class VirAttrs extends AbstractAttrs {
anyTypeRestClient.getAnyTypeClass(getAllAuxClasses().toArray(new String[] {})),
new Transformer<AnyTypeClassTO, String>() {
- @Override
- public String transform(final AnyTypeClassTO input) {
- return input.getKey();
- }
- }, new ArrayList<String>(Arrays.asList(anyTypeClass)));
+ @Override
+ public String transform(final AnyTypeClassTO input) {
+ return input.getKey();
+ }
+ }, new ArrayList<String>(Arrays.asList(anyTypeClass)));
final List<VirSchemaTO> virSchemas
= schemaRestClient.getSchemas(SchemaType.VIRTUAL, classes.toArray(new String[] {}));
@@ -71,7 +71,9 @@ public class VirAttrs extends AbstractAttrs {
final Map<String, AttrTO> currents = entityTO.getVirAttrMap();
entityTO.getVirAttrs().clear();
- return CollectionUtils.collect(virSchemas, new Transformer<VirSchemaTO, AttrTO>() {
+ // This conversion from set to lis is required by the ListView.
+ // Didn't performed by using collect parameter because entityTO change is required.
+ return new ArrayList<>(CollectionUtils.collect(virSchemas, new Transformer<VirSchemaTO, AttrTO>() {
@Override
public AttrTO transform(final VirSchemaTO input) {
@@ -87,7 +89,7 @@ public class VirAttrs extends AbstractAttrs {
attrTO.setReadonly(input.isReadonly());
return attrTO;
}
- }, new ArrayList<>(entityTO.getVirAttrs()));
+ }, entityTO.getVirAttrs()));
}
};
@@ -120,9 +122,9 @@ public class VirAttrs extends AbstractAttrs {
item.add(new MultiFieldPanel.Builder<String>(
new PropertyModel<List<String>>(attrTO, "values")).build(
- "panel",
- attrTO.getSchema(),
- panel).setEnabled(!attrTO.isReadonly()));
+ "panel",
+ attrTO.getSchema(),
+ panel).setEnabled(!attrTO.isReadonly()));
}
};
http://git-wip-us.apache.org/repos/asf/syncope/blob/83509d7e/client/console/src/main/resources/org/apache/syncope/client/console/panels/ListViewPanel.html
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/panels/ListViewPanel.html b/client/console/src/main/resources/org/apache/syncope/client/console/panels/ListViewPanel.html
index e30cf50..0c1a727 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/panels/ListViewPanel.html
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/panels/ListViewPanel.html
@@ -54,7 +54,8 @@ under the License.
</tr>
</span>
- </tbody></table>
+ </tbody>
+ </table>
</div><!-- /.box-body -->
</div><!-- /.box -->
</div>