Syncope-master - Build # 2263 - Fixed

2017-06-09 Thread Apache Jenkins Server
The Apache Jenkins build system has built Syncope-master (build #2263)

Status: Fixed

Check console output at https://builds.apache.org/job/Syncope-master/2263/ to 
view the results.

syncope git commit: [SYNCOPE-1067] Fix build (2nd attempt)

2017-06-09 Thread ilgrosso
Repository: syncope
Updated Branches:
  refs/heads/master e8a961cc3 -> 23b1c9d76


[SYNCOPE-1067] Fix build (2nd attempt)


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

Branch: refs/heads/master
Commit: 23b1c9d76840fe0331edabbdcda239f477294181
Parents: e8a961c
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 19:43:19 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 19:43:19 2017 +0200

--
 .../client/console/widgets/CompletenessWidget.java | 13 ++---
 1 file changed, 6 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/23b1c9d7/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
index 2f1390c..50b45d1 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
@@ -31,7 +31,6 @@ import org.apache.syncope.client.console.pages.Types;
 import org.apache.syncope.client.console.topology.Topology;
 import org.apache.syncope.common.lib.info.NumbersInfo;
 import org.apache.syncope.common.lib.types.StandardEntitlement;
-import org.apache.wicket.Page;
 import 
org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.WebPage;
@@ -48,17 +47,17 @@ public class CompletenessWidget extends BaseWidget {
 
 private final WebMarkupContainer actions;
 
-private final BookmarkablePageLink topology;
+private final BookmarkablePageLink topology;
 
-private final BookmarkablePageLink policies;
+private final BookmarkablePageLink policies;
 
-private final BookmarkablePageLink notifications;
+private final BookmarkablePageLink notifications;
 
-private final BookmarkablePageLink types;
+private final BookmarkablePageLink types;
 
-private final BookmarkablePageLink securityquestions;
+private final BookmarkablePageLink securityquestions;
 
-private final BookmarkablePageLink roles;
+private final BookmarkablePageLink roles;
 
 public CompletenessWidget(final String id, final Map confCompleteness) {
 super(id);



Syncope-master - Build # 2262 - Still Failing

2017-06-09 Thread Apache Jenkins Server
The Apache Jenkins build system has built Syncope-master (build #2262)

Status: Still Failing

Check console output at https://builds.apache.org/job/Syncope-master/2262/ to 
view the results.

syncope git commit: [SYNCOPE-1067] Fix build

2017-06-09 Thread ilgrosso
Repository: syncope
Updated Branches:
  refs/heads/master 52bd7eb0d -> e8a961cc3


[SYNCOPE-1067] Fix build


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

Branch: refs/heads/master
Commit: e8a961cc32bf9938c018f951d31e1a8fff533d4a
Parents: 52bd7eb
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 19:21:15 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 19:21:15 2017 +0200

--
 .../client/console/widgets/CompletenessWidget.java | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/e8a961cc/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
index fe80ac9..2f1390c 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/widgets/CompletenessWidget.java
@@ -31,6 +31,7 @@ import org.apache.syncope.client.console.pages.Types;
 import org.apache.syncope.client.console.topology.Topology;
 import org.apache.syncope.common.lib.info.NumbersInfo;
 import org.apache.syncope.common.lib.types.StandardEntitlement;
+import org.apache.wicket.Page;
 import 
org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.WebPage;
@@ -47,17 +48,17 @@ public class CompletenessWidget extends BaseWidget {
 
 private final WebMarkupContainer actions;
 
-private final BookmarkablePageLink topology;
+private final BookmarkablePageLink topology;
 
-private final BookmarkablePageLink policies;
+private final BookmarkablePageLink policies;
 
-private final BookmarkablePageLink notifications;
+private final BookmarkablePageLink notifications;
 
-private final BookmarkablePageLink types;
+private final BookmarkablePageLink types;
 
-private final BookmarkablePageLink securityquestions;
+private final BookmarkablePageLink securityquestions;
 
-private final BookmarkablePageLink roles;
+private final BookmarkablePageLink roles;
 
 public CompletenessWidget(final String id, final Map confCompleteness) {
 super(id);



Syncope-master - Build # 2261 - Failure

2017-06-09 Thread Apache Jenkins Server
The Apache Jenkins build system has built Syncope-master (build #2261)

Status: Failure

Check console output at https://builds.apache.org/job/Syncope-master/2261/ to 
view the results.

[1/4] syncope git commit: [SYNCOPE-1067] Management from Admin Console

2017-06-09 Thread ilgrosso
Repository: syncope
Updated Branches:
  refs/heads/2_0_X 1ad305580 -> a6f6b5c5d
  refs/heads/master f74ce5dee -> 52bd7eb0d


http://git-wip-us.apache.org/repos/asf/syncope/blob/a6f6b5c5/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
deleted file mode 100644
index 486e33b..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-http://www.w3.org/1999/xhtml"; 
xmlns:wicket="http://wicket.apache.org";>
-  
-
-   
-  
- 

-
-
-  
-
-
-
-  
-
-  
-
-  
-
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/syncope/blob/a6f6b5c5/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
deleted file mode 100644
index 6a40284..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-add=Create new Role

http://git-wip-us.apache.org/repos/asf/syncope/blob/a6f6b5c5/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
deleted file mode 100644
index ba0237a..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-add=Crea un nuovo Ruolo

http://git-wip-us.apache.org/repos/asf/syncope/blob/a6f6b5c5/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
deleted file mode 100644
index c150538..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is dist

[3/4] syncope git commit: [SYNCOPE-1067] Management from Admin Console

2017-06-09 Thread ilgrosso
http://git-wip-us.apache.org/repos/asf/syncope/blob/52bd7eb0/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
deleted file mode 100644
index 486e33b..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-http://www.w3.org/1999/xhtml"; 
xmlns:wicket="http://wicket.apache.org";>
-  
-
-   
-  
- 

-
-
-  
-
-
-
-  
-
-  
-
-  
-
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/syncope/blob/52bd7eb0/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
deleted file mode 100644
index 6a40284..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-add=Create new Role

http://git-wip-us.apache.org/repos/asf/syncope/blob/52bd7eb0/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
deleted file mode 100644
index ba0237a..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_it.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-add=Crea un nuovo Ruolo

http://git-wip-us.apache.org/repos/asf/syncope/blob/52bd7eb0/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
--
diff --git 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
 
b/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
deleted file mode 100644
index c150538..000
--- 
a/client/console/src/main/resources/org/apache/syncope/client/console/pages/Roles_pt_BR.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License 

[2/4] syncope git commit: [SYNCOPE-1067] Management from Admin Console

2017-06-09 Thread ilgrosso
[SYNCOPE-1067] Management from Admin Console


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

Branch: refs/heads/2_0_X
Commit: a6f6b5c5d887228a67cdbad42a4b118c23bc0abb
Parents: 1ad3055
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 17:59:22 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 17:59:22 2017 +0200

--
 .../client/console/commons/Constants.java   |   2 +
 .../console/layout/AbstractAnyFormLayout.java   |  10 +
 .../console/layout/AnyObjectFormLayoutInfo.java |  10 -
 .../console/layout/UserFormLayoutInfo.java  |  10 -
 .../console/notifications/TemplateModal.java|   4 +-
 .../client/console/pages/Administration.java|  83 ++
 .../syncope/client/console/pages/BasePage.java  |  10 +-
 .../syncope/client/console/pages/Roles.java |  52 
 .../console/panels/DynRealmDirectoryPanel.java  | 186 +
 .../console/panels/DynRealmModalPanel.java  | 109 
 .../console/panels/RoleDirectoryPanel.java  |   2 +-
 .../console/panels/SecurityQuestionsPanel.java  |   4 +-
 .../client/console/rest/DynRealmRestClient.java |  47 
 .../client/console/rest/RoleRestClient.java |   4 -
 .../html/form/ActionLinksTogglePanel.java   |   8 +-
 .../wicket/markup/html/form/ActionPanel.java|   2 +-
 .../console/widgets/CompletenessWidget.java |   4 +-
 .../client/console/widgets/NumberWidget.java|   4 +-
 .../client/console/wizards/DynRealmWrapper.java |  69 +
 .../client/console/wizards/WizardMgtPanel.java  |   4 +-
 .../console/wizards/any/AnyWizardBuilder.java   |   6 +-
 .../console/wizards/any/GroupWizardBuilder.java |   2 +-
 .../client/console/wizards/any/Groups.java  | 260 +++
 .../console/wizards/role/RoleWizardBuilder.java |  20 +-
 .../src/main/resources/console.properties   |   2 +-
 .../SyncopeConsoleApplication.properties|   1 +
 .../SyncopeConsoleApplication_it.properties |   1 +
 .../SyncopeConsoleApplication_pt_BR.properties  |   1 +
 .../SyncopeConsoleApplication_ru.properties |   1 +
 .../console/notifications/TemplateModal.html|  13 +-
 .../client/console/pages/Administration.html|  36 +++
 .../console/pages/Administration.properties |  18 ++
 .../console/pages/Administration_it.properties  |  18 ++
 .../pages/Administration_pt_BR.properties   |  18 ++
 .../console/pages/Administration_ru.properties  |  20 ++
 .../syncope/client/console/pages/BasePage.html  |   2 +-
 .../syncope/client/console/pages/Roles.html |  36 ---
 .../client/console/pages/Roles.properties   |  17 --
 .../client/console/pages/Roles_it.properties|  17 --
 .../client/console/pages/Roles_pt_BR.properties |  17 --
 .../client/console/pages/Roles_ru.properties|  19 --
 .../panels/DynRealmDirectoryPanel.properties|  18 ++
 .../panels/DynRealmDirectoryPanel_it.properties |  18 ++
 .../DynRealmDirectoryPanel_pt_BR.properties |  18 ++
 .../panels/DynRealmDirectoryPanel_ru.properties |  19 ++
 .../console/panels/DynRealmModalPanel.html  |  26 ++
 .../panels/RoleDirectoryPanel.properties|   1 -
 .../panels/RoleDirectoryPanel_it.properties |   1 -
 .../panels/RoleDirectoryPanel_pt_BR.properties  |   1 -
 .../panels/RoleDirectoryPanel_ru.properties |   1 -
 .../client/console/wizards/any/Groups.html  |  17 +-
 .../console/wizards/any/Groups.properties   |   1 +
 .../console/wizards/any/Groups_it.properties|   1 +
 .../console/wizards/any/Groups_pt_BR.properties |   1 +
 .../console/wizards/any/Groups_ru.properties|   1 +
 .../role/RoleWizardBuilder$DynRealms.html   |  28 ++
 .../java/data/DynRealmDataBinderImpl.java   |   7 +-
 .../src/main/resources/console.properties   |   2 +-
 .../syncope/fit/console/AjaxBrowseITCase.java   |   6 +-
 .../apache/syncope/fit/console/RolesITCase.java |  55 ++--
 .../apache/syncope/fit/console/UsersITCase.java |   4 +-
 .../src/test/resources/console.properties   |   2 +-
 62 files changed, 1004 insertions(+), 373 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/a6f6b5c5/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
index 1eedd67..e49f10d 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/commons/Consta

[4/4] syncope git commit: [SYNCOPE-1067] Management from Admin Console

2017-06-09 Thread ilgrosso
[SYNCOPE-1067] Management from Admin Console


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

Branch: refs/heads/master
Commit: 52bd7eb0d8331b884e8b8cdf598670d1a03ccad1
Parents: f74ce5d
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 17:59:22 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 18:00:11 2017 +0200

--
 .../client/console/commons/Constants.java   |   2 +
 .../console/layout/AbstractAnyFormLayout.java   |  10 +
 .../console/layout/AnyObjectFormLayoutInfo.java |  10 -
 .../console/layout/UserFormLayoutInfo.java  |  10 -
 .../console/notifications/TemplateModal.java|   4 +-
 .../client/console/pages/Administration.java|  83 ++
 .../syncope/client/console/pages/BasePage.java  |   6 +-
 .../syncope/client/console/pages/Roles.java |  52 
 .../console/panels/DynRealmDirectoryPanel.java  | 186 +
 .../console/panels/DynRealmModalPanel.java  | 109 
 .../console/panels/RoleDirectoryPanel.java  |   2 +-
 .../console/panels/SecurityQuestionsPanel.java  |   4 +-
 .../client/console/rest/DynRealmRestClient.java |  47 
 .../client/console/rest/RoleRestClient.java |   4 -
 .../html/form/ActionLinksTogglePanel.java   |   8 +-
 .../wicket/markup/html/form/ActionPanel.java|   2 +-
 .../console/widgets/CompletenessWidget.java |   4 +-
 .../client/console/widgets/NumberWidget.java|   4 +-
 .../client/console/wizards/DynRealmWrapper.java |  69 +
 .../client/console/wizards/WizardMgtPanel.java  |   4 +-
 .../console/wizards/any/AnyWizardBuilder.java   |   6 +-
 .../console/wizards/any/GroupWizardBuilder.java |   2 +-
 .../client/console/wizards/any/Groups.java  | 260 +++
 .../console/wizards/role/RoleWizardBuilder.java |  20 +-
 .../src/main/resources/console.properties   |   2 +-
 .../SyncopeConsoleApplication.properties|   1 +
 .../SyncopeConsoleApplication_it.properties |   1 +
 .../SyncopeConsoleApplication_pt_BR.properties  |   1 +
 .../SyncopeConsoleApplication_ru.properties |   1 +
 .../console/notifications/TemplateModal.html|  13 +-
 .../client/console/pages/Administration.html|  36 +++
 .../console/pages/Administration.properties |  18 ++
 .../console/pages/Administration_it.properties  |  18 ++
 .../pages/Administration_pt_BR.properties   |  18 ++
 .../console/pages/Administration_ru.properties  |  20 ++
 .../syncope/client/console/pages/BasePage.html  |   2 +-
 .../syncope/client/console/pages/Roles.html |  36 ---
 .../client/console/pages/Roles.properties   |  17 --
 .../client/console/pages/Roles_it.properties|  17 --
 .../client/console/pages/Roles_pt_BR.properties |  17 --
 .../client/console/pages/Roles_ru.properties|  19 --
 .../panels/DynRealmDirectoryPanel.properties|  18 ++
 .../panels/DynRealmDirectoryPanel_it.properties |  18 ++
 .../DynRealmDirectoryPanel_pt_BR.properties |  18 ++
 .../panels/DynRealmDirectoryPanel_ru.properties |  19 ++
 .../console/panels/DynRealmModalPanel.html  |  26 ++
 .../panels/RoleDirectoryPanel.properties|   1 -
 .../panels/RoleDirectoryPanel_it.properties |   1 -
 .../panels/RoleDirectoryPanel_pt_BR.properties  |   1 -
 .../panels/RoleDirectoryPanel_ru.properties |   1 -
 .../client/console/wizards/any/Groups.html  |  17 +-
 .../console/wizards/any/Groups.properties   |   1 +
 .../console/wizards/any/Groups_it.properties|   1 +
 .../console/wizards/any/Groups_pt_BR.properties |   1 +
 .../console/wizards/any/Groups_ru.properties|   1 +
 .../role/RoleWizardBuilder$DynRealms.html   |  28 ++
 .../java/data/DynRealmDataBinderImpl.java   |   7 +-
 .../src/main/resources/console.properties   |   2 +-
 .../syncope/fit/console/AjaxBrowseITCase.java   |   6 +-
 .../apache/syncope/fit/console/RolesITCase.java |  55 ++--
 .../apache/syncope/fit/console/UsersITCase.java |   4 +-
 .../src/test/resources/console.properties   |   2 +-
 62 files changed, 1002 insertions(+), 371 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/52bd7eb0/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
index 1eedd67..e49f10d 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/commons/Constants.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/commons/Const

[2/2] syncope git commit: [SYNCOPE-1067] Check that any USER / GROUP / ANYOBJECT UPDATE under DynRealm authorization cannot alter the set of DynRealms

2017-06-09 Thread ilgrosso
[SYNCOPE-1067] Check that any USER / GROUP / ANYOBJECT UPDATE under DynRealm 
authorization cannot alter the set of DynRealms


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

Branch: refs/heads/master
Commit: f74ce5dee37f7e5157a3c84f00119d2ffa422e6f
Parents: 8683655
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 11:42:25 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 11:42:36 2017 +0200

--
 .../syncope/core/logic/AbstractAnyLogic.java|  70 +--
 .../syncope/core/logic/AnyObjectLogic.java  |  15 ++-
 .../apache/syncope/core/logic/GroupLogic.java   |  42 ---
 .../apache/syncope/core/logic/UserLogic.java|  24 +++-
 .../api/search/SearchCondConverterTest.java | 126 +--
 .../persistence/jpa/dao/JPAAnyObjectDAO.java|   3 +-
 .../core/persistence/jpa/dao/JPAGroupDAO.java   |   3 +-
 .../core/persistence/jpa/dao/JPAUserDAO.java|   3 +-
 .../rest/cxf/RestServiceExceptionMapper.java|   4 +-
 .../DelegatedAdministrationException.java   |   8 +-
 .../apache/syncope/fit/core/DynRealmITCase.java |  13 ++
 11 files changed, 207 insertions(+), 104 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/f74ce5de/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
--
diff --git 
a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java 
b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
index 066b3d2..7c96979 100644
--- 
a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
+++ 
b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
@@ -167,7 +167,7 @@ public abstract class AbstractAnyLogic ext
 return ImmutablePair.of(any, actions);
 }
 
-protected ProvisioningResult after(
+protected ProvisioningResult afterCreate(
 final TO input, final List statuses, final 
List actions) {
 
 TO any = input;
@@ -183,6 +183,53 @@ public abstract class AbstractAnyLogic ext
 return result;
 }
 
+protected ProvisioningResult afterUpdate(
+final TO input,
+final List statuses,
+final List actions,
+final boolean authDynRealms,
+final Set dynRealmsBefore) {
+
+Set dynRealmsAfter = new HashSet<>(input.getDynRealms());
+if (authDynRealms && !dynRealmsBefore.equals(dynRealmsAfter)) {
+throw new DelegatedAdministrationException(
+this instanceof UserLogic
+? AnyTypeKind.USER
+: this instanceof GroupLogic
+? AnyTypeKind.GROUP
+: AnyTypeKind.ANY_OBJECT,
+input.getKey());
+}
+
+TO any = input;
+
+for (LogicActions action : actions) {
+any = action.afterUpdate(any);
+}
+
+ProvisioningResult result = new ProvisioningResult<>();
+result.setEntity(any);
+result.getPropagationStatuses().addAll(statuses);
+
+return result;
+}
+
+protected ProvisioningResult afterDelete(
+final TO input, final List statuses, final 
List actions) {
+
+TO any = input;
+
+for (LogicActions action : actions) {
+any = action.afterDelete(any);
+}
+
+ProvisioningResult result = new ProvisioningResult<>();
+result.setEntity(any);
+result.getPropagationStatuses().addAll(statuses);
+
+return result;
+}
+
 private static class StartsWithPredicate implements Predicate {
 
 private final Collection targets;
@@ -204,6 +251,14 @@ public abstract class AbstractAnyLogic ext
 
 }
 
+protected static class DynRealmsPredicate implements Predicate {
+
+@Override
+public boolean evaluate(final String realm) {
+return !realm.startsWith("/");
+}
+}
+
 protected Set getEffectiveRealms(final Set allowedRealms, 
final String requestedRealm) {
 Set allowed = RealmUtils.normalize(allowedRealms);
 Set requested = new HashSet<>();
@@ -214,18 +269,12 @@ public abstract class AbstractAnyLogic ext
 CollectionUtils.select(allowed, new StartsWithPredicate(requested), 
effective);
 
 // includes dynamic realms
-CollectionUtils.select(allowedRealms, new Predicate() {
-
-@Override
-public boolean evaluate(final String realm) {
-return !realm.startsWith("/");
-

[1/2] syncope git commit: [SYNCOPE-1067] Check that any USER / GROUP / ANYOBJECT UPDATE under DynRealm authorization cannot alter the set of DynRealms

2017-06-09 Thread ilgrosso
Repository: syncope
Updated Branches:
  refs/heads/2_0_X d6d52e1ac -> 1ad305580
  refs/heads/master 8683655c6 -> f74ce5dee


[SYNCOPE-1067] Check that any USER / GROUP / ANYOBJECT UPDATE under DynRealm 
authorization cannot alter the set of DynRealms


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

Branch: refs/heads/2_0_X
Commit: 1ad3055802d6195dbaaeee186e512d38defdcaad
Parents: d6d52e1
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 11:42:25 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 11:42:25 2017 +0200

--
 .../syncope/core/logic/AbstractAnyLogic.java|  70 +--
 .../syncope/core/logic/AnyObjectLogic.java  |  15 ++-
 .../apache/syncope/core/logic/GroupLogic.java   |  42 ---
 .../apache/syncope/core/logic/UserLogic.java|  24 +++-
 .../api/search/SearchCondConverterTest.java | 126 +--
 .../persistence/jpa/dao/JPAAnyObjectDAO.java|   3 +-
 .../core/persistence/jpa/dao/JPAGroupDAO.java   |   3 +-
 .../core/persistence/jpa/dao/JPAUserDAO.java|   3 +-
 .../rest/cxf/RestServiceExceptionMapper.java|   4 +-
 .../DelegatedAdministrationException.java   |   8 +-
 .../apache/syncope/fit/core/DynRealmITCase.java |  13 ++
 11 files changed, 207 insertions(+), 104 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/1ad30558/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
--
diff --git 
a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java 
b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
index 066b3d2..7c96979 100644
--- 
a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
+++ 
b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractAnyLogic.java
@@ -167,7 +167,7 @@ public abstract class AbstractAnyLogic ext
 return ImmutablePair.of(any, actions);
 }
 
-protected ProvisioningResult after(
+protected ProvisioningResult afterCreate(
 final TO input, final List statuses, final 
List actions) {
 
 TO any = input;
@@ -183,6 +183,53 @@ public abstract class AbstractAnyLogic ext
 return result;
 }
 
+protected ProvisioningResult afterUpdate(
+final TO input,
+final List statuses,
+final List actions,
+final boolean authDynRealms,
+final Set dynRealmsBefore) {
+
+Set dynRealmsAfter = new HashSet<>(input.getDynRealms());
+if (authDynRealms && !dynRealmsBefore.equals(dynRealmsAfter)) {
+throw new DelegatedAdministrationException(
+this instanceof UserLogic
+? AnyTypeKind.USER
+: this instanceof GroupLogic
+? AnyTypeKind.GROUP
+: AnyTypeKind.ANY_OBJECT,
+input.getKey());
+}
+
+TO any = input;
+
+for (LogicActions action : actions) {
+any = action.afterUpdate(any);
+}
+
+ProvisioningResult result = new ProvisioningResult<>();
+result.setEntity(any);
+result.getPropagationStatuses().addAll(statuses);
+
+return result;
+}
+
+protected ProvisioningResult afterDelete(
+final TO input, final List statuses, final 
List actions) {
+
+TO any = input;
+
+for (LogicActions action : actions) {
+any = action.afterDelete(any);
+}
+
+ProvisioningResult result = new ProvisioningResult<>();
+result.setEntity(any);
+result.getPropagationStatuses().addAll(statuses);
+
+return result;
+}
+
 private static class StartsWithPredicate implements Predicate {
 
 private final Collection targets;
@@ -204,6 +251,14 @@ public abstract class AbstractAnyLogic ext
 
 }
 
+protected static class DynRealmsPredicate implements Predicate {
+
+@Override
+public boolean evaluate(final String realm) {
+return !realm.startsWith("/");
+}
+}
+
 protected Set getEffectiveRealms(final Set allowedRealms, 
final String requestedRealm) {
 Set allowed = RealmUtils.normalize(allowedRealms);
 Set requested = new HashSet<>();
@@ -214,18 +269,12 @@ public abstract class AbstractAnyLogic ext
 CollectionUtils.select(allowed, new StartsWithPredicate(requested), 
effective);
 
 // includes dynamic realms
-CollectionUtils.select(allowedRealms, new Predicate() {
-
-  

[2/2] syncope git commit: [SYNCOPE-1067] Fix test execution

2017-06-09 Thread ilgrosso
[SYNCOPE-1067] Fix test execution


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

Branch: refs/heads/master
Commit: 8683655c629421139ac81c641114153f7c01485f
Parents: a1bb672
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 09:53:54 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 09:54:04 2017 +0200

--
 .../apache/syncope/fit/core/DynRealmITCase.java | 33 ++--
 .../syncope/fit/core/ExceptionMapperITCase.java |  2 +-
 2 files changed, 17 insertions(+), 18 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/8683655c/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
--
diff --git 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
index e773716..1ad59ea 100644
--- 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
+++ 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
@@ -113,13 +113,12 @@ public class DynRealmITCase extends AbstractITCase {
 role = createRole(role);
 assertNotNull(role);
 
-// 3. assign the new role to vivaldi
-UserPatch userPatch = new UserPatch();
-userPatch.setKey("b3cbc78d-32e6-4bd4-92e0-bbe07566a2ee");
-userPatch.getRoles().add(new 
StringPatchItem.Builder().value(role.getKey()).build());
-UserTO vivaldi = updateUser(userPatch).getEntity();
-assertNotNull(vivaldi);
-assertTrue(vivaldi.getRoles().contains(role.getKey()));
+// 3. create new user and assign the new role
+UserTO dynRealmAdmin = 
UserITCase.getUniqueSampleTO("dynrealmad...@apache.org");
+dynRealmAdmin.setPassword("password123");
+dynRealmAdmin.getRoles().add(role.getKey());
+dynRealmAdmin = createUser(dynRealmAdmin).getEntity();
+assertNotNull(dynRealmAdmin);
 
 // 4. create new user and group, assign resource-ldap
 UserTO user = 
UserITCase.getUniqueSampleTO("dynrealmu...@apache.org");
@@ -158,20 +157,20 @@ public class DynRealmITCase extends AbstractITCase {
 }
 }));
 
-// 6. perpare to act as vivaldi
-SyncopeClient vivaldiClient = clientFactory.create("vivaldi", 
ADMIN_PWD);
-UserService vivaldiUserService = 
vivaldiClient.getService(UserService.class);
-GroupService vivaldiGroupService = 
vivaldiClient.getService(GroupService.class);
+// 6. prepare to act as delegated admin
+SyncopeClient delegatedClient = 
clientFactory.create(dynRealmAdmin.getUsername(), "password123");
+UserService delegatedUserService = 
delegatedClient.getService(UserService.class);
+GroupService delegatedGroupService = 
delegatedClient.getService(GroupService.class);
 
 // 7. verify delegated administration
 // USER_READ
-assertNotNull(vivaldiUserService.read(userKey));
+assertNotNull(delegatedUserService.read(userKey));
 
 // GROUP_READ
-assertNotNull(vivaldiGroupService.read(groupKey));
+assertNotNull(delegatedGroupService.read(groupKey));
 
 // USER_SEARCH
-matchingUsers = vivaldiUserService.search(new 
AnyQuery.Builder().realm("/").build());
+matchingUsers = delegatedUserService.search(new 
AnyQuery.Builder().realm("/").build());
 assertTrue(IterableUtils.matchesAny(matchingUsers.getResult(), new 
Predicate() {
 
 @Override
@@ -181,10 +180,10 @@ public class DynRealmITCase extends AbstractITCase {
 }));
 
 // USER_UPDATE
-userPatch = new UserPatch();
+UserPatch userPatch = new UserPatch();
 userPatch.setKey(userKey);
 userPatch.getResources().add(new 
StringPatchItem.Builder().value(RESOURCE_NAME_NOPROPAGATION).build());
-user = vivaldiUserService.update(userPatch).
+user = delegatedUserService.update(userPatch).
 readEntity(new GenericType>() {
 }).getEntity();
 assertNotNull(user);
@@ -194,7 +193,7 @@ public class DynRealmITCase extends AbstractITCase {
 GroupPatch groupPatch = new GroupPatch();
 groupPatch.setKey(groupKey);
 groupPatch.getPlainAttrs().add(new 
AttrPatch.Builder().attrTO(attrTO("icon", "modified

[1/2] syncope git commit: [SYNCOPE-1067] Fix test execution

2017-06-09 Thread ilgrosso
Repository: syncope
Updated Branches:
  refs/heads/2_0_X 062c87a25 -> d6d52e1ac
  refs/heads/master a1bb67231 -> 8683655c6


[SYNCOPE-1067] Fix test execution


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

Branch: refs/heads/2_0_X
Commit: d6d52e1aca563168c3ad53f17ca0d9ae9370d427
Parents: 062c87a
Author: Francesco Chicchiriccò 
Authored: Fri Jun 9 09:53:54 2017 +0200
Committer: Francesco Chicchiriccò 
Committed: Fri Jun 9 09:53:54 2017 +0200

--
 .../apache/syncope/fit/core/DynRealmITCase.java | 33 ++--
 .../syncope/fit/core/ExceptionMapperITCase.java |  2 +-
 2 files changed, 17 insertions(+), 18 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/d6d52e1a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
--
diff --git 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
index e773716..1ad59ea 100644
--- 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
+++ 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/DynRealmITCase.java
@@ -113,13 +113,12 @@ public class DynRealmITCase extends AbstractITCase {
 role = createRole(role);
 assertNotNull(role);
 
-// 3. assign the new role to vivaldi
-UserPatch userPatch = new UserPatch();
-userPatch.setKey("b3cbc78d-32e6-4bd4-92e0-bbe07566a2ee");
-userPatch.getRoles().add(new 
StringPatchItem.Builder().value(role.getKey()).build());
-UserTO vivaldi = updateUser(userPatch).getEntity();
-assertNotNull(vivaldi);
-assertTrue(vivaldi.getRoles().contains(role.getKey()));
+// 3. create new user and assign the new role
+UserTO dynRealmAdmin = 
UserITCase.getUniqueSampleTO("dynrealmad...@apache.org");
+dynRealmAdmin.setPassword("password123");
+dynRealmAdmin.getRoles().add(role.getKey());
+dynRealmAdmin = createUser(dynRealmAdmin).getEntity();
+assertNotNull(dynRealmAdmin);
 
 // 4. create new user and group, assign resource-ldap
 UserTO user = 
UserITCase.getUniqueSampleTO("dynrealmu...@apache.org");
@@ -158,20 +157,20 @@ public class DynRealmITCase extends AbstractITCase {
 }
 }));
 
-// 6. perpare to act as vivaldi
-SyncopeClient vivaldiClient = clientFactory.create("vivaldi", 
ADMIN_PWD);
-UserService vivaldiUserService = 
vivaldiClient.getService(UserService.class);
-GroupService vivaldiGroupService = 
vivaldiClient.getService(GroupService.class);
+// 6. prepare to act as delegated admin
+SyncopeClient delegatedClient = 
clientFactory.create(dynRealmAdmin.getUsername(), "password123");
+UserService delegatedUserService = 
delegatedClient.getService(UserService.class);
+GroupService delegatedGroupService = 
delegatedClient.getService(GroupService.class);
 
 // 7. verify delegated administration
 // USER_READ
-assertNotNull(vivaldiUserService.read(userKey));
+assertNotNull(delegatedUserService.read(userKey));
 
 // GROUP_READ
-assertNotNull(vivaldiGroupService.read(groupKey));
+assertNotNull(delegatedGroupService.read(groupKey));
 
 // USER_SEARCH
-matchingUsers = vivaldiUserService.search(new 
AnyQuery.Builder().realm("/").build());
+matchingUsers = delegatedUserService.search(new 
AnyQuery.Builder().realm("/").build());
 assertTrue(IterableUtils.matchesAny(matchingUsers.getResult(), new 
Predicate() {
 
 @Override
@@ -181,10 +180,10 @@ public class DynRealmITCase extends AbstractITCase {
 }));
 
 // USER_UPDATE
-userPatch = new UserPatch();
+UserPatch userPatch = new UserPatch();
 userPatch.setKey(userKey);
 userPatch.getResources().add(new 
StringPatchItem.Builder().value(RESOURCE_NAME_NOPROPAGATION).build());
-user = vivaldiUserService.update(userPatch).
+user = delegatedUserService.update(userPatch).
 readEntity(new GenericType>() {
 }).getEntity();
 assertNotNull(user);
@@ -194,7 +193,7 @@ public class DynRealmITCase extends AbstractITCase {
 GroupPatch groupPatch = new GroupPatch();
 group