You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/05/14 08:29:05 UTC

[isis-app-helloworld] 01/02: rationalizing with jdo-SNAPSHOT

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch jpa-SNAPSHOT
in repository https://gitbox.apache.org/repos/asf/isis-app-helloworld.git

commit 798f7ffb8ea0b0a05afffaa8a82953568d2999b7
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri May 14 09:26:22 2021 +0100

    rationalizing with jdo-SNAPSHOT
---
 pom.xml                                            |  3 +
 .../domainapp/modules/hello/HelloWorldModule.java  |  2 -
 .../modules/hello/dom/hwo/HelloWorldObject.java    | 30 ++++++--
 .../hello/dom/hwo/HelloWorldObject.layout.xml      | 15 +---
 src/main/java/domainapp/webapp/HelloWorldApp.java  |  2 -
 src/main/resources/application.yml                 |  1 -
 src/main/resources/menubars.layout.xml             | 89 ++++++++--------------
 7 files changed, 57 insertions(+), 85 deletions(-)

diff --git a/pom.xml b/pom.xml
index 6c4bbe5..4cc22c7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,10 @@
     <parent>
         <groupId>org.apache.isis.app</groupId>
         <artifactId>isis-app-starter-parent</artifactId>
+        <version>2.0.0-SNAPSHOT</version>
+<!--
         <version>2.0.0-M5.20210413-1443-108a3a48</version>
+-->
         <relativePath/>
     </parent>
 
diff --git a/src/main/java/domainapp/modules/hello/HelloWorldModule.java b/src/main/java/domainapp/modules/hello/HelloWorldModule.java
index a465e6b..7a5b3fe 100644
--- a/src/main/java/domainapp/modules/hello/HelloWorldModule.java
+++ b/src/main/java/domainapp/modules/hello/HelloWorldModule.java
@@ -6,8 +6,6 @@ import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
 
-import domainapp.modules.hello.dom.hwo.HelloWorldObject;
-
 @Configuration
 @Import({})
 @ComponentScan
diff --git a/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.java b/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.java
index a46dd22..05e4115 100644
--- a/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.java
+++ b/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.java
@@ -51,10 +51,12 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
         return "Object: " + getName();
     }
 
-    @Name
+
     @javax.persistence.Column(length = Name.MAX_LEN, nullable = false)
-    @PropertyLayout(fieldSetId = "identity", sequence = "1")
     private String name;
+
+    @Name
+    @PropertyLayout(fieldSetId = "identity", sequence = "1")
     public String getName() {
         return name;
     }
@@ -62,10 +64,12 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
         this.name = name;
     }
 
-    @Notes
+
     @javax.persistence.Column(length = Notes.MAX_LEN, nullable = true)
-    @PropertyLayout(fieldSetId = "details", sequence = "1")
     private String notes;
+
+    @Notes
+    @PropertyLayout(fieldSetId = "details", sequence = "1", multiLine = 10, hidden = Where.ALL_TABLES)
     public String getNotes() {
         return notes;
     }
@@ -73,10 +77,14 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
         this.notes = notes;
     }
 
+
     @Action(
             semantics = SemanticsOf.IDEMPOTENT,
-            executionPublishing = Publishing.ENABLED,
-            associateWith = "name"
+            executionPublishing = Publishing.ENABLED
+    )
+    @ActionLayout(
+            associateWith = "name",
+            describedAs = "Updates the object's name"
     )
     public HelloWorldObject updateName(
             @Name final String name) {
@@ -88,8 +96,14 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
     }
 
 
