This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/causeway.git
commit ff09b97050e538f884c325223d9a99c4e7175485 Author: danhaywood <[email protected]> AuthorDate: Sun Apr 23 18:11:12 2023 +0100 CAUSEWAY-2485: simplifies @Property#repainting --- .../PropertyLayout/PropertyLayoutMenu.java | 5 +- .../PropertyLayoutRepaintingPage-description.adoc | 104 +++------------------ .../repainting/PropertyLayoutRepaintingPage.java | 58 ++---------- .../PropertyLayoutRepaintingPage.layout.xml | 8 +- ...PropertyLayoutRepaintingPage_mixinProperty.java | 50 ---------- ...intingPage_mixinPropertyWithMetaAnnotation.java | 49 ---------- ..._mixinPropertyWithMetaAnnotationOverridden.java | 52 ----------- .../RepaintingNoRepaintMetaAnnotation.java | 41 -------- .../RepaintingRepaintMetaAnnotation.java | 41 -------- ...anticsDateRenderAdjustDaysPage-description.adoc | 4 +- 10 files changed, 32 insertions(+), 380 deletions(-) diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java index 4514365239..1ba39c7162 100644 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java +++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/PropertyLayoutMenu.java @@ -134,10 +134,7 @@ public class PropertyLayoutMenu { .filter(x -> CommonMimeType.PDF.matches(x.getMimeType())) .findFirst() .ifPresent(pdfBlob -> { - vm.setPropertyUsingAnnotation(pdfBlob); - vm.setPropertyUsingLayout(pdfBlob); - vm.setPropertyUsingMetaAnnotation(pdfBlob); - vm.setPropertyUsingMetaAnnotationButOverridden(pdfBlob); + vm.setBlob(pdfBlob); }); return vm; } diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage-description.adoc index 2ed9b11343..5ef1fa2c7c 100644 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage-description.adoc +++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage-description.adoc @@ -1,114 +1,38 @@ :Notice: 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 ag [...] +WARNING: this functionality is currently *not* supported by the Wicket viewer; see link:https://issues.apache.org/jira/browse/CAUSEWAY-1659[CAUSEWAY-1659]. + The `repainting` attribute indicates that the value held by the property never changes over time, even when other properties of the object do change. When set to "no repaint", the viewer uses this element to not repaint the property after an AJAX update even if some other property/ies of the object have changed. -* for properties, the attribute can be specified using either the `@PropertyLayout` annotation, or using the `Xxx.layout.xml` layout file. +* for properties, the attribute can be specified using either the link:https://causeway.apache.org/refguide/2.0.0-RC1/applib/index/annotation/PropertyLayout.html#repainting[@PropertyLayout#repainting] annotation, or using the link:https://causeway.apache.org/userguide/2.0.0-RC1/fun/ui.html#by-example[.layout.xml] layout file. The attribute does _not_ apply for action parameters. -The primarily use case for performance, eg can improve the user experience when rendering PDFs/blobs. +The primary use case for performance, for example so that large PDFs/blobs do not need to be re-rendered. IMPORTANT: if there are multiple blobs or clobs, then _all_ must specify "NO REPAINT". Said another way: if only one blob/clob property requires a repaint, then all will be repainted. -== Annotated - -The (no) repainting hint can be specified explicitly using an annotation: - -* for properties, using `@PropertyLayout#repainting()`: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage.java[tags=annotation] ----- -<.> explicitly specifies that the property should not be repainted -<.> The Wicket pdf.js extension will render this Blob as a PDF - -== Layout File - -For properties (not parameters), the `renderDay` attribute can be specified using the `Xxx.layout.xml` file: +== How this demo works -* property definition: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage.java[tags=layout-file] ----- -<.> `repainting` hint is _not_ present. - -* layout file snippet: -+ -[source,xml,indent=0,tabsize=4] ----- -<cpt:property id="propertyUsingLayout" repainting="NO_REPAINT"/> ----- +This page contains two properties. -One advantage of the layout file over the annotation is that the layout file is dynamic: it can be modified and the changes reloaded in a running application. +* The `editMe` property is to demonstrate a change in state can be made. -TIP: It is sometimes necessary to invoke the `Rebuild Metamodel` action to see this take effect. +* The `blob` property holds a PDF and moreover is annotated with link:https://causeway.apache.org/refguide/2.0.0-RC1/extensions/index/pdfjs/applib/annotations/PdfJsViewer.html[@PdfJsViewer] so that it is rendered using PDF.js. +From a usability perspective, we don't want the page to redraw - in particluar, the `blob` property - if all that has changed is the `editMe` property. -== Contributed - -The `@PropertyLayout` can also be applied at the class-level to mixin properties:. +The (no) repainting hint is specified explicitly using `@PropertyLayout#repainting()`: [source,java,indent=0] ---- -include::PropertyLayoutRepaintingPage_mixinProperty.java[tags=class] ----- -<.> explicitly specifies that the contributed property should not be repainted. - -== Meta-annotated - -The (no) repainting element can also be specified using a custom meta-annotation: - -* the meta-annotation is defined as: -+ -[source,java] ----- -include::RepaintingNoRepaintMetaAnnotation.java[tags=class] ----- -<.> annotated for a property (there is no equivalent for parameters) -<.> annotation can be applied to a property (either its getter or the field directly) -<.> annotation can be applied to a type (ie, meta-meta annotations recursively) - -* and can be applied to a property: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage.java[tags=meta-annotated] ----- -<.> hint is inherited from the meta-annotation - -* or can be applied to mixin: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotation.java[tags=class] ----- -<.> hint is inherited from the meta-annotation - -=== Meta-annotated Overridden - -The meta-annotation can itself be overridden: - -* in a property: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage.java[tags=meta-annotated-overridden] +include::PropertyLayoutRepaintingPage.java[tags=annotation] ---- -<.> hint from meta-annotation ... -<.> \... is overridden by the `@PropertyLayout` annotation +<.> explicitly specifies that the property should not be repainted +<.> The Wicket pdf.js extension will render this Blob as a PDF +TIP: this annotation can also be combined with link:https://causeway.apache.org/refguide/2.0.0-RC1/applib/index/annotation/ActionLayout.html#redirectpolicy[@ActionLayout#redirectPolicy]. -* or a mixin: -+ -[source,java,indent=0] ----- -include::PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotationOverridden.java[tags=meta-annotation-overridden] ----- -<.> hint from meta-annotation ... -<.> \... is overridden by the `@PropertyLayout` annotation diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.java index 3c481bf995..ec71271178 100644 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.java +++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.java @@ -42,12 +42,11 @@ import lombok.Setter; import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription; //tag::class[] +@Named("demo.PropertyLayoutRepaintingPage") @XmlRootElement(name = "root") @XmlType @XmlAccessorType(XmlAccessType.FIELD) -@Named("demo.PropertyLayoutRepaintingVm") -@DomainObject( - nature=Nature.VIEW_MODEL) +@DomainObject(nature=Nature.VIEW_MODEL) public class PropertyLayoutRepaintingPage implements HasAsciiDocDescription { @ObjectSupport public String title() { @@ -57,9 +56,8 @@ public class PropertyLayoutRepaintingPage implements HasAsciiDocDescription { @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL) @PropertyLayout( describedAs = - "Editable property " + - "(PDFs should not repaint if it changes)", - fieldSetId = "edit", sequence = "1") + "Editable property (PDF should not repaint if it changes)" + ) @XmlElement(required = false) @Getter @Setter private String editMe; @@ -67,53 +65,13 @@ public class PropertyLayoutRepaintingPage implements HasAsciiDocDescription { //tag::annotation[] @Property() @PropertyLayout( - repainting = Repainting.NO_REPAINT // <.> - , describedAs = - "@PropertyLayout(repainting = NO_REPAINT)", - fieldSetId = "annotation", sequence = "1") + repainting = Repainting.NO_REPAINT // <.> + ) @XmlElement(required = true) - @PdfJsViewer // <.> + @PdfJsViewer // <.> @Getter @Setter - private Blob propertyUsingAnnotation; + private Blob blob; //end::annotation[] -//tag::layout-file[] - @Property(optionality = Optionality.OPTIONAL) - @PropertyLayout( // <.> - describedAs = - "<cpt:property id=\"...\" repainting = \"NO_REPAINT\"/>", - fieldSetId = "layout-file", sequence = "1") - @XmlElement(required = false) -// @PdfJsViewer - @Getter @Setter - private Blob propertyUsingLayout; -//end::layout-file[] - -//tag::meta-annotated[] - @RepaintingNoRepaintMetaAnnotation // <.> - @Property(optionality = Optionality.OPTIONAL) - @PropertyLayout( - describedAs = "@RepaintingNoRepaintMetaAnnotation", - fieldSetId = "meta-annotated", sequence = "1") - @XmlElement(required = false) -// @PdfJsViewer - @Getter @Setter - private Blob propertyUsingMetaAnnotation; -//end::meta-annotated[] - -//tag::meta-annotated-overridden[] - @RepaintingRepaintMetaAnnotation // <.> - @Property(optionality = Optionality.OPTIONAL) - @PropertyLayout( - repainting = Repainting.NO_REPAINT // <.> - , describedAs = - "@RepaintingRepaintMetaAnnotation @PropertyLayout(...)", - fieldSetId = "meta-annotated-overridden", sequence = "1") - @XmlElement(required = false) -// @PdfJsViewer - @Getter @Setter - private Blob propertyUsingMetaAnnotationButOverridden; -//end::meta-annotated-overridden[] - } //end::class[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.layout.xml index 65865b8072..652f933f51 100644 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.layout.xml +++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage.layout.xml @@ -26,8 +26,12 @@ <bs3:row> <bs3:col span="6"> - <cpt:fieldSet name="Edit" id="edit" /> - <cpt:fieldSet name="Annotated" id="annotation"/> + <cpt:fieldSet name="Edit" id="edit" > + <cpt:property id="editMe"/> + </cpt:fieldSet> + <cpt:fieldSet name="Annotated" id="annotation"> + <cpt:property id="blob"/> + </cpt:fieldSet> <cpt:fieldSet name="Layout File" id="layout-file"> <!-- tag::layout-file[] --> <cpt:property id="propertyUsingLayout" repainting="NO_REPAINT"/> diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinProperty.java deleted file mode 100644 index 49e5023aa3..0000000000 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinProperty.java +++ /dev/null @@ -1,50 +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. - */ -package demoapp.dom.domain.properties.PropertyLayout.repainting; - -import org.apache.causeway.applib.annotation.Property; -import org.apache.causeway.applib.annotation.PropertyLayout; -import org.apache.causeway.applib.annotation.Repainting; -import org.apache.causeway.applib.value.Blob; - -import lombok.RequiredArgsConstructor; - -//tag::class[] -@Property() -@PropertyLayout( - repainting = Repainting.NO_REPAINT // <.> - , describedAs = - "@PropertyLayout(repainting = NO_REPAINT)", - fieldSetId = "contributed", sequence = "1" -) -@RequiredArgsConstructor -public class PropertyLayoutRepaintingPage_mixinProperty { - // ... -//end::class[] - - private final PropertyLayoutRepaintingPage page; - -// @PdfJsViewer - public Blob prop() { - return page.getPropertyUsingAnnotation(); - } - -//tag::class[] -} -//end::class[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotation.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotation.java deleted file mode 100644 index d2232f0229..0000000000 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotation.java +++ /dev/null @@ -1,49 +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. - */ -package demoapp.dom.domain.properties.PropertyLayout.repainting; - -import org.apache.causeway.applib.annotation.Property; -import org.apache.causeway.applib.annotation.PropertyLayout; -import org.apache.causeway.applib.value.Blob; - -import lombok.RequiredArgsConstructor; - -//tag::class[] -@RepaintingNoRepaintMetaAnnotation // <.> -@Property() -@PropertyLayout( - describedAs = - "@RepaintingNoRepaintMetaAnnotation", - fieldSetId = "meta-annotated", sequence = "2" -) -@RequiredArgsConstructor -public class PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotation { - // ... -//end::class[] - - private final PropertyLayoutRepaintingPage page; - -// @PdfJsViewer - public Blob prop() { - return page.getPropertyUsingAnnotation(); - } - -//tag::class[] -} -//end::class[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotationOverridden.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotationOverridden.java deleted file mode 100644 index ea2c563a70..0000000000 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotationOverridden.java +++ /dev/null @@ -1,52 +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. - */ -package demoapp.dom.domain.properties.PropertyLayout.repainting; - -import org.apache.causeway.applib.annotation.Property; -import org.apache.causeway.applib.annotation.PropertyLayout; -import org.apache.causeway.applib.annotation.Repainting; -import org.apache.causeway.applib.value.Blob; - -import lombok.RequiredArgsConstructor; - -//tag::meta-annotation-overridden[] -@RepaintingRepaintMetaAnnotation // <.> -@Property() -@PropertyLayout( - repainting = Repainting.NO_REPAINT // <.> - , describedAs = - "@RepaintingRepaintMetaAnnotation " + - "@PropertyLayout(repainting = NO_REPAINT)", - fieldSetId = "meta-annotated-overridden", sequence = "2" -) -@RequiredArgsConstructor -public class PropertyLayoutRepaintingPage_mixinPropertyWithMetaAnnotationOverridden { - // ... -//end::meta-annotation-overridden[] - - private final PropertyLayoutRepaintingPage page; - -// @PdfJsViewer - public Blob prop() { - return page.getPropertyUsingAnnotation(); - } - -//tag::meta-annotation-overridden[] -} -//end::meta-annotation-overridden[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingNoRepaintMetaAnnotation.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingNoRepaintMetaAnnotation.java deleted file mode 100644 index 71e50a49a0..0000000000 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingNoRepaintMetaAnnotation.java +++ /dev/null @@ -1,41 +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. - */ -package demoapp.dom.domain.properties.PropertyLayout.repainting; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Inherited; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -import org.apache.causeway.applib.annotation.PropertyLayout; -import org.apache.causeway.applib.annotation.Repainting; - -//tag::class[] -@PropertyLayout(repainting = Repainting.NO_REPAINT) // <.> -@Inherited -@Target({ - ElementType.METHOD, ElementType.FIELD, // <.> - ElementType.TYPE // <.> -}) -@Retention(RetentionPolicy.RUNTIME) -public @interface RepaintingNoRepaintMetaAnnotation { - -} -//end::class[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingRepaintMetaAnnotation.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingRepaintMetaAnnotation.java deleted file mode 100644 index 2ca9e226ed..0000000000 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/repainting/RepaintingRepaintMetaAnnotation.java +++ /dev/null @@ -1,41 +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. - */ -package demoapp.dom.domain.properties.PropertyLayout.repainting; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Inherited; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -import org.apache.causeway.applib.annotation.PropertyLayout; -import org.apache.causeway.applib.annotation.Repainting; - -//tag::class[] -@PropertyLayout(repainting = Repainting.REPAINT) // <.> -@Inherited -@Target({ - ElementType.METHOD, ElementType.FIELD, // <.> - ElementType.TYPE // <.> -}) -@Retention(RetentionPolicy.RUNTIME) -public @interface RepaintingRepaintMetaAnnotation { - -} -//end::class[] diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/ValueSemantics/dateRenderAdjustDays/ValueSemanticsDateRenderAdjustDaysPage-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/ValueSemantics/dateRenderAdjustDays/ValueSemanticsDateRenderAdjustDaysPage-description.adoc index 81cfa30ab0..cfa81bc047 100644 --- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/ValueSemantics/dateRenderAdjustDays/ValueSemanticsDateRenderAdjustDaysPage-description.adoc +++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/ValueSemantics/dateRenderAdjustDays/ValueSemanticsDateRenderAdjustDaysPage-description.adoc @@ -1,5 +1,8 @@ :Notice: 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 ag [...] +WARNING: this functionality is currently *not* supported by the Wicket viewer; see link:https://issues.apache.org/jira/browse/CAUSEWAY-3445[CAUSEWAY-3445]. + + When dealing with date ranges, sometimes it can be easier to define ranges that use a combination of inclusive-exclusive limits -- that is `[startDate, endDate)` -- so that the dates within the range meet the constraint `startDate <= date < endDate`. However, in the user interface your users may prefer inclusive ranges for both the _startDate_ _and_ the `endDate`. @@ -9,7 +12,6 @@ The link:https://causeway.apache.org/refguide/2.0.0-RC1/applib/index/annotation/ The attribute can be applied to both properties and parameters: -WARNING: this functionality is currently broken; the attribute does nothing; see link:https://issues.apache.org/jira/browse/CAUSEWAY-3445[CAUSEWAY-3445].
