ISIS-1696: shows menuBar as an extension for RO viewer's representation of a service
Project: http://git-wip-us.apache.org/repos/asf/isis/repo Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/bdb84968 Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/bdb84968 Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/bdb84968 Branch: refs/heads/master Commit: bdb84968a09273dcda59432f863f0d340d2e96f6 Parents: a4279f0 Author: Dan Haywood <[email protected]> Authored: Tue Aug 15 21:48:53 2017 +0100 Committer: Dan Haywood <[email protected]> Committed: Tue Aug 15 21:48:53 2017 +0100 ---------------------------------------------------------------------- .../domainobjects/DomainObjectReprRenderer.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/isis/blob/bdb84968/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java ---------------------------------------------------------------------- diff --git a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java index 4263b83..2f64732 100644 --- a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java +++ b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java @@ -18,8 +18,10 @@ package org.apache.isis.viewer.restfulobjects.rendering.domainobjects; import java.util.List; +import org.apache.isis.applib.annotation.DomainServiceLayout; import org.apache.isis.core.metamodel.adapter.ObjectAdapter; import org.apache.isis.core.metamodel.consent.Consent; +import org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet; import org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet; import org.apache.isis.core.metamodel.facets.object.title.TitleFacet; import org.apache.isis.core.metamodel.services.ServiceUtil; @@ -177,6 +179,17 @@ public class DomainObjectReprRenderer extends ReprRendererAbstract<DomainObjectR // extensions getExtensions().mapPut("isService", isService); getExtensions().mapPut("isPersistent", objectAdapter.representsPersistent()); + if(isService) { + final ObjectSpecification objectSpec = objectAdapter.getSpecification(); + final DomainServiceLayoutFacet layoutFacet = + objectSpec.getFacet(DomainServiceLayoutFacet.class); + if(layoutFacet != null) { + final DomainServiceLayout.MenuBar menuBar = layoutFacet.getMenuBar(); + if(menuBar != null) { + getExtensions().mapPut("menuBar", menuBar); + } + } + } } return representation;
