syncope git commit: [SYNCOPE-1267] New binary Schema validator to check MIME types

2018-02-06 Thread skylark17
Repository: syncope
Updated Branches:
  refs/heads/master f34f1f40d -> 52c0ad3f2


[SYNCOPE-1267] New binary Schema validator to check MIME types


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

Branch: refs/heads/master
Commit: 52c0ad3f2f5d6259ce583a0817ce2dbf10ceecf4
Parents: f34f1f4
Author: skylark17 
Authored: Tue Feb 6 15:51:35 2018 +0100
Committer: skylark17 
Committed: Tue Feb 6 15:51:35 2018 +0100

--
 .../console/panels/PlainSchemaDetails.java  |  16 +++-
 core/persistence-jpa/pom.xml|   5 +
 .../attrvalue/validation/BinaryValidator.java   |  78 +++
 .../main/resources/domains/MasterContent.xml|   3 +
 .../jpa/inner/ImplementationTest.java   |   4 +-
 .../test/resources/domains/MasterContent.xml|   3 +
 .../java/data/AbstractAnyDataBinder.java|   7 +-
 .../core/reference/ITImplementationLookup.java  |   2 +
 .../syncope/fit/core/PlainSchemaITCase.java |  95 +++
 fit/core-reference/src/test/resources/test.html |  30 ++
 fit/core-reference/src/test/resources/test.json |   3 +
 fit/core-reference/src/test/resources/test.pdf  | Bin 0 -> 8603 bytes
 fit/core-reference/src/test/resources/test.xml  |  24 +
 pom.xml |   8 ++
 14 files changed, 273 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/52c0ad3f/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
index e79c013..c996bcc 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
@@ -67,6 +67,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 
 private final MultiFieldPanel enumerationKeys;
 
+private final AjaxDropDownChoicePanel validator;
+
 public PlainSchemaDetails(
 final String id,
 final PageReference pageReference,
@@ -233,6 +235,7 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams, mimeType);
 target.add(conversionParams);
 target.add(typeParams);
+target.add(validator);
 }
 }
 );
@@ -247,8 +250,9 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 
map(EntityTO::getKey).sorted().collect(Collectors.toList());
 }
 };
-final AjaxDropDownChoicePanel validator = new 
AjaxDropDownChoicePanel<>("validator",
+validator = new AjaxDropDownChoicePanel<>("validator",
 getString("validator"), new PropertyModel<>(schemaTO, 
"validator"));
+validator.setOutputMarkupId(true);
 ((DropDownChoice) validator.getField()).setNullValid(true);
 validator.setChoices(validators.getObject());
 schemaForm.add(validator);
@@ -330,6 +334,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidator(null);
 } else if (AttrSchemaType.Enum.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@@ -356,6 +362,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidator(null);
 } else if (AttrSchemaType.Encrypted.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@@ -378,6 +386,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidator(null);
 } else if (AttrSchemaType.Binary.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@

syncope git commit: [SYNCOPE-1267] New binary Schema validator to check MIME types

2018-02-06 Thread skylark17
Repository: syncope
Updated Branches:
  refs/heads/2_0_X b8993d236 -> 8ebb5013b


[SYNCOPE-1267] New binary Schema validator to check MIME types


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

Branch: refs/heads/2_0_X
Commit: 8ebb5013bd644a733a505b42d7b217faa9193150
Parents: b8993d2
Author: skylark17 
Authored: Tue Feb 6 14:22:41 2018 +0100
Committer: skylark17 
Committed: Tue Feb 6 14:25:23 2018 +0100

--
 .../console/panels/PlainSchemaDetails.java  |  17 +++-
 core/persistence-jpa/pom.xml|   5 +
 .../attrvalue/validation/BinaryValidator.java   |  84 
 .../java/data/AbstractAnyDataBinder.java|   7 +-
 .../core/reference/ITImplementationLookup.java  |   2 +
 .../syncope/fit/core/PlainSchemaITCase.java |  95 +++
 fit/core-reference/src/test/resources/test.html |  30 ++
 fit/core-reference/src/test/resources/test.json |   3 +
 fit/core-reference/src/test/resources/test.pdf  | Bin 0 -> 8603 bytes
 fit/core-reference/src/test/resources/test.xml  |  24 +
 pom.xml |   8 ++
 11 files changed, 272 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/syncope/blob/8ebb5013/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
--
diff --git 
a/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
 
b/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
index 4cd80b7..686b1bd 100644
--- 
a/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
+++ 
b/client/console/src/main/java/org/apache/syncope/client/console/panels/PlainSchemaDetails.java
@@ -62,6 +62,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 
 private final MultiFieldPanel enumerationKeys;
 
+private final AjaxDropDownChoicePanel validatorClass;
+
 public PlainSchemaDetails(
 final String id,
 final PageReference pageReference,
@@ -228,6 +230,7 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams, mimeType);
 target.add(conversionParams);
 target.add(typeParams);
+target.add(validatorClass);
 }
 }
 );
@@ -241,8 +244,9 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 return new 
ArrayList<>(SyncopeConsoleSession.get().getPlatformInfo().getValidators());
 }
 };
-final AjaxDropDownChoicePanel validatorClass = new 
AjaxDropDownChoicePanel<>("validatorClass",
+validatorClass = new AjaxDropDownChoicePanel<>("validatorClass",
 getString("validatorClass"), new 
PropertyModel(schemaTO, "validatorClass"));
+validatorClass.setOutputMarkupId(true);
 ((DropDownChoice) validatorClass.getField()).setNullValid(true);
 validatorClass.setChoices(validatorsList.getObject());
 schemaForm.add(validatorClass);
@@ -324,6 +328,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidatorClass(null);
 } else if (AttrSchemaType.Enum.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@@ -350,6 +356,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidatorClass(null);
 } else if (AttrSchemaType.Encrypted.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@@ -372,6 +380,8 @@ public class PlainSchemaDetails extends 
AbstractSchemaDetailsPanel {
 binaryParams.setVisible(false);
 mimeType.setModelObject(null);
 mimeType.setChoices(null);
+
+PlainSchemaTO.class.cast(schema).setValidatorClass(null);
 } else if (AttrSchemaType.Binary.ordinal() == typeOrdinal) {
 conversionParams.setVisible(false);
 conversionPattern.setModelObject(null);
@@ -395,6 +405,9 @@ public class PlainSchemaDetails extends 
AbstractSchemaDeta