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 2020/07/09 07:25:20 UTC
[isis] 10/18: ISIS-2222: fixes mapping for asciidoc/markdown
entities; adds samples; reorganises all samples
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch ISIS-2222
in repository https://gitbox.apache.org/repos/asf/isis.git
commit e591ac1360a1debbf2429e8cbf20d006f024d4b8
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Thu Jul 9 06:46:04 2020 +0100
ISIS-2222: fixes mapping for asciidoc/markdown entities; adds samples; reorganises all samples
---
examples/demo/domain/pom.xml | 19 -----------
.../HasAsciiDocDescription_description.java | 2 +-
.../HasAsciiDocDescription_sources.java | 2 +-
.../dom/_infra/fixtures/DemoFixtureScript.java | 25 ++++++++++++++
.../DemoFixtureScriptSpecificationProvider.java | 24 ++++++++++++++
.../{ => resources}/AsciiDocConverterService.java | 2 +-
.../{ => resources}/AsciiDocReaderService.java | 2 +-
.../{ => resources}/MarkdownReaderService.java | 3 +-
.../MarkupVariableResolverService.java | 2 +-
.../{ => resources}/ResourceReaderService.java | 2 +-
.../dom/_infra/{ => resources}/TagHandler.java | 2 +-
.../java/demoapp/dom/_infra/seed/SeedService.java | 14 ++++++++
.../seed/SeedServiceAbstract.java} | 38 ++++++++++------------
.../demoapp/dom/homepage/DemoHomePage-welcome.adoc | 2 +-
.../java/demoapp/dom/homepage/DemoHomePage.java | 17 +---------
.../isisext/asciidocs/jdo/IsisAsciiDocJdo.java | 9 ++++-
.../asciidocs/jdo/IsisAsciiDocJdoSeedService.java | 22 ++++++-------
.../asciidocs/samples/IsisAsciiDocSamples.java | 2 +-
.../markdowns/samples/IsisMarkdownSamples.java | 2 +-
.../types/javalang/JavaLangWrapperTypesMenu.java | 2 +-
.../main/java/demoapp/webapp/DemoAppManifest.java | 7 ++--
.../demo/domain/src/main/resources/application.yml | 2 +-
.../ResourceReaderService_Test.java | 10 +++---
.../main/java/demoapp/webapp/jee/DemoAppJee.java | 2 +-
examples/demo/pom.xml | 24 +++++++++++++-
.../java/demoapp/webapp/vaadin/DemoAppVaadin.java | 2 +-
examples/demo/wicket/pom.xml | 12 +------
.../java/demoapp/webapp/wicket/DemoAppWicket.java | 24 ++++++++++----
28 files changed, 164 insertions(+), 112 deletions(-)
diff --git a/examples/demo/domain/pom.xml b/examples/demo/domain/pom.xml
index 07c6def..97135b1 100644
--- a/examples/demo/domain/pom.xml
+++ b/examples/demo/domain/pom.xml
@@ -58,29 +58,10 @@
<type>pom</type>
</dependency>
- <!-- JDK11+ SUPPORT -->
-
- <dependency>
- <groupId>org.apache.isis.mavendeps</groupId>
- <artifactId>isis-mavendeps-jdk11</artifactId>
- <type>pom</type>
- </dependency>
<!-- EXTENSIONS -->
<dependency>
- <groupId>org.apache.isis.valuetypes</groupId>
- <artifactId>isis-valuetypes-asciidoc-ui-wkt</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.isis.valuetypes</groupId>
- <artifactId>isis-valuetypes-markdown-ui</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.isis.valuetypes</groupId>
- <artifactId>isis-valuetypes-sse-ui</artifactId>
- </dependency>
- <dependency>
<groupId>org.apache.isis.extensions</groupId>
<artifactId>isis-extensions-modelannotation</artifactId>
</dependency>
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_description.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_description.java
index 79804bb..7f00414 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_description.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_description.java
@@ -29,7 +29,7 @@ import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
import lombok.RequiredArgsConstructor;
-import demoapp.dom._infra.AsciiDocReaderService;
+import demoapp.dom._infra.resources.AsciiDocReaderService;
@SuppressWarnings("CdiManagedBeanInconsistencyInspection")
@Property
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_sources.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_sources.java
index a6ded09..9c1b2f8 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_sources.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/asciidocdesc/HasAsciiDocDescription_sources.java
@@ -30,7 +30,7 @@ import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
import lombok.RequiredArgsConstructor;
import lombok.val;
-import demoapp.dom._infra.MarkupVariableResolverService;
+import demoapp.dom._infra.resources.MarkupVariableResolverService;
@Property
@RequiredArgsConstructor @SuppressWarnings("CdiManagedBeanInconsistencyInspection")
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScript.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScript.java
new file mode 100644
index 0000000..cc103c3
--- /dev/null
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScript.java
@@ -0,0 +1,25 @@
+package demoapp.dom._infra.fixtures;
+
+import java.util.List;
+
+import javax.inject.Inject;
+
+import org.apache.isis.applib.annotation.DomainObject;
+import org.apache.isis.applib.services.inject.ServiceInjector;
+import org.apache.isis.applib.services.registry.ServiceRegistry;
+import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
+
+import demoapp.dom._infra.seed.SeedService;
+
+public class DemoFixtureScript extends FixtureScript {
+
+ @Override
+ protected void execute(ExecutionContext executionContext) {
+ serviceRegistry
+ .select(SeedService.class) // lookup rather than injection to avoid circular reference.
+ .forEach(seedService -> seedService.seed(this, executionContext));
+ }
+
+ @Inject
+ ServiceRegistry serviceRegistry;
+}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScriptSpecificationProvider.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScriptSpecificationProvider.java
new file mode 100644
index 0000000..07c352a
--- /dev/null
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/fixtures/DemoFixtureScriptSpecificationProvider.java
@@ -0,0 +1,24 @@
+package demoapp.dom._infra.fixtures;
+
+import org.springframework.stereotype.Component;
+
+import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
+import org.apache.isis.testing.fixtures.applib.fixturespec.FixtureScriptsSpecification;
+import org.apache.isis.testing.fixtures.applib.fixturespec.FixtureScriptsSpecificationProvider;
+
+import lombok.val;
+
+@Component
+public class DemoFixtureScriptSpecificationProvider implements FixtureScriptsSpecificationProvider {
+
+ @Override
+ public FixtureScriptsSpecification getSpecification() {
+ return new FixtureScriptsSpecification(
+ getClass().getPackage().getName()
+ , FixtureScripts.NonPersistedObjectsStrategy.IGNORE
+ , FixtureScripts.MultipleExecutionStrategy.EXECUTE_ONCE_BY_VALUE
+ , DemoFixtureScript.class
+ , DemoFixtureScript.class
+ );
+ }
+}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocConverterService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocConverterService.java
similarity index 98%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocConverterService.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocConverterService.java
index c93c568..a1b69d8 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocConverterService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocConverterService.java
@@ -1,4 +1,4 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import java.util.Map;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocReaderService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
similarity index 97%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocReaderService.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
index 15d4df5..df258e4 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/AsciiDocReaderService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/AsciiDocReaderService.java
@@ -1,4 +1,4 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import javax.inject.Inject;
import javax.inject.Named;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkdownReaderService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkdownReaderService.java
similarity index 92%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkdownReaderService.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkdownReaderService.java
index 28e7860..3f8c9a3 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkdownReaderService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkdownReaderService.java
@@ -1,11 +1,10 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import javax.inject.Inject;
import javax.inject.Named;
import org.springframework.stereotype.Service;
-import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
import org.apache.isis.valuetypes.markdown.applib.value.Converter;
import org.apache.isis.valuetypes.markdown.applib.value.Markdown;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkupVariableResolverService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
similarity index 96%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkupVariableResolverService.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
index 6f40e80..3cd9ed2 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/MarkupVariableResolverService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/MarkupVariableResolverService.java
@@ -1,4 +1,4 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import java.util.HashMap;
import java.util.Map;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/ResourceReaderService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/ResourceReaderService.java
similarity index 98%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/ResourceReaderService.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/ResourceReaderService.java
index 2646c3c..dcf45c2 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/ResourceReaderService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/ResourceReaderService.java
@@ -1,4 +1,4 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import java.io.BufferedReader;
import java.io.IOException;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/TagHandler.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/TagHandler.java
similarity index 94%
rename from examples/demo/domain/src/main/java/demoapp/dom/_infra/TagHandler.java
rename to examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/TagHandler.java
index 5f4f903..17ca5de 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/_infra/TagHandler.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/resources/TagHandler.java
@@ -1,4 +1,4 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
import java.util.Map;
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedService.java
new file mode 100644
index 0000000..3af1eea
--- /dev/null
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedService.java
@@ -0,0 +1,14 @@
+package demoapp.dom._infra.seed;
+
+import java.util.function.Supplier;
+
+import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
+
+import demoapp.dom._infra.fixtures.DemoFixtureScript;
+
+
+public interface SeedService {
+
+ void seed(FixtureScript fixtureScriptSupplier, FixtureScript.ExecutionContext executionContext);
+
+}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java b/examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedServiceAbstract.java
similarity index 52%
copy from examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java
copy to examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedServiceAbstract.java
index ef12b3c..9128435 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/_infra/seed/SeedServiceAbstract.java
@@ -1,9 +1,10 @@
-package demoapp.dom.types.isisext.asciidocs.jdo;
+package demoapp.dom._infra.seed;
+
+import java.util.function.Supplier;
import javax.inject.Inject;
import org.springframework.context.event.EventListener;
-import org.springframework.stereotype.Service;
import org.apache.isis.applib.services.repository.RepositoryService;
import org.apache.isis.core.runtime.events.app.AppLifecycleEvent;
@@ -11,35 +12,30 @@ import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
+import demoapp.dom._infra.seed.SeedService;
import demoapp.dom.types.Samples;
-@Service
-public class IsisAsciiDocJdoSeedService {
+public abstract class SeedServiceAbstract implements SeedService {
+
+ private final Supplier<FixtureScript> fixtureScriptSupplier;
+
+ protected SeedServiceAbstract(Supplier<FixtureScript> fixtureScriptSupplier) {
+ this.fixtureScriptSupplier = fixtureScriptSupplier;
+ }
@EventListener(AppLifecycleEvent.class)
public void onAppLifecycleEvent(AppLifecycleEvent event) {
-
if (event.getEventType() == AppLifecycleEvent.EventType.appPostMetamodel) {
- fixtureScripts.run(new IsisAsciiDocJdoEntityFixture());
+ fixtureScripts.run(fixtureScriptSupplier.get());
}
}
+ @Override
+ public void seed(FixtureScript parentFixtureScript, FixtureScript.ExecutionContext executionContext) {
+ executionContext.executeChild(parentFixtureScript, this.fixtureScriptSupplier.get());
+ }
+
@Inject
FixtureScripts fixtureScripts;
- static class IsisAsciiDocJdoEntityFixture extends FixtureScript {
-
- @Override
- protected void execute(ExecutionContext executionContext) {
- samples.stream()
- .map(IsisAsciiDocJdo::new)
- .forEach(repositoryService::persist);
- }
-
- @Inject
- RepositoryService repositoryService;
-
- @Inject
- Samples<AsciiDoc> samples;
- }
}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage-welcome.adoc b/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage-welcome.adoc
index b969fb9..8cf853a 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage-welcome.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage-welcome.adoc
@@ -4,7 +4,7 @@ On the left hand side of each web page you'll find the feature, and on the right
== Page Layout
-This is probably as good place as any to explain the page layout of an Apache Isis webapp:
+This is as good place as any to explain the page layout of an Apache Isis webapp:
* At the top is the menu bar.
+
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage.java b/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage.java
index 8ed1dd8..f932c04 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/homepage/DemoHomePage.java
@@ -18,30 +18,15 @@
*/
package demoapp.dom.homepage;
-import java.time.LocalDateTime;
-
-import javax.annotation.PostConstruct;
import javax.inject.Inject;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlTransient;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.apache.isis.applib.annotation.DomainObject;
import org.apache.isis.applib.annotation.HomePage;
import org.apache.isis.applib.annotation.Nature;
import org.apache.isis.applib.services.user.UserService;
-import org.apache.isis.applib.util.JaxbAdapters.MarkupAdapter;
-import org.apache.isis.applib.value.Markup;
import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
-import lombok.Getter;
-import lombok.Setter;
-
-import demoapp.dom._infra.AsciiDocReaderService;
+import demoapp.dom._infra.resources.AsciiDocReaderService;
import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
//tag::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdo.java b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdo.java
index 7aa170d..968ceb7 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdo.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdo.java
@@ -18,6 +18,7 @@
*/
package demoapp.dom.types.isisext.asciidocs.jdo;
+import javax.inject.Inject;
import javax.jdo.annotations.Column;
import javax.jdo.annotations.DatastoreIdentity;
import javax.jdo.annotations.IdGeneratorStrategy;
@@ -30,6 +31,7 @@ import org.apache.isis.applib.annotation.MemberOrder;
import org.apache.isis.applib.annotation.Optionality;
import org.apache.isis.applib.annotation.Property;
import org.apache.isis.applib.annotation.Title;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
import lombok.Getter;
@@ -54,7 +56,10 @@ public class IsisAsciiDocJdo // <.>
}
//tag::class[]
- @Title(prepend = "AsciiDoc JDO entity: ")
+ public String title() {
+ return "AsciiDoc JDO entity: " + bookmarkService.bookmarkFor(this).getIdentifier();
+ }
+
@MemberOrder(name = "read-only-properties", sequence = "1")
@Column(allowsNull = "false", jdbcType = "CLOB") // <.>
@Getter @Setter
@@ -78,5 +83,7 @@ public class IsisAsciiDocJdo // <.>
@Getter @Setter
private AsciiDoc readWriteOptionalProperty;
+ @Inject
+ private BookmarkService bookmarkService;
}
//end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java
index ef12b3c..cd08579 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/jdo/IsisAsciiDocJdoSeedService.java
@@ -11,29 +11,29 @@ import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
+import demoapp.dom._infra.fixtures.DemoFixtureScript;
+import demoapp.dom._infra.seed.SeedService;
+import demoapp.dom._infra.seed.SeedServiceAbstract;
import demoapp.dom.types.Samples;
@Service
-public class IsisAsciiDocJdoSeedService {
+public class IsisAsciiDocJdoSeedService extends SeedServiceAbstract {
- @EventListener(AppLifecycleEvent.class)
- public void onAppLifecycleEvent(AppLifecycleEvent event) {
-
- if (event.getEventType() == AppLifecycleEvent.EventType.appPostMetamodel) {
- fixtureScripts.run(new IsisAsciiDocJdoEntityFixture());
- }
+ public IsisAsciiDocJdoSeedService() {
+ super(() -> new IsisAsciiDocJdoEntityFixture());
}
- @Inject
- FixtureScripts fixtureScripts;
-
static class IsisAsciiDocJdoEntityFixture extends FixtureScript {
@Override
protected void execute(ExecutionContext executionContext) {
+ repositoryService.removeAll(IsisAsciiDocJdo.class);
samples.stream()
.map(IsisAsciiDocJdo::new)
- .forEach(repositoryService::persist);
+ .forEach(domainObject -> {
+ repositoryService.persist(domainObject);
+ executionContext.addResult(this, domainObject);
+ });
}
@Inject
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/samples/IsisAsciiDocSamples.java b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/samples/IsisAsciiDocSamples.java
index 2b7cd6d..2617007 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/samples/IsisAsciiDocSamples.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/asciidocs/samples/IsisAsciiDocSamples.java
@@ -26,7 +26,7 @@ import org.springframework.stereotype.Service;
import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
-import demoapp.dom._infra.AsciiDocReaderService;
+import demoapp.dom._infra.resources.AsciiDocReaderService;
import demoapp.dom.types.Samples;
@Service
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/markdowns/samples/IsisMarkdownSamples.java b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/markdowns/samples/IsisMarkdownSamples.java
index 2e46b81..0d2481e 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/markdowns/samples/IsisMarkdownSamples.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/isisext/markdowns/samples/IsisMarkdownSamples.java
@@ -26,7 +26,7 @@ import org.springframework.stereotype.Service;
import org.apache.isis.valuetypes.markdown.applib.value.Markdown;
-import demoapp.dom._infra.MarkdownReaderService;
+import demoapp.dom._infra.resources.MarkdownReaderService;
import demoapp.dom.types.Samples;
@Service
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/JavaLangWrapperTypesMenu.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/JavaLangWrapperTypesMenu.java
index 27fbe57..e22d0fa 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/JavaLangWrapperTypesMenu.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/JavaLangWrapperTypesMenu.java
@@ -85,7 +85,7 @@ public class JavaLangWrapperTypesMenu {
@Action(semantics = SemanticsOf.SAFE)
@ActionLayout(cssClassFa="fa-hashtag")
- public WrapperBooleans booleans(){
+ public WrapperBooleans wrapperBooleans(){
return new WrapperBooleans();
}
diff --git a/examples/demo/domain/src/main/java/demoapp/webapp/DemoAppManifest.java b/examples/demo/domain/src/main/java/demoapp/webapp/DemoAppManifest.java
index e071b34..78d5722 100644
--- a/examples/demo/domain/src/main/java/demoapp/webapp/DemoAppManifest.java
+++ b/examples/demo/domain/src/main/java/demoapp/webapp/DemoAppManifest.java
@@ -40,8 +40,7 @@ import lombok.val;
import lombok.extern.log4j.Log4j2;
import demoapp.dom.DemoModule;
-import demoapp.dom._infra.AsciiDocReaderService;
-import demoapp.dom._infra.LibraryPreloadingService;
+import demoapp.dom._infra.fixtures.DemoFixtureScript;
/**
* Makes the integral parts of the 'demo' web application.
@@ -69,8 +68,8 @@ import demoapp.dom._infra.LibraryPreloadingService;
IsisModuleTestingH2ConsoleUi.class,
IsisModuleExtExcelDownloadUi.class, // allows for collection download as excel
- LibraryPreloadingService.class, // just a performance enhancement
- AsciiDocReaderService.class,
+ // fixtures
+ DemoFixtureScript.class,
})
@Log4j2
diff --git a/examples/demo/domain/src/main/resources/application.yml b/examples/demo/domain/src/main/resources/application.yml
index 9e4d8e9..57455af 100644
--- a/examples/demo/domain/src/main/resources/application.yml
+++ b/examples/demo/domain/src/main/resources/application.yml
@@ -49,6 +49,7 @@ isis:
mixins-only: true
introspector:
parallelize: false
+ mode: full
runtime-services:
translation:
po:
@@ -122,4 +123,3 @@ vaadin:
urlMapping: "/vaadin/*"
servlet:
productionMode: true
-
diff --git a/examples/demo/domain/src/test/java/demoapp/dom/_infra/ResourceReaderService_Test.java b/examples/demo/domain/src/test/java/demoapp/dom/_infra/resources/ResourceReaderService_Test.java
similarity index 91%
rename from examples/demo/domain/src/test/java/demoapp/dom/_infra/ResourceReaderService_Test.java
rename to examples/demo/domain/src/test/java/demoapp/dom/_infra/resources/ResourceReaderService_Test.java
index 47ebb49..a2365b5 100644
--- a/examples/demo/domain/src/test/java/demoapp/dom/_infra/ResourceReaderService_Test.java
+++ b/examples/demo/domain/src/test/java/demoapp/dom/_infra/resources/ResourceReaderService_Test.java
@@ -1,18 +1,16 @@
-package demoapp.dom._infra;
+package demoapp.dom._infra.resources;
-import java.io.StringReader;
import java.util.HashMap;
-import java.util.Map;
-import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
-
import lombok.val;
import static org.assertj.core.api.Assertions.*;
+import demoapp.dom._infra.resources.MarkupVariableResolverService;
+import demoapp.dom._infra.resources.ResourceReaderService;
+
class ResourceReaderService_Test {
ResourceReaderService resourceReaderService;
diff --git a/examples/demo/jee/src/main/java/demoapp/webapp/jee/DemoAppJee.java b/examples/demo/jee/src/main/java/demoapp/webapp/jee/DemoAppJee.java
index 07ae221..fe04565 100644
--- a/examples/demo/jee/src/main/java/demoapp/webapp/jee/DemoAppJee.java
+++ b/examples/demo/jee/src/main/java/demoapp/webapp/jee/DemoAppJee.java
@@ -24,7 +24,7 @@ import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
import org.springframework.context.annotation.Import;
import org.apache.isis.valuetypes.asciidoc.ui.wkt.IsisModuleValAsciidocUiWkt;
-import org.apache.isis.valuetypes.sse.ui.IsisModuleValSseUi;
+import org.apache.isis.valuetypes.sse.ui.IsisModuleValSseUiWkt;
import org.apache.isis.viewer.wicket.viewer.IsisModuleViewerWicketViewer;
import demoapp.webapp.DemoAppManifest;
diff --git a/examples/demo/pom.xml b/examples/demo/pom.xml
index 69c036a..5baedd0 100644
--- a/examples/demo/pom.xml
+++ b/examples/demo/pom.xml
@@ -69,11 +69,33 @@
<dependency>
<groupId>org.apache.isis.valuetypes</groupId>
+ <artifactId>isis-valuetypes-asciidoc-metamodel</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.valuetypes</groupId>
<artifactId>isis-valuetypes-asciidoc-ui-wkt</artifactId>
</dependency>
<dependency>
<groupId>org.apache.isis.valuetypes</groupId>
- <artifactId>isis-valuetypes-sse-ui</artifactId>
+ <artifactId>isis-valuetypes-asciidoc-persistence-jdo-dn5</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.valuetypes</groupId>
+ <artifactId>isis-valuetypes-markdown-metamodel</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.valuetypes</groupId>
+ <artifactId>isis-valuetypes-markdown-ui-wkt</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.valuetypes</groupId>
+ <artifactId>isis-valuetypes-markdown-persistence-jdo-dn5</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.valuetypes</groupId>
+ <artifactId>isis-valuetypes-sse-ui-wkt</artifactId>
</dependency>
<dependency>
<groupId>org.apache.isis.extensions</groupId>
diff --git a/examples/demo/vaadin/src/main/java/demoapp/webapp/vaadin/DemoAppVaadin.java b/examples/demo/vaadin/src/main/java/demoapp/webapp/vaadin/DemoAppVaadin.java
index c4cb76a..c796b16 100644
--- a/examples/demo/vaadin/src/main/java/demoapp/webapp/vaadin/DemoAppVaadin.java
+++ b/examples/demo/vaadin/src/main/java/demoapp/webapp/vaadin/DemoAppVaadin.java
@@ -29,7 +29,7 @@ import org.apache.isis.core.runtimeservices.session.IsisInteractionFactoryDefaul
import org.apache.isis.incubator.viewer.vaadin.viewer.IsisModuleIncViewerVaadinViewer;
import org.apache.isis.valuetypes.asciidoc.ui.vaa.IsisModuleValAsciidocUiVaa;
import org.apache.isis.valuetypes.asciidoc.ui.wkt.IsisModuleValAsciidocUiWkt;
-import org.apache.isis.valuetypes.sse.ui.IsisModuleValSseUi;
+import org.apache.isis.valuetypes.sse.ui.IsisModuleValSseUiWkt;
import org.apache.isis.viewer.wicket.viewer.IsisModuleViewerWicketViewer;
import demoapp.dom._infra.utils.ThereCanBeOnlyOne;
diff --git a/examples/demo/wicket/pom.xml b/examples/demo/wicket/pom.xml
index 8e09545..b9b41de 100644
--- a/examples/demo/wicket/pom.xml
+++ b/examples/demo/wicket/pom.xml
@@ -66,7 +66,6 @@
<groupId>org.apache.isis.examples.apps</groupId>
<artifactId>demo-domain</artifactId>
<version>${project.version}</version>
- <type>jar</type>
</dependency>
<!-- WEB APPLICATION DEPENDENCY BUNDLE -->
@@ -77,16 +76,7 @@
<type>pom</type>
</dependency>
- <!-- JDK11+ SUPPORT -->
-
- <dependency>
- <groupId>org.apache.isis.mavendeps</groupId>
- <artifactId>isis-mavendeps-jdk11</artifactId>
- <type>pom</type>
- </dependency>
-
-
- </dependencies>
+ </dependencies>
<profiles>
diff --git a/examples/demo/wicket/src/main/java/demoapp/webapp/wicket/DemoAppWicket.java b/examples/demo/wicket/src/main/java/demoapp/webapp/wicket/DemoAppWicket.java
index 78ddb29..3f02eb5 100644
--- a/examples/demo/wicket/src/main/java/demoapp/webapp/wicket/DemoAppWicket.java
+++ b/examples/demo/wicket/src/main/java/demoapp/webapp/wicket/DemoAppWicket.java
@@ -23,8 +23,12 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Import;
+import org.apache.isis.valuetypes.asciidoc.metamodel.IsisModuleValAsciidocMetaModel;
+import org.apache.isis.valuetypes.asciidoc.persistence.jdo.dn5.IsisModuleValAsciidocPersistenceJdoDn5;
+import org.apache.isis.valuetypes.markdown.persistence.jdo.dn5.IsisModuleValMarkdownPersistenceJdoDn5;
import org.apache.isis.valuetypes.asciidoc.ui.wkt.IsisModuleValAsciidocUiWkt;
-import org.apache.isis.valuetypes.sse.ui.IsisModuleValSseUi;
+import org.apache.isis.valuetypes.markdown.ui.wkt.IsisModuleValMarkdownUiWkt;
+import org.apache.isis.valuetypes.sse.ui.wkt.IsisModuleValSseUiWkt;
import org.apache.isis.viewer.wicket.viewer.IsisModuleViewerWicketViewer;
import demoapp.dom._infra.utils.ThereCanBeOnlyOne;
@@ -36,12 +40,20 @@ import demoapp.webapp.DemoAppManifest;
@SpringBootApplication
@Import({
DemoAppManifest.class,
-
- // WICKET INTEGRATION
+
+ // Metamodel
+ IsisModuleValAsciidocMetaModel.class,
+
+ // UI
IsisModuleViewerWicketViewer.class, // wicket viewer
- IsisModuleValSseUi.class, // server sent events
- IsisModuleValAsciidocUiWkt.class, // ascii-doc rendering support (for Wicket)
-
+ IsisModuleValSseUiWkt.class, // server sent events
+ IsisModuleValAsciidocUiWkt.class,
+ IsisModuleValMarkdownUiWkt.class,
+
+ // Persistence
+ IsisModuleValAsciidocPersistenceJdoDn5.class, //
+ IsisModuleValMarkdownPersistenceJdoDn5.class,
+
})
//@Log4j2
public class DemoAppWicket extends SpringBootServletInitializer {