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/isis.git
The following commit(s) were added to refs/heads/master by this push:
new 176be44769 ISIS-3116: purge WicketViewerSettings
176be44769 is described below
commit 176be447694378ad0b06e9f34e3927720c60601b
Author: Andi Huber <[email protected]>
AuthorDate: Wed Aug 10 08:52:44 2022 +0200
ISIS-3116: purge WicketViewerSettings
---
.../apache/isis/core/config/IsisConfiguration.java | 35 +++++---
.../testdomain/conf/Configuration_usingWicket.java | 9 +-
.../wicket/model/isis/WicketViewerSettings.java | 72 ----------------
.../model/isis/WicketViewerSettingsAccessor.java | 2 +-
.../components/actions/ActionParametersForm.java | 4 +-
.../actions/ActionParametersFormPanel.java | 2 +-
.../ui/components/property/PropertyEditForm.java | 7 +-
.../components/property/PropertyEditFormPanel.java | 2 +-
.../entitysimplelink/EntityLinkSimplePanel.java | 4 +-
.../widgets/linkandlabel/ActionLink.java | 6 +-
.../ObjectAdapterMementoProviderAbstract.java | 10 +--
.../isis/viewer/wicket/ui/panels/FormAbstract.java | 5 ++
.../wicket/ui/panels/FormExecutorDefault.java | 9 +-
.../isis/viewer/wicket/ui/panels/OkCancelForm.java | 7 +-
.../isis/viewer/wicket/ui/panels/PanelBase.java | 7 +-
.../wicket/ui/panels/PromptFormAbstract.java | 4 +-
.../org/apache/isis/viewer/wicket/ui/util/Wkt.java | 15 ++--
...tAdapterMementoProviderForValueChoicesTest.java | 5 --
.../viewer/IsisModuleViewerWicketViewer.java | 2 -
.../services/WicketViewerSettingsDefault.java | 97 ----------------------
.../viewer/wicketapp/IsisWicketApplication.java | 10 ++-
21 files changed, 71 insertions(+), 243 deletions(-)
diff --git
a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
index a92b7796ae..fc796dd468 100644
---
a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
+++
b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
@@ -34,6 +34,12 @@ import java.util.Optional;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
import javax.activation.DataSource;
import javax.inject.Named;
import javax.validation.Constraint;
@@ -71,12 +77,6 @@ import
org.apache.isis.core.config.metamodel.services.ApplicationFeaturesInitCon
import org.apache.isis.core.config.metamodel.specloader.IntrospectionMode;
import org.apache.isis.core.config.viewer.web.DialogMode;
-import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.ElementType.METHOD;
-import static java.lang.annotation.ElementType.PARAMETER;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
@@ -1941,7 +1941,16 @@ public class IsisConfiguration {
*/
private int maxTitleLengthInTables = 12;
- private Integer maxTitleLengthInParentedTables;
+ private static boolean isValidTitleLenght(final int len) {
+ return len>0;
+ }
+ private int asTitleLenght(final int len) {
+ return isValidTitleLenght(len)
+ ? len
+ : getMaxTitleLengthInTables();
+ }
+
+ private int maxTitleLengthInParentedTables = -1;
/**
* The maximum number of characters to use to render the title of
a domain object (alongside the icon) in a
@@ -1952,18 +1961,18 @@ public class IsisConfiguration {
* </p>
*
* <p>
- * If not specified, then the value of {@link
#getMaxTitleLengthInTables()} is used.
+ * If invalid or not specified, then the value of {@link
#getMaxTitleLengthInTables()} is used.
* </p>
*/
public int getMaxTitleLengthInParentedTables() {
- return maxTitleLengthInParentedTables != null ?
maxTitleLengthInParentedTables : getMaxTitleLengthInTables();
+ return asTitleLenght(maxTitleLengthInParentedTables);
}
public void setMaxTitleLengthInParentedTables(final int val) {
maxTitleLengthInParentedTables = val;
}
- private Integer maxTitleLengthInStandaloneTables;
+ private int maxTitleLengthInStandaloneTables = -1;
/**
* The maximum number of characters to use to render the title of
a domain object (alongside the icon)
@@ -1974,15 +1983,17 @@ public class IsisConfiguration {
* </p>
*
* <p>
- * If not specified, then the value of {@link
#getMaxTitleLengthInTables()} is used.
+ * If invalid or not specified, then the value of {@link
#getMaxTitleLengthInTables()} is used.
* </p>
*/
public int getMaxTitleLengthInStandaloneTables() {
- return maxTitleLengthInStandaloneTables != null ?
maxTitleLengthInStandaloneTables : getMaxTitleLengthInTables();
+ return asTitleLenght(maxTitleLengthInStandaloneTables);
}
/**
* The maximum length that a title of an object will be shown when
rendered in a standalone table;
* will be truncated beyond this (with ellipses to indicate the
truncation).
+ * <p>
+ * If set to negative or zero, sets defaults instead.
*/
public void setMaxTitleLengthInStandaloneTables(final int val) {
maxTitleLengthInStandaloneTables = val;
diff --git
a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingWicket.java
b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingWicket.java
index 14ad534a21..7a2414cc5d 100644
---
a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingWicket.java
+++
b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/conf/Configuration_usingWicket.java
@@ -50,6 +50,7 @@ import static org.junit.Assert.assertEquals;
import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal.base._Casts;
import org.apache.isis.commons.internal.exceptions._Exceptions;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.metamodel.context.MetaModelContext;
import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
import org.apache.isis.core.metamodel.spec.ManagedObject;
@@ -57,7 +58,6 @@ import
org.apache.isis.core.runtime.context.IsisAppCommonContext;
import
org.apache.isis.core.runtime.context.IsisAppCommonContext.HasCommonContext;
import org.apache.isis.testdomain.util.dto.BookDto;
import org.apache.isis.testdomain.util.dto.IBook;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettingsAccessor;
import org.apache.isis.viewer.wicket.model.models.PageType;
import org.apache.isis.viewer.wicket.model.util.PageParameterUtils;
@@ -328,9 +328,10 @@ public class Configuration_usingWicket {
private final PageClassRegistry pageClassRegistry =
getCommonContext().lookupServiceElseFail(PageClassRegistry.class);
- @Getter(lazy=true)
- private final WicketViewerSettings settings =
-
getCommonContext().lookupServiceElseFail(WicketViewerSettings.class);
+ @Override
+ public Wicket getSettings() {
+ return
getCommonContext().getConfiguration().getViewer().getWicket();
+ }
@Override
public Class<? extends Page> getHomePage() {
diff --git
a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettings.java
b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettings.java
deleted file mode 100644
index b7d250bcac..0000000000
---
a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettings.java
+++ /dev/null
@@ -1,72 +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 org.apache.isis.viewer.wicket.model.isis;
-
-import java.io.Serializable;
-
-import org.apache.isis.applib.annotation.PromptStyle;
-
-public interface WicketViewerSettings extends Serializable {
-
- /**
- * as per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setMaxTitleLengthInStandaloneTables(int)}
- */
- int getMaxTitleLengthInStandaloneTables();
-
- /**
- * as per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setMaxTitleLengthInParentedTables(int)}
- */
- int getMaxTitleLengthInParentedTables();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setReplaceDisabledTagWithReadonlyTag(boolean)}
- */
- boolean isReplaceDisabledTagWithReadonlyTag();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setPreventDoubleClickForFormSubmit(boolean)}
- */
- boolean isPreventDoubleClickForFormSubmit();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setPreventDoubleClickForNoArgAction(boolean)}
- */
- boolean isPreventDoubleClickForNoArgAction();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setUseIndicatorForFormSubmit(boolean)}
- */
- boolean isUseIndicatorForFormSubmit();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setUseIndicatorForNoArgAction(boolean)}
- */
- boolean isUseIndicatorForNoArgAction();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setPromptStyle(PromptStyle)}
- */
- PromptStyle getPromptStyle();
-
- /**
- * As per {@link
org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket#setRedirectEvenIfSameObject(boolean)}
- */
- boolean isRedirectEvenIfSameObject();
-
-}
diff --git
a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettingsAccessor.java
b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettingsAccessor.java
index b2fb638e97..8a2f0539ee 100644
---
a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettingsAccessor.java
+++
b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/isis/WicketViewerSettingsAccessor.java
@@ -20,6 +20,6 @@ package org.apache.isis.viewer.wicket.model.isis;
public interface WicketViewerSettingsAccessor {
- WicketViewerSettings getSettings();
+ org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket getSettings();
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersForm.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersForm.java
index 09dee16c95..eb79fdca98 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersForm.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersForm.java
@@ -37,7 +37,6 @@ import
org.apache.isis.viewer.commons.model.PlacementDirection;
import org.apache.isis.viewer.commons.model.components.ComponentType;
import
org.apache.isis.viewer.commons.model.decorators.ConfirmDecorator.ConfirmDecorationModel;
import org.apache.isis.viewer.commons.model.feature.ParameterUiModel;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.ScalarParameterModel;
import org.apache.isis.viewer.wicket.model.models.ScalarPropertyModel;
@@ -59,9 +58,8 @@ extends PromptFormAbstract<ActionModel> {
public ActionParametersForm(
final String id,
final Component parentPanel,
- final WicketViewerSettings settings,
final ActionModel actionModel) {
- super(id, parentPanel, settings, actionModel);
+ super(id, parentPanel, actionModel);
}
protected ActionModel actionModel() {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
index 79c29c66aa..8c590850a5 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
@@ -56,7 +56,7 @@ extends PromptFormPanelAbstract<ManagedObject, ActionModel> {
val actionModel = getModel();
actionModel.clearArguments(); // in case previously used, eg prompt
displayed then cancelled
final ActionParametersForm inputForm =
- new ActionParametersForm(ID_INPUT_FORM, this,
this.getWicketViewerSettings(), actionModel);
+ new ActionParametersForm(ID_INPUT_FORM, this, actionModel);
Wkt.cssAppend(inputForm,
actionModel.getAction().getFeatureIdentifier());
add(inputForm);
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditForm.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditForm.java
index 6ead6c91bc..d5f606ca4f 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditForm.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditForm.java
@@ -24,7 +24,6 @@ import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.isis.commons.functional.Either;
import org.apache.isis.commons.internal.base._Casts;
import org.apache.isis.viewer.commons.model.components.ComponentType;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.ScalarPropertyModel;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
@@ -33,16 +32,16 @@ import org.apache.isis.viewer.wicket.ui.util.Wkt;
import lombok.val;
-class PropertyEditForm extends PromptFormAbstract<ScalarPropertyModel> {
+class PropertyEditForm
+extends PromptFormAbstract<ScalarPropertyModel> {
private static final long serialVersionUID = 1L;
public PropertyEditForm(
final String id,
final Component parentPanel,
- final WicketViewerSettings settings,
final ScalarPropertyModel propertyModel) {
- super(id, parentPanel, settings, propertyModel);
+ super(id, parentPanel, propertyModel);
}
private ScalarPropertyModel scalarPropertyModel() {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
index 9f2ee1beaf..7ff39af29d 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
@@ -47,7 +47,7 @@ extends PromptFormPanelAbstract<ManagedObject,
ScalarPropertyModel> {
private void buildGui() {
val scalarPropertyModel = scalarPropertyModel();
- add(new PropertyEditForm(ID_INPUT_FORM, this,
this.getWicketViewerSettings(), scalarPropertyModel));
+ add(new PropertyEditForm(ID_INPUT_FORM, this, scalarPropertyModel));
}
private ScalarPropertyModel scalarPropertyModel() {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
index 12964a58c4..358ad2a65c 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
@@ -63,7 +63,8 @@ implements CancelHintRequired {
private void buildGui() {
- val isEmpty =
ManagedObjects.isNullOrUnspecifiedOrEmpty(getModel().getObject());
+ val objectModelForLink = getModel();
+ val isEmpty =
ManagedObjects.isNullOrUnspecifiedOrEmpty(objectModelForLink.getObject());
if(isEmpty) {
// represent null reference by a simple markup displaying '(none)'
@@ -73,7 +74,6 @@ implements CancelHintRequired {
} else {
- val objectModelForLink = getModel();
val componentFactory = getComponentFactoryRegistry()
.findComponentFactory(ComponentType.ENTITY_ICON_AND_TITLE,
objectModelForLink);
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java
index 4da0034535..605c89c380 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/linkandlabel/ActionLink.java
@@ -28,17 +28,17 @@ import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.isis.commons.internal.debug._Probe;
import org.apache.isis.commons.internal.debug._Probe.EntryPoint;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
import org.apache.isis.viewer.commons.model.components.ComponentType;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettingsAccessor;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.ActionPromptProvider;
import org.apache.isis.viewer.wicket.model.models.ActionPromptWithExtraContent;
-import org.apache.isis.viewer.wicket.model.util.WktContext;
import org.apache.isis.viewer.wicket.model.util.PageParameterUtils;
+import org.apache.isis.viewer.wicket.model.util.WktContext;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistry;
import
org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistryAccessor;
import
org.apache.isis.viewer.wicket.ui.components.actions.ActionParametersPanel;
@@ -157,7 +157,7 @@ extends IndicatingAjaxLink<ManagedObject> {
: null;
}
- protected WicketViewerSettings getSettings() {
+ protected Wicket getSettings() {
return ((WicketViewerSettingsAccessor)
Application.get()).getSettings();
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderAbstract.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderAbstract.java
index 64abe92862..54129f2f16 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderAbstract.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderAbstract.java
@@ -32,11 +32,11 @@ import
org.apache.isis.applib.value.semantics.ValueSemanticsAbstract.Placeholder
import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal.base._NullSafe;
import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.metamodel.objectmanager.memento.ObjectMemento;
import
org.apache.isis.core.metamodel.objectmanager.memento.ObjectMementoForEmpty;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import lombok.Getter;
@@ -51,7 +51,6 @@ extends ChoiceProvider<ObjectMemento> {
@Getter private final ScalarModel scalarModel;
private transient IsisAppCommonContext commonContext;
- private transient WicketViewerSettings wicketViewerSettings;
public ObjectAdapterMementoProviderAbstract(final ScalarModel scalarModel)
{
this.scalarModel = scalarModel;
@@ -139,11 +138,8 @@ extends ChoiceProvider<ObjectMemento> {
return commonContext;
}
- protected WicketViewerSettings getWicketViewerSettings() {
- if(wicketViewerSettings==null) {
- wicketViewerSettings =
getCommonContext().lookupServiceElseFail(WicketViewerSettings.class);
- }
- return wicketViewerSettings;
+ protected final Wicket getSettings() {
+ return getCommonContext().getConfiguration().getViewer().getWicket();
}
// -- HELPER
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormAbstract.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormAbstract.java
index b366ea3df2..5ef7f359f7 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormAbstract.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormAbstract.java
@@ -24,6 +24,7 @@ import org.apache.wicket.model.IModel;
import org.apache.isis.applib.services.i18n.TranslationContext;
import org.apache.isis.applib.services.i18n.TranslationService;
import org.apache.isis.applib.services.registry.ServiceRegistry;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
import org.apache.isis.viewer.wicket.model.util.WktContext;
@@ -90,4 +91,8 @@ implements ComponentFactoryRegistryAccessor,
PageClassRegistryAccessor {
return getCommonContext().getTranslationService();
}
+ protected final Wicket getSettings() {
+ return getCommonContext().getConfiguration().getViewer().getWicket();
+ }
+
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
index e06d6600d2..73bd8149d0 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/FormExecutorDefault.java
@@ -33,9 +33,9 @@ import
org.apache.isis.applib.services.registry.ServiceRegistry;
import org.apache.isis.commons.functional.Either;
import org.apache.isis.commons.internal.debug._Debug;
import org.apache.isis.commons.internal.debug.xray.XrayUi;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.metamodel.spec.ManagedObjects.EntityUtil;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.FormExecutor;
import org.apache.isis.viewer.wicket.model.models.FormExecutorContext;
@@ -68,13 +68,11 @@ implements FormExecutor {
// -- CONSTRUCTION
- protected final WicketViewerSettings settings;
private final Either<ActionModel, ScalarPropertyModel>
actionOrPropertyModel;
private FormExecutorDefault(
final Either<ActionModel, ScalarPropertyModel>
actionOrPropertyModel) {
this.actionOrPropertyModel = actionOrPropertyModel;
- this.settings = getSettings();
}
/**
@@ -259,10 +257,9 @@ implements FormExecutor {
return getCommonContext().getServiceRegistry();
}
- private WicketViewerSettings getSettings() {
- return
getCommonContext().lookupServiceElseFail(WicketViewerSettings.class);
+ protected final Wicket getSettings() {
+ return getCommonContext().getConfiguration().getViewer().getWicket();
}
-
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/OkCancelForm.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/OkCancelForm.java
index 2bdce828e0..7023810f2a 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/OkCancelForm.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/OkCancelForm.java
@@ -25,7 +25,6 @@ import org.apache.wicket.model.IModel;
import org.apache.wicket.util.string.AppendingStringBuffer;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import
org.apache.isis.viewer.wicket.ui.components.widgets.formcomponent.FormFeedbackPanel;
import org.apache.isis.viewer.wicket.ui.errors.JGrowlBehaviour;
import org.apache.isis.viewer.wicket.ui.util.Wkt;
@@ -41,14 +40,12 @@ extends FormAbstract<ManagedObject>{
public static final String ID_CANCEL_BUTTON = "cancelButton";
private static final String ID_FEEDBACK = "feedback";
- protected final WicketViewerSettings settings;
protected final AjaxButton okButton;
protected final AjaxButton cancelButton;
- protected OkCancelForm(final String id, final WicketViewerSettings
settings, final IModel<ManagedObject> model) {
+ protected OkCancelForm(final String id, final IModel<ManagedObject> model)
{
super(id, model);
- this.settings = settings;
- okButton = Wkt.buttonAddOk(this, ID_OK_BUTTON, ()->translate("OK"),
settings, this::onOkSubmitted);
+ okButton = Wkt.buttonAddOk(this, ID_OK_BUTTON, ()->translate("OK"),
getSettings(), this::onOkSubmitted);
cancelButton = Wkt.buttonAdd(this, ID_CANCEL_BUTTON,
()->translate("Cancel"), (button, target)->{
onCancelSubmitted(target);
});
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelBase.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelBase.java
index 2e7bba858e..390e566f32 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelBase.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelBase.java
@@ -31,6 +31,7 @@ import
org.apache.isis.applib.services.iactnlayer.InteractionService;
import org.apache.isis.applib.services.userreg.EmailNotificationService;
import org.apache.isis.commons.internal.exceptions._Exceptions;
import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.config.viewer.web.WebAppContextPath;
import org.apache.isis.core.interaction.session.MessageBroker;
import org.apache.isis.core.metamodel.context.MetaModelContext;
@@ -39,7 +40,6 @@ import
org.apache.isis.core.runtime.context.IsisAppCommonContext.HasCommonContex
import org.apache.isis.viewer.commons.model.header.HeaderUiModel;
import org.apache.isis.viewer.commons.model.header.HeaderUiModelProvider;
import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ImageResourceCache;
import org.apache.isis.viewer.wicket.model.util.WktContext;
import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistry;
@@ -60,7 +60,6 @@ implements HasCommonContext {
private static final long serialVersionUID = 1L;
- private transient WicketViewerSettings wicketViewerSettings;
private transient WebAppContextPath webAppContextPath;
private transient IsisConfiguration isisConfiguration;
private transient PageClassRegistry pageClassRegistry;
@@ -89,8 +88,8 @@ implements HasCommonContext {
return commonContext = WktContext.computeIfAbsent(commonContext);
}
- public WicketViewerSettings getWicketViewerSettings() {
- return wicketViewerSettings =
computeIfAbsent(WicketViewerSettings.class, wicketViewerSettings);
+ public Wicket getWicketViewerSettings() {
+ return getIsisConfiguration().getViewer().getWicket();
}
public WebAppContextPath getWebAppContextPath() {
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormAbstract.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormAbstract.java
index 8df14c5946..81d38cffa1 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormAbstract.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormAbstract.java
@@ -38,7 +38,6 @@ import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.viewer.wicket.model.hints.IsisActionCompletedEvent;
import
org.apache.isis.viewer.wicket.model.hints.IsisPropertyEditCompletedEvent;
import org.apache.isis.viewer.wicket.model.hints.UiHintContainer;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.ActionPromptProvider;
import org.apache.isis.viewer.wicket.model.models.FormExecutorContext;
@@ -68,10 +67,9 @@ implements ScalarModelSubscriber {
protected PromptFormAbstract(
final String id,
final Component parentPanel,
- final WicketViewerSettings settings,
final T model) {
- super(id, settings, model);
+ super(id, model);
this.parentPanel = parentPanel;
addParameters();
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/Wkt.java
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/Wkt.java
index 17bc49ca2a..18cff136a0 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/Wkt.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/util/Wkt.java
@@ -85,16 +85,18 @@ import org.apache.isis.commons.internal.debug._Probe;
import org.apache.isis.commons.internal.debug._Probe.EntryPoint;
import
org.apache.isis.commons.internal.functions._Functions.SerializableFunction;
import
org.apache.isis.commons.internal.functions._Functions.SerializableSupplier;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import
org.apache.isis.core.metamodel.interactions.managed.nonscalar.DataTableModel;
import org.apache.isis.viewer.commons.model.StringForRendering;
import org.apache.isis.viewer.wicket.model.hints.IsisActionCompletedEvent;
import org.apache.isis.viewer.wicket.model.hints.IsisEnvelopeEvent;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import
org.apache.isis.viewer.wicket.ui.components.scalars.markup.MarkupComponent;
import
org.apache.isis.viewer.wicket.ui.components.widgets.links.AjaxLinkNoPropagate;
import org.apache.isis.viewer.wicket.ui.panels.PanelUtil;
-import static de.agilecoders.wicket.jquery.JQuery.$;
+import lombok.NonNull;
+import lombok.val;
+import lombok.experimental.UtilityClass;
import
de.agilecoders.wicket.core.markup.html.bootstrap.behavior.CssClassNameAppender;
import de.agilecoders.wicket.core.util.Attributes;
@@ -105,9 +107,8 @@ import
de.agilecoders.wicket.extensions.markup.html.bootstrap.form.checkboxx.Che
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.form.checkboxx.CheckBoxXConfig.Sizes;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.form.fileinput.BootstrapFileInputField;
import de.agilecoders.wicket.jquery.Key;
-import lombok.NonNull;
-import lombok.val;
-import lombok.experimental.UtilityClass;
+
+import static de.agilecoders.wicket.jquery.JQuery.$;
/**
* Wicket common idioms, in alphabetical order.
@@ -311,7 +312,7 @@ public class Wkt {
public AjaxButton buttonOk(
final String id,
final IModel<String> labelModel,
- final WicketViewerSettings settings,
+ final Wicket settings,
final SerializableBiConsumer<AjaxButton, AjaxRequestTarget>
onClick) {
return settings.isUseIndicatorForFormSubmit()
? new IndicatingAjaxButton(id, labelModel) {
@@ -356,7 +357,7 @@ public class Wkt {
final MarkupContainer markupContainer,
final String id,
final IModel<String> labelModel,
- final WicketViewerSettings settings,
+ final Wicket settings,
final SerializableBiConsumer<AjaxButton, AjaxRequestTarget>
onClick) {
return add(markupContainer, buttonOk(id, labelModel, settings,
onClick));
}
diff --git
a/viewers/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ObjectAdapterMementoProviderForValueChoicesTest.java
b/viewers/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ObjectAdapterMementoProviderForValueChoicesTest.java
index 77c6a41196..30bc2f7efd 100644
---
a/viewers/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ObjectAdapterMementoProviderForValueChoicesTest.java
+++
b/viewers/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ObjectAdapterMementoProviderForValueChoicesTest.java
@@ -39,7 +39,6 @@ import
org.apache.isis.core.metamodel.objectmanager.memento.ObjectMemento;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import
org.apache.isis.viewer.wicket.ui.components.widgets.select2.providers.ObjectAdapterMementoProviderForValueChoices;
@@ -60,7 +59,6 @@ public class ObjectAdapterMementoProviderForValueChoicesTest {
@Mock private ObjectSpecification mockSpec;
@Mock private ScalarModel mockScalarModel;
@Mock private IsisAppCommonContext mockCommonContext;
- @Mock private WicketViewerSettings mockWicketViewerSettings;
@Before
public void setUp() throws Exception {
@@ -78,9 +76,6 @@ public class ObjectAdapterMementoProviderForValueChoicesTest {
allowing(mockScalarModel).getCommonContext();
will(returnValue(mockCommonContext));
-
allowing(mockCommonContext).lookupServiceElseFail(WicketViewerSettings.class);
- will(returnValue(mockWicketViewerSettings));
-
allowing(mockCommonContext).getSpecificationLoader();
will(returnValue(mockSpecificationLoader));
diff --git
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisModuleViewerWicketViewer.java
b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisModuleViewerWicketViewer.java
index bc8f7d2124..59f0fd38e3 100644
---
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisModuleViewerWicketViewer.java
+++
b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisModuleViewerWicketViewer.java
@@ -32,7 +32,6 @@ import
org.apache.isis.viewer.wicket.viewer.services.DeepLinkServiceWicket;
import
org.apache.isis.viewer.wicket.viewer.services.HintStoreUsingWicketSession;
import
org.apache.isis.viewer.wicket.viewer.services.ImageResourceCacheClassPath;
import
org.apache.isis.viewer.wicket.viewer.services.TranslationsResolverWicket;
-import
org.apache.isis.viewer.wicket.viewer.services.WicketViewerSettingsDefault;
import org.apache.isis.viewer.wicket.viewer.webmodule.WebModuleWicket;
import org.apache.isis.viewer.wicket.viewer.wicketapp.config.BootstrapInitWkt;
import org.apache.isis.viewer.wicket.viewer.wicketapp.config.DebugInitWkt;
@@ -69,7 +68,6 @@ import
org.apache.isis.viewer.wicket.viewer.wicketapp.config.WicketViewerCssBund
PageNavigationServiceDefault.class,
TranslationsResolverWicket.class,
WebModuleWicket.class,
- WicketViewerSettingsDefault.class,
})
public class IsisModuleViewerWicketViewer {
diff --git
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
deleted file mode 100644
index 0ca9bca8d2..0000000000
---
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/services/WicketViewerSettingsDefault.java
+++ /dev/null
@@ -1,97 +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 org.apache.isis.viewer.wicket.viewer.services;
-
-import javax.annotation.Priority;
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Service;
-
-import org.apache.isis.applib.annotation.PriorityPrecedence;
-import org.apache.isis.applib.annotation.PromptStyle;
-import org.apache.isis.core.config.IsisConfiguration;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
-import org.apache.isis.viewer.wicket.model.util.WktContext;
-
-@Service
-@Named("isis.viewer.wicket..WicketViewerSettingsDefault")
-@Priority(PriorityPrecedence.MIDPOINT)
-@Qualifier("Default")
-public class WicketViewerSettingsDefault implements WicketViewerSettings {
-
- private static final long serialVersionUID = 1L;
-
- @Inject private transient IsisConfiguration configuration;
-
- @Override
- public int getMaxTitleLengthInStandaloneTables() {
- return
getConfiguration().getViewer().getWicket().getMaxTitleLengthInStandaloneTables();
- }
-
- @Override
- public int getMaxTitleLengthInParentedTables() {
- return
getConfiguration().getViewer().getWicket().getMaxTitleLengthInParentedTables();
- }
-
- @Override
- public boolean isReplaceDisabledTagWithReadonlyTag() {
- return
getConfiguration().getViewer().getWicket().isReplaceDisabledTagWithReadonlyTag();
- }
-
- @Override
- public boolean isPreventDoubleClickForFormSubmit() {
- return
getConfiguration().getViewer().getWicket().isPreventDoubleClickForFormSubmit();
- }
-
- @Override
- public boolean isPreventDoubleClickForNoArgAction() {
- return
getConfiguration().getViewer().getWicket().isPreventDoubleClickForNoArgAction();
- }
-
- @Override
- public boolean isUseIndicatorForFormSubmit() {
- return
getConfiguration().getViewer().getWicket().isUseIndicatorForFormSubmit();
- }
-
- @Override
- public boolean isUseIndicatorForNoArgAction() {
- return
getConfiguration().getViewer().getWicket().isUseIndicatorForNoArgAction();
- }
-
- @Override
- public PromptStyle getPromptStyle() {
- return getConfiguration().getViewer().getWicket().getPromptStyle();
- }
-
- @Override
- public boolean isRedirectEvenIfSameObject() {
- return
getConfiguration().getViewer().getWicket().isRedirectEvenIfSameObject();
- }
-
- // -- HELPER
-
- private IsisConfiguration getConfiguration() {
- if(configuration==null) {
- configuration = WktContext.getCommonContext().getConfiguration();
- }
- return configuration;
- }
-}
diff --git
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
index 07c19b64f9..1e59486637 100644
---
a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
+++
b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
@@ -53,6 +53,7 @@ import
org.apache.wicket.spring.injection.annot.SpringComponentInjector;
import org.apache.isis.commons.internal.concurrent._ConcurrentContext;
import org.apache.isis.commons.internal.concurrent._ConcurrentTaskList;
import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.IsisConfiguration.Viewer.Wicket;
import org.apache.isis.core.config.environment.IsisSystemEnvironment;
import org.apache.isis.core.metamodel.context.MetaModelContext;
import org.apache.isis.core.metamodel.objectmanager.memento.ObjectMemento;
@@ -60,7 +61,6 @@ import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.runtime.context.IsisAppCommonContext;
import
org.apache.isis.core.runtime.context.IsisAppCommonContext.HasCommonContext;
import org.apache.isis.viewer.wicket.model.isis.WicketApplicationInitializer;
-import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettingsAccessor;
import org.apache.isis.viewer.wicket.model.models.PageType;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
@@ -129,9 +129,6 @@ implements
@Getter(onMethod = @__(@Override))
@Inject private PageClassRegistry pageClassRegistry;
- @Getter(onMethod = @__(@Override))
- @Inject private WicketViewerSettings settings;
-
// -- CONSTRUCTION
public IsisWicketApplication() {
@@ -428,4 +425,9 @@ implements
return (Class<? extends WebPage>)
getPageClassRegistry().getPageClass(PageType.PASSWORD_RESET);
}
+ @Override
+ public Wicket getSettings() {
+ return configuration.getViewer().getWicket();
+ }
+
}