-    @Action(semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE, associateWith = "name")
-    @ActionLayout(position = ActionLayout.Position.PANEL)
+    @Action(
+            semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE
+    )
+    @ActionLayout(
+            associateWith = "name",
+            describedAs = "Deletes this object from the persistent datastore",
+            position = ActionLayout.Position.PANEL
+    )
     public void delete() {
         final String title = titleService.titleOf(this);
         messageService.informUser(String.format("'%s' deleted", title));
diff --git a/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.layout.xml b/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.layout.xml
index abe9b03..dd54afa 100644
--- a/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.layout.xml
+++ b/src/main/java/domainapp/modules/hello/dom/hwo/HelloWorldObject.layout.xml
@@ -14,16 +14,7 @@
                         <bs3:tab name="Identity">
                             <bs3:row>
                                 <bs3:col span="12">
-                                    <c:fieldSet name="Identity" id="identity">
-                                        <c:action id="delete">
-                                            <c:describedAs>Deletes this object from the persistent datastore</c:describedAs>
-                                        </c:action>
-                                        <c:property id="name" namedEscaped="true">
-                                            <c:action id="updateName">
-                                                <c:describedAs>Updates the object's name</c:describedAs>
-                                            </c:action>
-                                        </c:property>
-                                    </c:fieldSet>
+                                    <c:fieldSet name="Identity" id="identity"/>
                                 </bs3:col>
                             </bs3:row>
                         </bs3:tab>
@@ -44,9 +35,7 @@
                     </bs3:tabGroup>
                 </bs3:col>
                 <bs3:col span="12">
-                    <c:fieldSet name="" id="details">
-                        <c:property id="notes" namedEscaped="true" multiLine="10" hidden="ALL_TABLES"/>
-                    </c:fieldSet>
+                    <c:fieldSet name="" id="details"/>
                 </bs3:col>
             </bs3:row>
         </bs3:col>
diff --git a/src/main/java/domainapp/webapp/HelloWorldApp.java b/src/main/java/domainapp/webapp/HelloWorldApp.java
index 928d6df..0b9aafa 100644
--- a/src/main/java/domainapp/webapp/HelloWorldApp.java
+++ b/src/main/java/domainapp/webapp/HelloWorldApp.java
@@ -4,8 +4,6 @@ import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
 import org.springframework.context.annotation.Import;
-import org.springframework.context.annotation.PropertySource;
-import org.springframework.context.annotation.PropertySources;
 
 import org.apache.isis.core.config.presets.IsisPresets;
 
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 45e8658..67a7e9f 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -68,4 +68,3 @@ server:
 spring:
   banner:
     location: banner.txt
-
diff --git a/src/main/resources/menubars.layout.xml b/src/main/resources/menubars.layout.xml
index 5235c5d..5343643 100644
--- a/src/main/resources/menubars.layout.xml
+++ b/src/main/resources/menubars.layout.xml
@@ -4,15 +4,9 @@
         <mb3:menu>
             <mb3:named>Hello World Objects</mb3:named>
             <mb3:section>
-                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="create">
-                    <cpt:named>Create</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="findByName">
-                    <cpt:named>Find By Name</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="listAll">
-                    <cpt:named>List All</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="create"/>
+                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="findByName"/>
+                <mb3:serviceAction objectType="hello.HelloWorldObjects" id="listAll"/>
             </mb3:section>
         </mb3:menu>
         <mb3:menu unreferencedActions="true">
@@ -23,58 +17,43 @@
         <mb3:menu>
             <mb3:named>Prototyping</mb3:named>
             <mb3:section>
+                <mb3:named>Fixtures</mb3:named>
+                <mb3:serviceAction objectType="isis.ext.fixtures.FixtureScripts" id="runFixtureScript"/>
+                <mb3:serviceAction objectType="isis.ext.fixtures.FixtureScripts" id="recreateObjectsAndReturnFirst"/>
+            </mb3:section>
+            <mb3:section>
+                <mb3:named>Impersonate</mb3:named>
+                <mb3:serviceAction objectType="isis.sudo.ImpersonateMenu" id="impersonate"/>
+                <mb3:serviceAction objectType="isis.sudo.ImpersonateMenu" id="impersonateWithRoles"/>
+                <mb3:serviceAction objectType="isis.sudo.ImpersonateMenu" id="stopImpersonating"/>
+            </mb3:section>
+            <mb3:section>
                 <mb3:named>Layouts</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.LayoutServiceMenu" id="downloadLayouts">
-                    <cpt:named>Download Object Layouts (ZIP)</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.LayoutServiceMenu" id="downloadMenuBarsLayout">
-                    <cpt:named>Download Menu Bars Layout (XML)</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="isis.applib.LayoutServiceMenu" id="downloadLayouts"/>
+                <mb3:serviceAction objectType="isis.applib.LayoutServiceMenu" id="downloadMenuBarsLayout"/>
             </mb3:section>
             <mb3:section>
                 <mb3:named>Meta Model</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.MetaModelServiceMenu" id="downloadMetaModelXml">
-                    <cpt:named>Download Meta Model (XML)</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.MetaModelServiceMenu" id="downloadMetaModelCsv">
-                    <cpt:named>Download Meta Model (CSV)</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="isis.applib.MetaModelServiceMenu" id="downloadMetaModelXml"/>
+                <mb3:serviceAction objectType="isis.applib.MetaModelServiceMenu" id="downloadMetaModelCsv"/>
             </mb3:section>
             <mb3:section>
                 <mb3:named>Persistence</mb3:named>
-                <mb3:serviceAction objectType="isis.persistence.jdo.JdoMetamodelMenu" id="downloadMetamodels">
-                    <cpt:named>Download JDO Metamodels (ZIP)</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.ext.h2Console.H2ManagerMenu" id="openH2Console">
-                    <cpt:named>H2 Console</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="isis.persistence.jdo.JdoMetamodelMenu" id="downloadMetamodels"/>
+                <mb3:serviceAction objectType="isis.ext.h2Console.H2ManagerMenu" id="openH2Console"/>
             </mb3:section>
             <mb3:section>
                 <mb3:named>REST API</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.SwaggerServiceMenu" id="openSwaggerUi">
-                    <cpt:named>Open Swagger Ui</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.SwaggerServiceMenu" id="openRestApi">
-                    <cpt:named>Open Rest Api</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.SwaggerServiceMenu" id="downloadSwaggerSchemaDefinition">
-                    <cpt:named>Download Swagger Schema Definition</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="isis.viewer.restfulobjects.SwaggerServiceMenu" id="openSwaggerUi"/>
+                <mb3:serviceAction objectType="isis.viewer.restfulobjects.SwaggerServiceMenu" id="openRestApi"/>
+                <mb3:serviceAction objectType="isis.viewer.restfulobjects.SwaggerServiceMenu" id="downloadSwaggerSchemaDefinition"/>
             </mb3:section>
             <mb3:section>
-                <mb3:named>Translations</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="downloadTranslations">
-                    <cpt:named>Download Translations</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="resetTranslationCache">
-                    <cpt:named>Clear translation cache</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="switchToReadingTranslations">
-                    <cpt:named>Switch To Reading Translations</cpt:named>
-                </mb3:serviceAction>
-                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="switchToWritingTranslations">
-                    <cpt:named>Switch To Writing Translations</cpt:named>
-                </mb3:serviceAction>
+                <mb3:named>i18n</mb3:named>
+                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="downloadTranslations"/>
+                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="resetTranslationCache"/>
+                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="switchToReadingTranslations"/>
+                <mb3:serviceAction objectType="isis.applib.TranslationServicePoMenu" id="switchToWritingTranslations"/>
             </mb3:section>
         </mb3:menu>
     </mb3:secondary>
@@ -83,18 +62,10 @@
             <mb3:named/>
             <mb3:section>
                 <mb3:named>Configuration</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.ConfigurationMenu" id="configuration"/>
-            </mb3:section>
-            <mb3:section>
-                <mb3:named>Impersonate User</mb3:named>
-                <mb3:serviceAction objectType="isis.applib.ImpersonateMenu" id="impersonate"/>
-                <mb3:serviceAction objectType="isis.applib.ImpersonateMenu" id="impersonateWithRoles"/>
-                <mb3:serviceAction objectType="isis.applib.ImpersonateMenu" id="stopImpersonating"/>
+                <mb3:serviceAction objectType="isis.conf.ConfigurationMenu" id="configuration"/>
             </mb3:section>
             <mb3:section>
-                <mb3:serviceAction objectType="isis.security.LogoutMenu" id="logout">
-                    <cpt:named>Logout</cpt:named>
-                </mb3:serviceAction>
+                <mb3:serviceAction objectType="isis.security.LogoutMenu" id="logout"/>
             </mb3:section>
         </mb3:menu>
     </mb3:tertiary>