You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/10/16 10:44:25 UTC
[isis] 01/38: ISIS-1742: renames facet factories for @Pattern
annotation, updates .adocs
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch dev/2.0.0/ISIS-1742-remove-deprecations
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 8c61f9f548ff0ae404cfa634916f8ae0d68fc8ce
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Thu Oct 12 07:19:05 2017 +0100
ISIS-1742: renames facet factories for @Pattern annotation, updates .adocs
---
.../main/asciidoc/guides/rgant/_rgant-Pattern.adoc | 21 ++++++++++++++++++---
.../parameter/ParameterAnnotationFacetFactory.java | 5 +++--
... RegExFacetForPatternAnnotationOnParameter.java} | 6 +++---
.../property/PropertyAnnotationFacetFactory.java | 4 ++--
...> RegExFacetForPatternAnnotationOnProperty.java} | 6 +++---
.../RegExAnnotationOnParameterFacetFactoryTest.java | 6 +++---
.../RegExAnnotationOnPropertyFacetFactoryTest.java | 6 +++---
todo-deprecation-list.txt | 20 ++++++++++----------
8 files changed, 45 insertions(+), 29 deletions(-)
diff --git a/adocs/documentation/src/main/asciidoc/guides/rgant/_rgant-Pattern.adoc b/adocs/documentation/src/main/asciidoc/guides/rgant/_rgant-Pattern.adoc
index a2ed03c..a9caa05 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgant/_rgant-Pattern.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgant/_rgant-Pattern.adoc
@@ -8,7 +8,23 @@
The `@javax.validation.constraints.Pattern` annotation is recognized by Apache Isis as a means to specify a regular expression constraint for properties and action parameters of type `java.lang.String`.
-For example:
+For example, here's the annotation being used on an action parameter:
+
+[source,java]
+----
+public Customer updateName(
+ @javax.validation.constraints.Pattern(
+ regexp="[A-Z].+"
+ message="Must begin with a capital."
+ )
+ final String name) {
+ setName(name);
+ return this
+}
+...
+----
+
+and here's an example of its use on a property:
[source,java]
----
@@ -23,8 +39,7 @@ public String getName() {
----
-It is also possible to specify against a field if Lombok is being used:
-
+For properties, it is also possible to specify against a field if Lombok is being used:
[source,java]
----
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/ParameterAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/ParameterAnnotationFacetFactory.java
index 5bbf69a..b89d761 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/ParameterAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/ParameterAnnotationFacetFactory.java
@@ -41,7 +41,7 @@ import org.apache.isis.core.metamodel.facets.param.parameter.mandatory.Mandatory
import org.apache.isis.core.metamodel.facets.param.parameter.maxlen.MaxLengthFacetForParameterAnnotation;
import org.apache.isis.core.metamodel.facets.param.parameter.mustsatisfy.MustSatisfySpecificationFacetForParameterAnnotation;
import org.apache.isis.core.metamodel.facets.param.parameter.regex.RegExFacetForParameterAnnotation;
-import org.apache.isis.core.metamodel.facets.param.parameter.regex.RegExFacetFromRegExAnnotationOnParameter;
+import org.apache.isis.core.metamodel.facets.param.parameter.regex.RegExFacetForPatternAnnotationOnParameter;
import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidatorComposite;
import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidatorForConflictingOptionality;
@@ -118,7 +118,8 @@ public class ParameterAnnotationFacetFactory extends FacetFactoryAbstract implem
if (parameterAnnotation instanceof Pattern) {
final Pattern annotation = (Pattern) parameterAnnotation;
- final RegExFacet facet = RegExFacetFromRegExAnnotationOnParameter.create(annotation, parameterType, holder);
+ final RegExFacet facet = RegExFacetForPatternAnnotationOnParameter
+ .create(annotation, parameterType, holder);
FacetUtil.addFacet(facet);
return;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetFromRegExAnnotationOnParameter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetForPatternAnnotationOnParameter.java
similarity index 90%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetFromRegExAnnotationOnParameter.java
rename to core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetForPatternAnnotationOnParameter.java
index 65d062d..4b5aec0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetFromRegExAnnotationOnParameter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/regex/RegExFacetForPatternAnnotationOnParameter.java
@@ -26,7 +26,7 @@ import org.apache.isis.core.metamodel.facets.Annotations;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacet;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacetAbstract;
-public class RegExFacetFromRegExAnnotationOnParameter extends RegExFacetAbstract {
+public class RegExFacetForPatternAnnotationOnParameter extends RegExFacetAbstract {
private final Pattern pattern;
@@ -42,10 +42,10 @@ public class RegExFacetFromRegExAnnotationOnParameter extends RegExFacetAbstract
final javax.validation.constraints.Pattern.Flag[] flags = annotation.flags();
final String message = annotation.message();
- return new RegExFacetFromRegExAnnotationOnParameter(regexp, flags, message, holder);
+ return new RegExFacetForPatternAnnotationOnParameter(regexp, flags, message, holder);
}
- private RegExFacetFromRegExAnnotationOnParameter(
+ private RegExFacetForPatternAnnotationOnParameter(
final String regexp,
final javax.validation.constraints.Pattern.Flag[] flags,
final String message, final FacetHolder holder) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactory.java
index 4f18375..0aac427 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactory.java
@@ -63,7 +63,7 @@ import org.apache.isis.core.metamodel.facets.properties.property.mustsatisfy.Mus
import org.apache.isis.core.metamodel.facets.properties.property.notpersisted.NotPersistedFacetForPropertyAnnotation;
import org.apache.isis.core.metamodel.facets.properties.property.publishing.PublishedPropertyFacetForPropertyAnnotation;
import org.apache.isis.core.metamodel.facets.properties.property.regex.RegExFacetForPropertyAnnotation;
-import org.apache.isis.core.metamodel.facets.properties.property.regex.RegExFacetForRegExAnnotationOnProperty;
+import org.apache.isis.core.metamodel.facets.properties.property.regex.RegExFacetForPatternAnnotationOnProperty;
import org.apache.isis.core.metamodel.facets.properties.publish.PublishedPropertyFacet;
import org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet;
import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet;
@@ -314,7 +314,7 @@ public class PropertyAnnotationFacetFactory extends FacetFactoryAbstract impleme
// check for @Pattern first
final Pattern annotation = Annotations.getAnnotation(processMethodContext.getMethod(), Pattern.class);
- RegExFacet facet = RegExFacetForRegExAnnotationOnProperty.create(annotation, returnType, holder);
+ RegExFacet facet = RegExFacetForPatternAnnotationOnProperty.create(annotation, returnType, holder);
// else search for @Property(pattern=...)
final Property property = Annotations.getAnnotation(method, Property.class);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForRegExAnnotationOnProperty.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForPatternAnnotationOnProperty.java
similarity index 90%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForRegExAnnotationOnProperty.java
rename to core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForPatternAnnotationOnProperty.java
index c4f2374..4db36e6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForRegExAnnotationOnProperty.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/regex/RegExFacetForPatternAnnotationOnProperty.java
@@ -26,7 +26,7 @@ import org.apache.isis.core.metamodel.facets.Annotations;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacet;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacetAbstract;
-public class RegExFacetForRegExAnnotationOnProperty extends RegExFacetAbstract {
+public class RegExFacetForPatternAnnotationOnProperty extends RegExFacetAbstract {
private final Pattern pattern;
@@ -45,10 +45,10 @@ public class RegExFacetForRegExAnnotationOnProperty extends RegExFacetAbstract {
final javax.validation.constraints.Pattern.Flag[] flags = annotation.flags();
final String message = annotation.message();
- return new RegExFacetForRegExAnnotationOnProperty(regexp, flags, message, holder);
+ return new RegExFacetForPatternAnnotationOnProperty(regexp, flags, message, holder);
}
- private RegExFacetForRegExAnnotationOnProperty(
+ private RegExFacetForPatternAnnotationOnProperty(
final String regexp,
final javax.validation.constraints.Pattern.Flag[] flags,
final String replacement,
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/parameter/RegExAnnotationOnParameterFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/parameter/RegExAnnotationOnParameterFacetFactoryTest.java
index dad822b..6e31584 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/parameter/RegExAnnotationOnParameterFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/parameter/RegExAnnotationOnParameterFacetFactoryTest.java
@@ -29,7 +29,7 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessParameterContext;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacet;
-import org.apache.isis.core.metamodel.facets.param.parameter.regex.RegExFacetFromRegExAnnotationOnParameter;
+import org.apache.isis.core.metamodel.facets.param.parameter.regex.RegExFacetForPatternAnnotationOnParameter;
public class RegExAnnotationOnParameterFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -54,8 +54,8 @@ public class RegExAnnotationOnParameterFacetFactoryTest extends AbstractFacetFac
final Facet facet = facetedMethodParameter.getFacet(RegExFacet.class);
assertNotNull(facet);
- assertTrue(facet instanceof RegExFacetFromRegExAnnotationOnParameter);
- final RegExFacetFromRegExAnnotationOnParameter regExFacet = (RegExFacetFromRegExAnnotationOnParameter) facet;
+ assertTrue(facet instanceof RegExFacetForPatternAnnotationOnParameter);
+ final RegExFacetForPatternAnnotationOnParameter regExFacet = (RegExFacetForPatternAnnotationOnParameter) facet;
assertEquals("^A.*", regExFacet.regexp());
assertEquals(2, regExFacet.patternFlags());
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/property/RegExAnnotationOnPropertyFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/property/RegExAnnotationOnPropertyFacetFactoryTest.java
index ae80d5a..dbc81e7 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/property/RegExAnnotationOnPropertyFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/property/RegExAnnotationOnPropertyFacetFactoryTest.java
@@ -29,7 +29,7 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
import org.apache.isis.core.metamodel.facets.objectvalue.regex.RegExFacet;
-import org.apache.isis.core.metamodel.facets.properties.property.regex.RegExFacetForRegExAnnotationOnProperty;
+import org.apache.isis.core.metamodel.facets.properties.property.regex.RegExFacetForPatternAnnotationOnProperty;
public class RegExAnnotationOnPropertyFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -56,8 +56,8 @@ public class RegExAnnotationOnPropertyFacetFactoryTest extends AbstractFacetFact
final Facet facet = facetedMethod.getFacet(RegExFacet.class);
assertNotNull(facet);
- assertTrue(facet instanceof RegExFacetForRegExAnnotationOnProperty);
- final RegExFacetForRegExAnnotationOnProperty regExFacet = (RegExFacetForRegExAnnotationOnProperty) facet;
+ assertTrue(facet instanceof RegExFacetForPatternAnnotationOnProperty);
+ final RegExFacetForPatternAnnotationOnProperty regExFacet = (RegExFacetForPatternAnnotationOnProperty) facet;
assertEquals("^A.*", regExFacet.regexp());
assertEquals(2, regExFacet.patternFlags());
}
diff --git a/todo-deprecation-list.txt b/todo-deprecation-list.txt
index a162047..527930b 100644
--- a/todo-deprecation-list.txt
+++ b/todo-deprecation-list.txt
@@ -8,15 +8,6 @@ org.apache.isis.applib
DomainObjectContainer.java - entire class
-org.apache.isis.applib.annotation
-
-
-
- RegEx.java - entire annotation, use @Property(regexPatternFlags=...) or @Parameter(regexPatternFlags=...) instead; or alternatively NEW SUPPORT for JSR-303 @Pattern annotation (http://beanvalidation.org/1.0/spec/, chapter 6).
-
-
-
-
org.apache.isis.applib.clock
Clock.java -
@@ -261,7 +252,13 @@ org.apache.isis.applib.services.command
*************************************************************************
-DONE:
+DONE (ADDED)
+
+ new support for JSR-303 @Pattern annotation (http://beanvalidation.org/1.0/spec/, chapter 6) ... replaces @RegEx
+
+
+
+DONE (REMOVED):
removed support for Xxx.layout.json
- "reflector.layoutMetadataReaders" config prop
@@ -359,6 +356,9 @@ org.apache.isis.applib.annotation
MustSatisfy.java - entire annotation, use @Property(mustSatisfy=....) or @Parameter(mustSatisfy=...) instead
+ RegEx.java - entire annotation, use @Property(regexPatternFlags=...) or @Parameter(regexPatternFlags=...) instead;
+
+
RenderedAsDayBefore.java - entire annotation, use @PropertyLayout(renderedAsDayBefore=...) and @ParameterLayout(renderedAsDayBefore=...)
Paged.java - entire annotation, use @DomainObjectLayout(paged=...) or @CollectionLayout(paged=...) instead.
--
To stop receiving notification emails like this one, please contact
"commits@isis.apache.org" <co...@isis.apache.org>.