You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/01/21 18:25:49 UTC
[isis] branch master updated: ISIS-2158: fix wicket components
Brand*/Favicon (Serialization)
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 60161f9 ISIS-2158: fix wicket components Brand*/Favicon (Serialization)
60161f9 is described below
commit 60161f94642bf128fa394dacac15fa31350e2a8c
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Jan 21 19:25:39 2020 +0100
ISIS-2158: fix wicket components Brand*/Favicon (Serialization)
---
.../apache/isis/core/config/IsisConfiguration.java | 14 +++-------
.../metamodel/MetaModelServiceDefault.java | 6 +---
.../specimpl/ObjectSpecificationAbstract.java | 6 +---
.../ui/components/widgets/favicon/Favicon.java | 23 ++++++----------
.../ui/components/widgets/navbar/BrandLogo.java | 32 ++++++++--------------
.../ui/components/widgets/navbar/BrandName.java | 27 ++++++++----------
6 files changed, 38 insertions(+), 70 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 781889d..ef437b9 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
@@ -18,10 +18,10 @@
*/
package org.apache.isis.core.config;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
-import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Locale;
@@ -31,7 +31,6 @@ import java.util.Optional;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
-import javax.activation.DataSource;
import javax.inject.Inject;
import javax.inject.Named;
import javax.validation.constraints.NotEmpty;
@@ -42,22 +41,15 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.core.env.ConfigurableEnvironment;
import org.springframework.validation.annotation.Validated;
-import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.Collection;
-import org.apache.isis.applib.annotation.CollectionLayout;
import org.apache.isis.applib.annotation.DomainObject;
-import org.apache.isis.applib.annotation.DomainObjectLayout;
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.LabelPosition;
-import org.apache.isis.applib.annotation.ParameterLayout;
import org.apache.isis.applib.annotation.PromptStyle;
-import org.apache.isis.applib.events.domain.ActionDomainEvent;
import org.apache.isis.applib.services.command.CommandWithDto;
import org.apache.isis.applib.services.i18n.TranslationService;
import org.apache.isis.applib.services.iactn.Interaction;
import org.apache.isis.applib.services.publish.PublishedObjects;
-import org.apache.isis.core.commons.internal.base._Strings;
import org.apache.isis.core.config.metamodel.facets.AuditObjectsConfiguration;
import org.apache.isis.core.config.metamodel.facets.CommandActionsConfiguration;
import org.apache.isis.core.config.metamodel.facets.CommandPropertiesConfiguration;
@@ -84,8 +76,10 @@ import lombok.Value;
@ConfigurationProperties(IsisConfiguration.ROOT_PREFIX)
@Data
@Validated
-public class IsisConfiguration {
+public class IsisConfiguration implements Serializable {
+ private static final long serialVersionUID = 1L;
+
public static final String ROOT_PREFIX = "isis";
@Autowired private ConfigurableEnvironment environment;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
index 92a9283..193942b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelServiceDefault.java
@@ -42,7 +42,6 @@ import org.apache.isis.applib.services.metamodel.MetaModelService;
import org.apache.isis.core.commons.internal.collections._Lists;
import org.apache.isis.core.commons.internal.ioc.BeanSort;
import org.apache.isis.core.metamodel.facets.actions.command.CommandFacet;
-import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
import org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureId;
import org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureType;
@@ -187,10 +186,7 @@ public class MetaModelServiceDefault implements MetaModelService {
}
final ObjectSpecification objectSpec = specificationLoader.loadSpecification(domainType);
if(objectSpec.isManagedBean()) {
- if(objectSpec.getFacet(DomainServiceFacet.class)!=null) {
- return BeanSort.MANAGED_BEAN_CONTRIBUTING;
- }
- return BeanSort.MANAGED_BEAN_NOT_CONTRIBUTING;
+ return BeanSort.MANAGED_BEAN_CONTRIBUTING;
}
if(objectSpec.isViewModel()) {
return BeanSort.VIEW_MODEL;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
index c8a549c..995d7b4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
@@ -59,7 +59,6 @@ import org.apache.isis.core.metamodel.facets.all.hide.HiddenFacet;
import org.apache.isis.core.metamodel.facets.all.named.NamedFacet;
import org.apache.isis.core.metamodel.facets.collections.CollectionFacet;
import org.apache.isis.core.metamodel.facets.members.cssclass.CssClassFacet;
-import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
import org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet;
import org.apache.isis.core.metamodel.facets.object.entity.EntityFacet;
import org.apache.isis.core.metamodel.facets.object.icon.IconFacet;
@@ -1094,10 +1093,7 @@ public abstract class ObjectSpecificationAbstract extends FacetHolderImpl implem
protected BeanSort sortOf(ObjectSpecification spec) {
if(isManagedBean()) { // <-- not a facet, because we get this information earlier (during class scanning)
- if(spec.getFacet(DomainServiceFacet.class)!=null) {
- return BeanSort.MANAGED_BEAN_CONTRIBUTING;
- }
- return BeanSort.MANAGED_BEAN_NOT_CONTRIBUTING;
+ return BeanSort.MANAGED_BEAN_CONTRIBUTING;
}
if(containsFacet(ValueFacet.class)) {
return BeanSort.VALUE;
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/favicon/Favicon.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/favicon/Favicon.java
index 7315336..200abc8 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/favicon/Favicon.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/favicon/Favicon.java
@@ -18,8 +18,6 @@
*/
package org.apache.isis.viewer.wicket.ui.components.widgets.favicon;
-import java.util.Optional;
-
import javax.inject.Inject;
import org.apache.wicket.markup.ComponentTag;
@@ -36,8 +34,8 @@ public class Favicon extends WebComponent {
private static final long serialVersionUID = 1L;
- @Inject private transient IsisConfiguration isisConfiguration;
- @Inject private transient WebAppContextPath webAppContextPath;
+ @Inject private IsisConfiguration isisConfiguration; // serializable
+ @Inject private WebAppContextPath webAppContextPath; // serializable
private String url = null;
private String contentType = null;
@@ -50,17 +48,14 @@ public class Favicon extends WebComponent {
protected void onConfigure() {
super.onConfigure();
- if(webAppContextPath != null && isisConfiguration != null) {
-
- url = isisConfiguration.getViewer().getWicket().getApplication().getFaviconUrl()
- .filter(x -> !Strings.isEmpty(x))
- .map(webAppContextPath::prependContextPathIfLocal)
- .orElse(null);
+ url = isisConfiguration.getViewer().getWicket().getApplication().getFaviconUrl()
+ .filter(x -> !Strings.isEmpty(x))
+ .map(webAppContextPath::prependContextPathIfLocal)
+ .orElse(null);
- contentType = isisConfiguration.getViewer().getWicket().getApplication().getFaviconContentType()
- .filter(x -> !Strings.isEmpty(x))
- .orElse(null);;
- }
+ contentType = isisConfiguration.getViewer().getWicket().getApplication().getFaviconContentType()
+ .filter(x -> !Strings.isEmpty(x))
+ .orElse(null);;
setVisible(url != null);
}
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandLogo.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandLogo.java
index e71c839..de82097 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandLogo.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandLogo.java
@@ -18,8 +18,6 @@
*/
package org.apache.isis.viewer.wicket.ui.components.widgets.navbar;
-import java.util.Optional;
-
import javax.inject.Inject;
import org.apache.wicket.markup.ComponentTag;
@@ -37,8 +35,8 @@ public class BrandLogo extends WebComponent {
private final Placement placement;
- @Inject private transient IsisConfiguration isisConfiguration;
- @Inject private transient WebAppContextPath webAppContextPath;
+ @Inject private IsisConfiguration isisConfiguration; // serializable
+ @Inject private WebAppContextPath webAppContextPath; // serializable
/**
* Constructor.
@@ -65,23 +63,17 @@ public class BrandLogo extends WebComponent {
}
private String url() {
+ final String logoHeaderUrl =
+ isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoHeader()
+ .map(webAppContextPath::prependContextPathIfLocal)
+ .orElse(null);
+
+ String logoSigninUrl =
+ isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoSignin()
+ .map(webAppContextPath::prependContextPathIfLocal)
+ .orElse(null);
- // TODO: sort this out, need to look up from service locator
- // see also BrandName
- if(webAppContextPath != null && isisConfiguration != null) {
- final String logoHeaderUrl =
- isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoHeader()
- .map(webAppContextPath::prependContextPathIfLocal)
- .orElse(null);
-
- String logoSigninUrl =
- isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoSignin()
- .map(webAppContextPath::prependContextPathIfLocal)
- .orElse(null);
-
- return placement.urlFor(logoHeaderUrl, logoSigninUrl);
- }
- return null;
+ return placement.urlFor(logoHeaderUrl, logoSigninUrl);
}
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandName.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandName.java
index 26d32c6..3638d04 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandName.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/BrandName.java
@@ -35,8 +35,8 @@ public class BrandName extends Label {
private final Placement placement;
- @Inject private transient IsisConfiguration isisConfiguration;
- @Inject private transient WebAppContextPath webAppContextPath;
+ @Inject private IsisConfiguration isisConfiguration; // serializable
+ @Inject private WebAppContextPath webAppContextPath; // serializable
private String logoHeaderUrl;
private String logoSigninUrl;
@@ -59,20 +59,15 @@ public class BrandName extends Label {
protected void onConfigure() {
super.onConfigure();
- // TODO: sort this out, need to look up from service locator
- // see also BrandLogo
- if(webAppContextPath != null && isisConfiguration != null) {
-
- applicationName = isisConfiguration.getViewer().getWicket().getApplication().getName();
- logoHeaderUrl =
- isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoHeader()
- .map(webAppContextPath::prependContextPathIfLocal)
- .orElse(null);
- logoSigninUrl =
- isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoSignin()
- .map(webAppContextPath::prependContextPathIfLocal)
- .orElse(null);
- }
+ applicationName = isisConfiguration.getViewer().getWicket().getApplication().getName();
+ logoHeaderUrl =
+ isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoHeader()
+ .map(webAppContextPath::prependContextPathIfLocal)
+ .orElse(null);
+ logoSigninUrl =
+ isisConfiguration.getViewer().getWicket().getApplication().getBrandLogoSignin()
+ .map(webAppContextPath::prependContextPathIfLocal)
+ .orElse(null);
setVisible(placement.urlFor(logoHeaderUrl, logoSigninUrl) == null);
}