This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/causeway.git
The following commit(s) were added to refs/heads/master by this push:
new 8b9f20b3b0 CAUSEWAY-3424: [Programming Model] mark
Action/Collection/Property#hidden deprecated for removal
8b9f20b3b0 is described below
commit 8b9f20b3b057438d7db18c1be7322b9c1fd5e252
Author: andi-huber <[email protected]>
AuthorDate: Wed Apr 12 17:22:43 2023 +0200
CAUSEWAY-3424: [Programming Model] mark
Action/Collection/Property#hidden deprecated for removal
- also don't use these attributes any more
---
.../apache/causeway/applib/annotation/Action.java | 9 ++----
.../causeway/applib/annotation/Collection.java | 6 ++--
.../causeway/applib/annotation/Property.java | 5 +--
.../causeway/applib/services/user/UserMemento.java | 12 ++++++--
.../hidden/HiddenFacetForActionAnnotation.java | 1 +
.../hidden/HiddenFacetForCollectionAnnotation.java | 1 +
.../hidden/HiddenFacetForPropertyAnnotation.java | 1 +
.../core/metamodel/inspect/model/ActionNode.java | 4 ++-
.../metamodel/inspect/model/AnnotationNode.java | 4 ++-
.../metamodel/inspect/model/CollectionNode.java | 4 ++-
.../metamodel/inspect/model/FacetAttrNode.java | 4 ++-
.../metamodel/inspect/model/FacetGroupNode.java | 4 ++-
.../core/metamodel/inspect/model/FacetNode.java | 4 ++-
.../metamodel/inspect/model/ParameterNode.java | 4 ++-
.../core/metamodel/inspect/model/PropertyNode.java | 4 ++-
.../core/metamodel/inspect/model/TypeNode.java | 4 ++-
.../ActionAnnotationFacetFactoryTest_Hidden.java | 4 ++-
.../CollectionAnnotationFacetFactoryTest.java | 4 ++-
.../PropertyAnnotationFacetFactoryTest.java | 4 ++-
.../ActionHidden_changeNameHiddenAllTables.java | 8 +++--
.../ActionHidden_changeNameHiddenEverywhere.java | 8 +++--
.../ActionHidden_changeNameHiddenObjectForms.java | 8 +++--
.../Action/semantics/ActionSemanticsPage.java | 2 +-
.../Collection/hidden/CollectionHiddenPage.java | 5 +--
.../objects/mixins/mixins/FibonacciNumberVm.java | 17 +++++++---
.../properties/Property/hidden/PropertyHidden.java | 16 ++++++----
.../Property/hidden/jpa/PropertyHiddenJpa.java | 36 ++++++++++++++--------
.../child/PropertyProjectingChildVm.java | 4 +--
.../hidden/PropertyLayoutHidden.java | 16 ++++++----
.../hidden/jpa/PropertyLayoutHiddenJpa.java | 31 ++++++++++++-------
...JavaAwtBufferedImageHolder_actionReturning.java | 4 +--
...feredImageHolder_actionReturningCollection.java | 4 +--
...ImageHolder_updateReadOnlyOptionalProperty.java | 4 +--
...BufferedImageHolder_updateReadOnlyProperty.java | 4 +--
...geHolder_updateReadOnlyPropertyWithChoices.java | 4 +--
.../secman/applib/user/dom/ApplicationUser.java | 5 ++-
.../user/dom/mixins/ApplicationUser_timeZone.java | 6 ++--
.../components/actions/ActionParametersForm.java | 4 ++-
.../ui/components/scalars/ScalarPanelAbstract.java | 6 +++-
39 files changed, 171 insertions(+), 104 deletions(-)
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Action.java
b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Action.java
index f1205a1360..6add510f77 100644
--- a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Action.java
+++ b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Action.java
@@ -150,17 +150,14 @@ public @interface Action {
/**
* Indicates where (in the UI) the action is not visible to the user.
- *
- * <p>
- * It is also possible to suppress an action's visibility using {@link
ActionLayout#hidden()}.
- *
* <p>
* For {@link DomainService domain service} actions, the action's
visibility is dependent upon its
* {@link DomainService#nature() nature}.
*
- * @see Property#hidden()
- * @see Collection#hidden()
+ * @see ActionLayout#hidden()
+ * @deprecated use {@link ActionLayout#hidden()} instead
*/
+ @Deprecated(forRemoval = true, since = "2.0.0-RC2")
Where hidden()
default Where.NOT_SPECIFIED;
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Collection.java
b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Collection.java
index c47f2aaa78..2e5591d8ea 100644
---
a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Collection.java
+++
b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Collection.java
@@ -84,10 +84,10 @@ public @interface Collection {
/**
* Indicates when the collection is not visible to the user.
*
- * @see Action#hidden()
- * @see Property#hidden()
- * @see Collection#hidden()
+ * @see CollectionLayout#hidden()
+ * @deprecated use CollectionLayout#hidden() instead
*/
+ @Deprecated(forRemoval = true, since = "2.0.0-RC2")
Where hidden()
default Where.NOT_SPECIFIED;
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Property.java
b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Property.java
index 1ad9be5a00..d74c650f33 100644
---
a/api/applib/src/main/java/org/apache/causeway/applib/annotation/Property.java
+++
b/api/applib/src/main/java/org/apache/causeway/applib/annotation/Property.java
@@ -186,9 +186,10 @@ public @interface Property {
/**
* Indicates where the property is not visible to the user.
*
- * @see Action#hidden()
- * @see Collection#hidden()
+ * @see PropertyLayout#hidden()
+ * @deprecated use {@link PropertyLayout#hidden()} instead
*/
+ @Deprecated(forRemoval = true, since = "2.0.0-RC2")
Where hidden()
default Where.NOT_SPECIFIED;
diff --git
a/api/applib/src/main/java/org/apache/causeway/applib/services/user/UserMemento.java
b/api/applib/src/main/java/org/apache/causeway/applib/services/user/UserMemento.java
index 76b4cdca6d..78561b9ecf 100644
---
a/api/applib/src/main/java/org/apache/causeway/applib/services/user/UserMemento.java
+++
b/api/applib/src/main/java/org/apache/causeway/applib/services/user/UserMemento.java
@@ -28,7 +28,6 @@ import java.util.stream.Stream;
import javax.inject.Named;
-import org.apache.causeway.applib.services.sudo.SudoService;
import org.springframework.context.event.EventListener;
import org.springframework.core.annotation.Order;
import org.springframework.lang.Nullable;
@@ -47,10 +46,16 @@ import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.applib.locale.UserLocale;
import org.apache.causeway.applib.services.iactnlayer.InteractionContext;
+import org.apache.causeway.applib.services.sudo.SudoService;
import org.apache.causeway.commons.collections.Can;
import org.apache.causeway.commons.internal.base._Strings;
-import lombok.*;
+import lombok.Builder;
+import lombok.EqualsAndHashCode;
+import lombok.Getter;
+import lombok.NonNull;
+import lombok.With;
+import lombok.val;
/**
* Immutable serializable value holding details about a user and its roles.
@@ -272,7 +277,8 @@ implements Serializable {
* It should return an empty string {@literal ""}
* if this is an anonymous (unauthenticated) user.
*/
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Builder.Default @With(onMethod_ = {@Programmatic})
@NonNull
String authenticationCode = DEFAULT_AUTH_VALID_CODE;
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/hidden/HiddenFacetForActionAnnotation.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/hidden/HiddenFacetForActionAnnotation.java
index c82543ca3d..e5b1ec5b37 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/hidden/HiddenFacetForActionAnnotation.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/actions/action/hidden/HiddenFacetForActionAnnotation.java
@@ -26,6 +26,7 @@ import
org.apache.causeway.core.metamodel.facetapi.FacetHolder;
import
org.apache.causeway.core.metamodel.facets.members.hidden.HiddenFacetAbstract;
import org.apache.causeway.core.metamodel.object.ManagedObject;
+@Deprecated(forRemoval = true, since = "2.0.0-RC2")
public class HiddenFacetForActionAnnotation
extends HiddenFacetAbstract {
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/collection/hidden/HiddenFacetForCollectionAnnotation.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/collection/hidden/HiddenFacetForCollectionAnnotation.java
index 08c022d337..0b00c5c046 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/collection/hidden/HiddenFacetForCollectionAnnotation.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/collections/collection/hidden/HiddenFacetForCollectionAnnotation.java
@@ -26,6 +26,7 @@ import
org.apache.causeway.core.metamodel.facetapi.FacetHolder;
import
org.apache.causeway.core.metamodel.facets.members.hidden.HiddenFacetAbstract;
import org.apache.causeway.core.metamodel.object.ManagedObject;
+@Deprecated(forRemoval = true, since = "2.0.0-RC2")
public class HiddenFacetForCollectionAnnotation extends HiddenFacetAbstract {
public static Optional<HiddenFacetForCollectionAnnotation> create(
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/properties/property/hidden/HiddenFacetForPropertyAnnotation.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/properties/property/hidden/HiddenFacetForPropertyAnnotation.java
index 5bdc44e7ea..fb6b9f5cdb 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/properties/property/hidden/HiddenFacetForPropertyAnnotation.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/facets/properties/property/hidden/HiddenFacetForPropertyAnnotation.java
@@ -26,6 +26,7 @@ import
org.apache.causeway.core.metamodel.facetapi.FacetHolder;
import
org.apache.causeway.core.metamodel.facets.members.hidden.HiddenFacetAbstract;
import org.apache.causeway.core.metamodel.object.ManagedObject;
+@Deprecated(forRemoval = true, since = "2.0.0-RC2")
public class HiddenFacetForPropertyAnnotation
extends HiddenFacetAbstract {
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ActionNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ActionNode.java
index ced26420ab..3446fafc1e 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ActionNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ActionNode.java
@@ -30,6 +30,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.Action;
import org.apache.causeway.schema.metamodel.v2.Annotation;
@@ -52,7 +53,8 @@ public class ActionNode extends MemberNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".node.ActionNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Action action;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/AnnotationNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/AnnotationNode.java
index e9f8681ebe..95efd00a30 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/AnnotationNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/AnnotationNode.java
@@ -31,6 +31,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.Annotation;
import org.apache.causeway.schema.metamodel.v2.MetamodelElement;
@@ -51,7 +52,8 @@ public class AnnotationNode extends MMNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".AnnotationNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Annotation annotation;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/CollectionNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/CollectionNode.java
index 977a37059e..ad2b17c246 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/CollectionNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/CollectionNode.java
@@ -28,6 +28,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.Annotation;
import org.apache.causeway.schema.metamodel.v2.Collection;
@@ -50,7 +51,8 @@ public class CollectionNode extends MemberNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".node.CollectionNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Collection collection;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetAttrNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetAttrNode.java
index 17e54856d3..de7f879d2c 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetAttrNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetAttrNode.java
@@ -31,6 +31,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.FacetAttr;
import org.apache.causeway.schema.metamodel.v2.MetamodelElement;
@@ -51,7 +52,8 @@ public class FacetAttrNode extends MMNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".node.FacetAttrNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private FacetAttr facetAttr;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetGroupNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetGroupNode.java
index 085eedf66a..7d1cbf6c31 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetGroupNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetGroupNode.java
@@ -31,6 +31,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.commons.internal.base._NullSafe;
import org.apache.causeway.schema.metamodel.v2.FacetHolder.Facets;
@@ -52,7 +53,8 @@ public class FacetGroupNode extends MMNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".FacetGroupNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Facets facets;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetNode.java
index bf1c45e955..16fd75c157 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/FacetNode.java
@@ -31,6 +31,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.commons.internal.base._NullSafe;
import org.apache.causeway.schema.metamodel.v2.Annotation;
@@ -55,7 +56,8 @@ public class FacetNode extends MMNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".node.FacetNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Facet facet;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ParameterNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ParameterNode.java
index e2154e58ea..4cbe753789 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ParameterNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/ParameterNode.java
@@ -31,6 +31,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.Annotation;
import org.apache.causeway.schema.metamodel.v2.MetamodelElement;
@@ -53,7 +54,8 @@ public class ParameterNode extends MMNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".ParameterNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private Param parameter;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/PropertyNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/PropertyNode.java
index f8e8dd4f2a..549c28549f 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/PropertyNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/PropertyNode.java
@@ -28,6 +28,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.schema.metamodel.v2.Annotation;
import org.apache.causeway.schema.metamodel.v2.Member;
@@ -48,7 +49,8 @@ public class PropertyNode extends MemberNode {
public static final String LOGICAL_TYPE_NAME =
CausewayModuleApplib.NAMESPACE + ".PropertyNode";
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private org.apache.causeway.schema.metamodel.v2.Property
property;
@Override
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/TypeNode.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/TypeNode.java
index ab47599d6e..5359144226 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/TypeNode.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/inspect/model/TypeNode.java
@@ -32,6 +32,7 @@ import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Introspection;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import org.apache.causeway.commons.internal.collections._Streams;
import org.apache.causeway.core.metamodel.specloader.SpecificationLoader;
@@ -57,7 +58,8 @@ public class TypeNode extends MMNode {
@Inject protected transient SpecificationLoader specificationLoader;
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter private DomainClassDto domainClassDto;
@Override
diff --git
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/actions/action/ActionAnnotationFacetFactoryTest_Hidden.java
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/actions/action/ActionAnnotationFacetFactoryTest_Hidden.java
index 8c8a849850..e4d8e43051 100644
---
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/actions/action/ActionAnnotationFacetFactoryTest_Hidden.java
+++
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/actions/action/ActionAnnotationFacetFactoryTest_Hidden.java
@@ -26,6 +26,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.apache.causeway.applib.annotation.Action;
+import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.Where;
import
org.apache.causeway.core.metamodel.facets.FacetFactory.ProcessMethodContext;
import org.apache.causeway.core.metamodel.facets.all.hide.HiddenFacet;
@@ -46,7 +47,8 @@ extends ActionAnnotationFacetFactoryTest {
void withAnnotation() {
class Customer {
- @Action(hidden = Where.REFERENCES_PARENT)
+ @Action
+ @ActionLayout(hidden = Where.REFERENCES_PARENT)
public void someAction() {
}
}
diff --git
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactoryTest.java
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactoryTest.java
index 653ccb4d6a..56fc647a1b 100644
---
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactoryTest.java
+++
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactoryTest.java
@@ -33,6 +33,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.calls;
import org.apache.causeway.applib.annotation.Collection;
+import org.apache.causeway.applib.annotation.CollectionLayout;
import org.apache.causeway.applib.annotation.Where;
import
org.apache.causeway.core.config.progmodel.ProgrammingModelConstants.CollectionSemantics;
import org.apache.causeway.core.metamodel.commons.matchers.CausewayMatchers;
@@ -107,7 +108,8 @@ extends AbstractFacetFactoryJupiterTestCase {
class Order {
}
class Customer {
- @Collection(hidden = Where.REFERENCES_PARENT)
+ @Collection
+ @CollectionLayout(hidden = Where.REFERENCES_PARENT)
public List<Order> getOrders() {
return null;
}
diff --git
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactoryTest.java
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactoryTest.java
index 76eb90f51c..4f8cdf5edc 100644
---
a/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactoryTest.java
+++
b/core/metamodel/src/test/java/org/apache/causeway/core/metamodel/facets/properties/property/PropertyAnnotationFacetFactoryTest.java
@@ -38,6 +38,7 @@ import static org.mockito.Mockito.calls;
import org.apache.causeway.applib.annotation.Optionality;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Publishing;
import org.apache.causeway.applib.annotation.Snapshot;
import org.apache.causeway.applib.annotation.Where;
@@ -399,7 +400,8 @@ class PropertyAnnotationFacetFactoryTest extends
AbstractFacetFactoryJupiterTest
@SuppressWarnings("unused")
class Customer {
- @Property(hidden = Where.REFERENCES_PARENT)
+ @Property
+ @PropertyLayout(hidden = Where.REFERENCES_PARENT)
@Getter @Setter private String name;
}
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenAllTables.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenAllTables.java
index 0e25256ee4..5088a8ada0 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenAllTables.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenAllTables.java
@@ -19,14 +19,16 @@
*/
package demoapp.dom.domain.actions.Action.hidden;
-import lombok.RequiredArgsConstructor;
-
import org.apache.causeway.applib.annotation.Action;
+import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.MemberSupport;
import org.apache.causeway.applib.annotation.Where;
+import lombok.RequiredArgsConstructor;
+
//tag::class[]
-@Action(hidden = Where.ALL_TABLES) // <.>
+@Action // TODO Actions's hidden attribute will be removed in 2.0
+@ActionLayout(hidden = Where.ALL_TABLES) // <.>
@RequiredArgsConstructor
public class ActionHidden_changeNameHiddenAllTables {
// ...
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenEverywhere.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenEverywhere.java
index f2604c29b7..4bc0d0ee4a 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenEverywhere.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenEverywhere.java
@@ -19,14 +19,16 @@
*/
package demoapp.dom.domain.actions.Action.hidden;
-import lombok.RequiredArgsConstructor;
-
import org.apache.causeway.applib.annotation.Action;
+import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.MemberSupport;
import org.apache.causeway.applib.annotation.Where;
+import lombok.RequiredArgsConstructor;
+
//tag::class[]
-@Action(hidden = Where.EVERYWHERE) // <.>
+@Action // TODO Actions's hidden attribute will be removed in 2.0
+@ActionLayout(hidden = Where.EVERYWHERE) // <.>
@RequiredArgsConstructor
public class ActionHidden_changeNameHiddenEverywhere {
// ...
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenObjectForms.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenObjectForms.java
index 778655d6f1..5cac2d9bca 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenObjectForms.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/hidden/ActionHidden_changeNameHiddenObjectForms.java
@@ -19,14 +19,16 @@
*/
package demoapp.dom.domain.actions.Action.hidden;
-import lombok.RequiredArgsConstructor;
-
import org.apache.causeway.applib.annotation.Action;
+import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.MemberSupport;
import org.apache.causeway.applib.annotation.Where;
+import lombok.RequiredArgsConstructor;
+
//tag::class[]
-@Action(hidden = Where.OBJECT_FORMS) // <.>
+@Action // TODO Actions's hidden attribute will be removed in 2.0
+@ActionLayout(hidden = Where.OBJECT_FORMS) // <.>
@RequiredArgsConstructor
public class ActionHidden_changeNameHiddenObjectForms {
// ...
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/semantics/ActionSemanticsPage.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/semantics/ActionSemanticsPage.java
index 398b650bb4..3e47e8e852 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/semantics/ActionSemanticsPage.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/actions/Action/semantics/ActionSemanticsPage.java
@@ -158,8 +158,8 @@ public class ActionSemanticsPage implements
HasAsciiDocDescription {
//tag::action-semantics-safe-and-request-cacheable[]
@Action(
semantics = SemanticsOf.SAFE_AND_REQUEST_CACHEABLE // <.>
- , hidden = Where.EVERYWHERE // <.>
)
+ @ActionLayout(hidden = Where.EVERYWHERE) // <.>
public int queryPropertyForSafeAndRequestCacheable() {
++numberOfTimesActionSafeAndRequestCacheableWasExecuted; // <.>
return getPropertyForSafeAndRequestCacheable();
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/collections/Collection/hidden/CollectionHiddenPage.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/collections/Collection/hidden/CollectionHiddenPage.java
index acede92261..bc7db15a78 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/collections/Collection/hidden/CollectionHiddenPage.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/collections/Collection/hidden/CollectionHiddenPage.java
@@ -29,6 +29,7 @@ import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import org.apache.causeway.applib.annotation.Collection;
+import org.apache.causeway.applib.annotation.CollectionLayout;
import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Editing;
import org.apache.causeway.applib.annotation.Nature;
@@ -57,8 +58,8 @@ public class CollectionHiddenPage implements
HasAsciiDocDescription {
}
//tag::collection[]
- @Collection(
- hidden = Where.PARENTED_TABLES)
+ @Collection // TODO Collection's hidden attribute will be removed in 2.0
+ @CollectionLayout(hidden = Where.PARENTED_TABLES)
@XmlTransient
@Getter @Setter
private List<DemoEntity> collection = new ArrayList<>();
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/progmodel/objects/mixins/mixins/FibonacciNumberVm.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/progmodel/objects/mixins/mixins/FibonacciNumberVm.java
index 808207b307..1478d7ab31 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/progmodel/objects/mixins/mixins/FibonacciNumberVm.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/progmodel/objects/mixins/mixins/FibonacciNumberVm.java
@@ -18,15 +18,21 @@
*/
package demoapp.dom.domain.progmodel.objects.mixins.mixins;
+import javax.inject.Named;
+
+import org.apache.causeway.applib.annotation.DomainObject;
+import org.apache.causeway.applib.annotation.Editing;
+import org.apache.causeway.applib.annotation.Nature;
+import org.apache.causeway.applib.annotation.ObjectSupport;
+import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
+import org.apache.causeway.applib.annotation.Where;
+
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
-import javax.inject.Named;
-
-import org.apache.causeway.applib.annotation.*;
-
@Named("demo.FibonacciNumberVm")
@DomainObject(
nature=Nature.VIEW_MODEL,
@@ -47,7 +53,8 @@ public class FibonacciNumberVm {
@Getter @Setter
private int fibonacci;
- @Property(hidden = Where.REFERENCES_PARENT)
+ @Property
+ @PropertyLayout(hidden = Where.REFERENCES_PARENT)
@Getter @Setter
private CountHolder parent;
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/PropertyHidden.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/PropertyHidden.java
index e7c1fe6a99..7d32769709 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/PropertyHidden.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/PropertyHidden.java
@@ -18,12 +18,13 @@
*/
package demoapp.dom.domain.properties.Property.hidden;
-import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
-import demoapp.dom._infra.values.ValueHolder;
-
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
+import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
+import demoapp.dom._infra.values.ValueHolder;
+
//tag::class[]
public abstract class PropertyHidden
//end::class[]
@@ -51,19 +52,22 @@ public abstract class PropertyHidden
//end::none[]
//tag::object-forms[]
- @Property(hidden = Where.OBJECT_FORMS) // <.>
+ @Property //TODO property's hidden attribute will be removed in 2.0-final
+ @PropertyLayout(hidden = Where.OBJECT_FORMS) // <.>
public abstract String getNameHiddenObjectForms();
public abstract void setNameHiddenObjectForms(String value);
//end::object-forms[]
//tag::all-tables[]
- @Property(hidden = Where.ALL_TABLES) // <.>
+ @Property //TODO property's hidden attribute will be removed in 2.0-final
+ @PropertyLayout(hidden = Where.ALL_TABLES) // <.>
public abstract String getNameHiddenAllTables();
public abstract void setNameHiddenAllTables(String value);
//end::all-tables[]
//tag::everywhere[]
- @Property(hidden = Where.EVERYWHERE) // <.>
+ @Property //TODO property's hidden attribute will be removed in 2.0-final
+ @PropertyLayout(hidden = Where.EVERYWHERE) // <.>
public abstract String getNameHiddenEverywhere();
public abstract void setNameHiddenEverywhere(String value);
//end::everywhere[]
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/jpa/PropertyHiddenJpa.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/jpa/PropertyHiddenJpa.java
index c4be82a512..1e67ca5c9b 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/jpa/PropertyHiddenJpa.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/hidden/jpa/PropertyHiddenJpa.java
@@ -18,20 +18,27 @@
*/
package demoapp.dom.domain.properties.Property.hidden.jpa;
-import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
-import demoapp.dom._infra.values.ValueHolder;
+import javax.inject.Named;
+import javax.persistence.Entity;
+import javax.persistence.EntityListeners;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.springframework.context.annotation.Profile;
+
+import org.apache.causeway.applib.annotation.DomainObject;
+import org.apache.causeway.applib.annotation.Nature;
+import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
+import org.apache.causeway.applib.annotation.Where;
+import
org.apache.causeway.persistence.jpa.applib.integration.CausewayEntityListener;
+
import demoapp.dom.domain.properties.Property.hidden.PropertyHidden;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
-import javax.inject.Named;
-import javax.persistence.*;
-
-import org.apache.causeway.applib.annotation.*;
-import
org.apache.causeway.persistence.jpa.applib.integration.CausewayEntityListener;
-import org.springframework.context.annotation.Profile;
-
@Profile("demo-jpa")
@Entity
@Table(
@@ -48,7 +55,7 @@ public class PropertyHiddenJpa extends PropertyHidden {
// ...
//end::class[]
- public PropertyHiddenJpa(String value) {
+ public PropertyHiddenJpa(final String value) {
setName(value);
setNameHiddenAllTables(value);
setNameHiddenEverywhere(value);
@@ -63,15 +70,18 @@ public class PropertyHiddenJpa extends PropertyHidden {
@Getter @Setter
private String name;
- @Property(hidden = Where.ALL_TABLES)
+ @Property // TODO Property's hidden attribute will be removed in 2.0
+ @PropertyLayout(hidden = Where.ALL_TABLES)
@Getter @Setter
private String nameHiddenAllTables;
- @Property(hidden = Where.EVERYWHERE)
+ @Property // TODO Property's hidden attribute will be removed in 2.0
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter
private String nameHiddenEverywhere;
- @Property(hidden = Where.OBJECT_FORMS)
+ @Property // TODO Property's hidden attribute will be removed in 2.0
+ @PropertyLayout(hidden = Where.OBJECT_FORMS)
@Getter @Setter
private String nameHiddenObjectForms;
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/projecting/child/PropertyProjectingChildVm.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/projecting/child/PropertyProjectingChildVm.java
index 4569181f25..c2def6e44c 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/projecting/child/PropertyProjectingChildVm.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/Property/projecting/child/PropertyProjectingChildVm.java
@@ -66,9 +66,9 @@ public class PropertyProjectingChildVm implements
HasAsciiDocDescription {
//tag::projecting[]
@Property(
- projecting = Projecting.PROJECTED // <.>
- , hidden = Where.EVERYWHERE // <.>
+ projecting = Projecting.PROJECTED // <.>
)
+ @PropertyLayout(hidden = Where.EVERYWHERE) // <.>
public PropertyProjectingChildEntity getBackingEntity() {
return backingEntityJpa!=null
? backingEntityJpa
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/PropertyLayoutHidden.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/PropertyLayoutHidden.java
index f2cc4320fc..fe064748b1 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/PropertyLayoutHidden.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/PropertyLayoutHidden.java
@@ -18,12 +18,13 @@
*/
package demoapp.dom.domain.properties.PropertyLayout.hidden;
-import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
-import demoapp.dom._infra.values.ValueHolder;
-
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
+import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
+import demoapp.dom._infra.values.ValueHolder;
+
//tag::class[]
public abstract class PropertyLayoutHidden
//end::class[]
@@ -51,19 +52,22 @@ public abstract class PropertyLayoutHidden
//end::none[]
//tag::object-forms[]
- @Property(hidden = Where.OBJECT_FORMS) // <.>
+ @Property
+ @PropertyLayout(hidden = Where.OBJECT_FORMS) // <.>
public abstract String getNameHiddenObjectForms();
public abstract void setNameHiddenObjectForms(String value);
//end::object-forms[]
//tag::all-tables[]
- @Property(hidden = Where.ALL_TABLES) // <.>
+ @Property
+ @PropertyLayout(hidden = Where.ALL_TABLES) // <.>
public abstract String getNameHiddenAllTables();
public abstract void setNameHiddenAllTables(String value);
//end::all-tables[]
//tag::everywhere[]
- @Property(hidden = Where.EVERYWHERE) // <.>
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE) // <.>
public abstract String getNameHiddenEverywhere();
public abstract void setNameHiddenEverywhere(String value);
//end::everywhere[]
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/jpa/PropertyLayoutHiddenJpa.java
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/jpa/PropertyLayoutHiddenJpa.java
index ea90eb57eb..a0af645f4b 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/jpa/PropertyLayoutHiddenJpa.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/hidden/jpa/PropertyLayoutHiddenJpa.java
@@ -18,20 +18,26 @@
*/
package demoapp.dom.domain.properties.PropertyLayout.hidden.jpa;
-import
demoapp.dom.domain.properties.PropertyLayout.hidden.PropertyLayoutHidden;
-import lombok.Getter;
-import lombok.NoArgsConstructor;
-import lombok.Setter;
-
import javax.inject.Named;
-import javax.persistence.*;
+import javax.persistence.Entity;
+import javax.persistence.EntityListeners;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.springframework.context.annotation.Profile;
import org.apache.causeway.applib.annotation.DomainObject;
import org.apache.causeway.applib.annotation.Nature;
import org.apache.causeway.applib.annotation.Property;
+import org.apache.causeway.applib.annotation.PropertyLayout;
import org.apache.causeway.applib.annotation.Where;
import
org.apache.causeway.persistence.jpa.applib.integration.CausewayEntityListener;
-import org.springframework.context.annotation.Profile;
+
+import
demoapp.dom.domain.properties.PropertyLayout.hidden.PropertyLayoutHidden;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
@Profile("demo-jpa")
@Entity
@@ -49,7 +55,7 @@ public class PropertyLayoutHiddenJpa extends
PropertyLayoutHidden {
// ...
//end::class[]
- public PropertyLayoutHiddenJpa(String value) {
+ public PropertyLayoutHiddenJpa(final String value) {
setName(value);
setNameHiddenAllTables(value);
setNameHiddenEverywhere(value);
@@ -64,15 +70,18 @@ public class PropertyLayoutHiddenJpa extends
PropertyLayoutHidden {
@Getter @Setter
private String name;
- @Property(hidden = Where.ALL_TABLES)
+ @Property
+ @PropertyLayout(hidden = Where.ALL_TABLES)
@Getter @Setter
private String nameHiddenAllTables;
- @Property(hidden = Where.EVERYWHERE)
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Getter @Setter
private String nameHiddenEverywhere;
- @Property(hidden = Where.OBJECT_FORMS)
+ @Property
+ @PropertyLayout(hidden = Where.OBJECT_FORMS)
@Getter @Setter
private String nameHiddenObjectForms;
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturning.java
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturning.java
index 851b2e8ab4..eefe38ce7c 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturning.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturning.java
@@ -22,15 +22,13 @@ import java.awt.image.BufferedImage;
import org.apache.causeway.applib.annotation.Action;
import org.apache.causeway.applib.annotation.SemanticsOf;
-import org.apache.causeway.applib.annotation.Where;
import lombok.RequiredArgsConstructor;
//tag::class[]
@Action(
- semantics = SemanticsOf.SAFE,
- hidden = Where.EVERYWHERE // TODO: not yet supported
+ semantics = SemanticsOf.SAFE
)
@RequiredArgsConstructor
public class JavaAwtBufferedImageHolder_actionReturning {
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturningCollection.java
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturningCollection.java
index c8a3375142..2ab049f700 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturningCollection.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_actionReturningCollection.java
@@ -26,7 +26,6 @@ import javax.inject.Inject;
import org.apache.causeway.applib.annotation.Action;
import org.apache.causeway.applib.annotation.SemanticsOf;
-import org.apache.causeway.applib.annotation.Where;
import demoapp.dom.types.Samples;
import lombok.RequiredArgsConstructor;
@@ -34,8 +33,7 @@ import lombok.RequiredArgsConstructor;
//tag::class[]
@Action(
- semantics = SemanticsOf.SAFE,
- hidden = Where.EVERYWHERE // TODO: not yet supported
+ semantics = SemanticsOf.SAFE
)
@RequiredArgsConstructor
public class JavaAwtBufferedImageHolder_actionReturningCollection {
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyOptionalProperty.java
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyOptionalProperty.java
index 4eea62c4a4..4355492612 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyOptionalProperty.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyOptionalProperty.java
@@ -27,14 +27,12 @@ import org.apache.causeway.applib.annotation.Optionality;
import org.apache.causeway.applib.annotation.Parameter;
import org.apache.causeway.applib.annotation.PromptStyle;
import org.apache.causeway.applib.annotation.SemanticsOf;
-import org.apache.causeway.applib.annotation.Where;
import lombok.RequiredArgsConstructor;
//tag::class[]
@Action(
- semantics = SemanticsOf.IDEMPOTENT,
- hidden = Where.EVERYWHERE // TODO: action parameters for images not
yet supported.
+ semantics = SemanticsOf.IDEMPOTENT
)
@ActionLayout(
promptStyle = PromptStyle.INLINE
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyProperty.java
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyProperty.java
index 7e66549d02..2ae7e3f600 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyProperty.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyProperty.java
@@ -25,14 +25,12 @@ import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.MemberSupport;
import org.apache.causeway.applib.annotation.PromptStyle;
import org.apache.causeway.applib.annotation.SemanticsOf;
-import org.apache.causeway.applib.annotation.Where;
import lombok.RequiredArgsConstructor;
//tag::class[]
@Action(
- semantics = SemanticsOf.IDEMPOTENT,
- hidden = Where.EVERYWHERE // TODO: action parameters for images not
yet supported.
+ semantics = SemanticsOf.IDEMPOTENT
)
@ActionLayout(
promptStyle = PromptStyle.INLINE
diff --git
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyPropertyWithChoices.java
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyPropertyWithChoices.java
index 4a8433c397..5c8dc13965 100644
---
a/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyPropertyWithChoices.java
+++
b/examples/demo/domain/src/main/java/demoapp/dom/types/javaawt/images/holder/JavaAwtBufferedImageHolder_updateReadOnlyPropertyWithChoices.java
@@ -29,15 +29,13 @@ import org.apache.causeway.applib.annotation.ActionLayout;
import org.apache.causeway.applib.annotation.MemberSupport;
import org.apache.causeway.applib.annotation.PromptStyle;
import org.apache.causeway.applib.annotation.SemanticsOf;
-import org.apache.causeway.applib.annotation.Where;
import demoapp.dom.types.Samples;
import lombok.RequiredArgsConstructor;
//tag::class[]
@Action(
- semantics = SemanticsOf.IDEMPOTENT,
- hidden = Where.EVERYWHERE // TODO: action parameters for images not
yet supported.
+ semantics = SemanticsOf.IDEMPOTENT
)
@ActionLayout(
promptStyle = PromptStyle.INLINE
diff --git
a/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/ApplicationUser.java
b/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/ApplicationUser.java
index e41390bfd9..8a4319c003 100644
---
a/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/ApplicationUser.java
+++
b/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/ApplicationUser.java
@@ -553,9 +553,8 @@ public abstract class ApplicationUser
// -- ENCRYPTED PASSWORD
- @Property(
- hidden = Where.EVERYWHERE
- )
+ @Property
+ @PropertyLayout(hidden = Where.EVERYWHERE)
@Target({ ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER,
ElementType.ANNOTATION_TYPE })
@Retention(RetentionPolicy.RUNTIME)
public @interface EncryptedPassword {
diff --git
a/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/mixins/ApplicationUser_timeZone.java
b/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/mixins/ApplicationUser_timeZone.java
index 059dd4c6d6..d485690fbd 100644
---
a/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/mixins/ApplicationUser_timeZone.java
+++
b/extensions/security/secman/applib/src/main/java/org/apache/causeway/extensions/secman/applib/user/dom/mixins/ApplicationUser_timeZone.java
@@ -38,12 +38,12 @@ import lombok.RequiredArgsConstructor;
* @since 2.0 {@index}
*/
@Property(
- editing = Editing.DISABLED,
- hidden = Where.ALL_TABLES)
+ editing = Editing.DISABLED)
@PropertyLayout(
fieldSetId = "regional",
describedAs = "Timezone ID as stored in your current session.
(Logout/Login to change.)",
- sequence = "2"
+ sequence = "2",
+ hidden = Where.ALL_TABLES
)
@RequiredArgsConstructor
public class ApplicationUser_timeZone {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
index 37afdd03e9..e71cbcdccf 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
@@ -149,12 +149,14 @@ extends PromptFormAbstract<ActionModel> {
.map(paramModel->{
val paramIndexForReassessment = paramModel.getParameterIndex();
+ val paramPanel = paramPanels.get(paramIndexForReassessment);
val actionParameter = paramModel.getMetaModel();
+ // updates the paramNegotiationModel
actionParameter.reassessDefault(paramNegotiationModel);
_Xray.reassessedDefault(paramIndexForReassessment,
paramNegotiationModel);
- val paramPanel = paramPanels.get(paramIndexForReassessment);
+ // repaint is calculated based on changes to the
val paramRepaint = paramPanel.updateIfNecessary(paramModel,
Optional.of(target));
if(paramRepaint.isParamOnly()) {
paramOnlyUpdateRequestsHavingParamIndex.add(paramIndexForReassessment);
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
index af9f0de1c5..11257acf39 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
@@ -608,7 +608,11 @@ implements ScalarModelChangeListener {
* @param paramModel - the action being invoked
* @param target - in case there's more to be repainted...
*
- * @return - true if changed as a result of these pending arguments.
+ * @return - {@link Repaint} as a result of these pending arguments<ul>
+ * <li>{@link Repaint#NOTHING} if nothing changed</li>
+ * <li>{@link Repaint#PARAM_ONLY} if param value changed</li>
+ * <li>{@link Repaint#ENTIRE_FORM} if layout changed</li>
+ * </ul>
*/
public Repaint updateIfNecessary(
final @NonNull UiParameter paramModel,