This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 95afe5ef6e4c47e92c0e8b44afd41dedf431160f Author: danhaywood <[email protected]> AuthorDate: Wed May 17 19:57:32 2023 +0100 CAUSEWAY-2485: wip, adds other data types for code gen to demo --- .../demoshowcases/value/ValueShowCase.java | 139 +++++++++++++++++++++ .../src/main/resources/$Templates-description.adoc | 2 +- .../$Templates-description~primitive.adoc | 2 +- 3 files changed, 141 insertions(+), 2 deletions(-) diff --git a/tooling/metaprog/src/main/java/org/apache/causeway/tooling/metaprog/demoshowcases/value/ValueShowCase.java b/tooling/metaprog/src/main/java/org/apache/causeway/tooling/metaprog/demoshowcases/value/ValueShowCase.java index 089d373c8f..74e9a23808 100644 --- a/tooling/metaprog/src/main/java/org/apache/causeway/tooling/metaprog/demoshowcases/value/ValueShowCase.java +++ b/tooling/metaprog/src/main/java/org/apache/causeway/tooling/metaprog/demoshowcases/value/ValueShowCase.java @@ -30,6 +30,145 @@ import lombok.val; @RequiredArgsConstructor public enum ValueShowCase { + BLOB(Config.builder() + .showcaseName("CausewayBlob") + .javaPackage("demoapp.dom.types.causeway.blobs") + .showcaseValueType("org.apache.causeway.applib.value.Blob") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.BlobValueSemantics") + .templateVariant(TemplateVariant.LOB)), + CLOB(Config.builder() + .showcaseName("CausewayClob") + .javaPackage("demoapp.dom.types.causeway.clobs") + .showcaseValueType("org.apache.causeway.applib.value.Clob") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.ClobValueSemantics") + .templateVariant(TemplateVariant.LOB)), + LOCALRESOURCEPATH(Config.builder() + .showcaseName("CausewayLocalResourcePath") + .javaPackage("demoapp.dom.types.causeway.localresourcepaths") + .showcaseValueType("org.apache.causeway.applib.value.LocalResourcePath") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.LocalResourcePathValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + PASSWORD(Config.builder() + .showcaseName("CausewayPassword") + .javaPackage("demoapp.dom.types.causeway.passwords") + .showcaseValueType("org.apache.causeway.applib.value.Password") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.PasswordValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + TREENODE(Config.builder() + .showcaseName("CausewayTreeNode") + .javaPackage("demoapp.dom.types.causeway.treenode") + .showcaseValueType("org.apache.causeway.applib.graph.tree.TreeNode") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.TreeNodeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + CALENDAREVENT(Config.builder() + .showcaseName("CausewayCalendarEvent") + .javaPackage("demoapp.dom.types.causewayext.cal") + .showcaseValueType("org.apache.causeway.extensions.fullcalendar.applib.value.CalendarEvent") + .showcaseValueSemantics("org.apache.causeway.extensions.fullcalendar.applib.value.CalendarEventSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVAAWTBUFFEREDIMAGE(Config.builder() + .showcaseName("BufferedImage") + .javaPackage("demoapp.dom.types.javaawt.images") + .showcaseValueType("java.awt.BufferedImage") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.BufferedImageValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVAMATHBIGDECIMAL(Config.builder() + .showcaseName("BigDecimal") + .javaPackage("demoapp.dom.types.javamath.bigdecimals") + .showcaseValueType("java.math.BigDecimal") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.BigDecimalValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVAMATHBIGINTEGER(Config.builder() + .showcaseName("BigInteger") + .javaPackage("demoapp.dom.types.javamath.bigintegers") + .showcaseValueType("java.math.BigInteger") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.BigIntegerValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVANETURL(Config.builder() + .showcaseName("URLs") + .javaPackage("demoapp.dom.types.javanet.urls") + .showcaseValueType("java.net.URL") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.URLValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVASQLDATE(Config.builder() + .showcaseName("JavaSqlDate") + .javaPackage("demoapp.dom.types.javasql.javasqldate") + .showcaseValueType("java.sql.Date") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.legacy.JavaSqlDateValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVASQLTIMESTAMP(Config.builder() + .showcaseName("JavaSqlTimestamp") + .javaPackage("demoapp.dom.types.javasql.javasqltimestamp") + .showcaseValueType("java.sql.Timestamp") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.legacy.JavaSqlTimeStampValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMELOCALDATE(Config.builder() + .showcaseName("LocalDate") + .javaPackage("demoapp.dom.types.javatime.javatimelocaldate") + .showcaseValueType("java.time.LocalDate") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.LocalDateValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMELOCALDATETIME(Config.builder() + .showcaseName("LocalDateTime") + .javaPackage("demoapp.dom.types.javatime.javatimelocaldatetime") + .showcaseValueType("java.time.LocalDateTime") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.LocalDateTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMELOCALTIME(Config.builder() + .showcaseName("LocalTime") + .javaPackage("demoapp.dom.types.javatime.javatimelocaltime") + .showcaseValueType("java.time.LocalTime") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.LocalTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMEOFFSETDATETIME(Config.builder() + .showcaseName("OffsetDateTime") + .javaPackage("demoapp.dom.types.javatime.javatimeoffsetdatetime") + .showcaseValueType("java.time.OffsetDateTime") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.OffsetDateTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMEOFFSETTIME(Config.builder() + .showcaseName("OffsetTime") + .javaPackage("demoapp.dom.types.javatime.javatimeoffsetTime") + .showcaseValueType("java.time.OffsetTime") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.OffsetTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVATIMEZONEDDATETIME(Config.builder() + .showcaseName("ZonedDateTime") + .javaPackage("demoapp.dom.types.javatime.javatimezoneddatetime") + .showcaseValueType("java.time.ZonedDateTime") + .showcaseValueSemantics("org.apache.causeway.core.metamodel.valuesemantics.temporal.ZonedDateTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JAVAUTILDATE(Config.builder() + .showcaseName("JavaUtilDate") + .javaPackage("demoapp.dom.types.javautil.javautildate") + .showcaseValueType("java.util.Date") + .showcaseValueSemantics("org.apache.causeway.extensions.fullcalendar.applib.value.CalendarEventSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JODADATETIME(Config.builder() + .showcaseName("JodaDateTime") + .javaPackage("demoapp.dom.types.javatime.jodadatetime") + .showcaseValueType("org.joda.time.DateTime") + .showcaseValueSemantics("org.apache.causeway.valuetypes.jodatime.integration.valuesemantics.JodaDateTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JODALOCALDATE(Config.builder() + .showcaseName("JodaLocalDate") + .javaPackage("demoapp.dom.types.javatime.jodalocaldate") + .showcaseValueType("org.joda.time.LocalDate") + .showcaseValueSemantics("org.apache.causeway.valuetypes.jodatime.integration.valuesemantics.JodaLocalDateValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JODALOCALDATETIME(Config.builder() + .showcaseName("JodaLocalDateTime") + .javaPackage("demoapp.dom.types.javatime.jodalocaldatetime") + .showcaseValueType("org.joda.time.LocalDateTime") + .showcaseValueSemantics("org.apache.causeway.valuetypes.jodatime.integration.valuesemantics.JodaLocalDateTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + JODALOCALTIME(Config.builder() + .showcaseName("JodaLocalTime") + .javaPackage("demoapp.dom.types.javatime.jodalocaltime") + .showcaseValueType("org.joda.time.LocalTime") + .showcaseValueSemantics("org.apache.causeway.valuetypes.jodatime.integration.valuesemantics.JodaLocalTimeValueSemantics") + .templateVariant(TemplateVariant.DEFAULT)), + MARKUP(Config.builder() .showcaseName("CausewayMarkup") .javaPackage("demoapp.dom.types.causeway.markups") diff --git a/tooling/metaprog/src/main/resources/$Templates-description.adoc b/tooling/metaprog/src/main/resources/$Templates-description.adoc index e2df2c2eb7..adea212d55 100644 --- a/tooling/metaprog/src/main/resources/$Templates-description.adoc +++ b/tooling/metaprog/src/main/resources/$Templates-description.adoc @@ -10,7 +10,7 @@ These can be used either in entities or view models. On the left hand side is a collection of entities that uses the `#{showcase-type}` datatype. There is also an action that opens a view model; this view model also uses the `#{showcase-type}` datatype. -Navigate into the entity or view model to see the datatype used as a property, an action parameter and as a return type of collections. +Navigate into the entity or view model to see the datatype used as a property, an action parameter and as a return type of collections, along with code samples. === Implementation Notes diff --git a/tooling/metaprog/src/main/resources/$Templates-description~primitive.adoc b/tooling/metaprog/src/main/resources/$Templates-description~primitive.adoc index f4624c487f..44a0b6ded6 100644 --- a/tooling/metaprog/src/main/resources/$Templates-description~primitive.adoc +++ b/tooling/metaprog/src/main/resources/$Templates-description~primitive.adoc @@ -11,7 +11,7 @@ These can be used either in entities or view models. On the left hand side is a collection of entities that uses the `#{showcase-type}` datatype. There is also an action that opens a view model; this view model also uses the `#{showcase-type}` datatype. -Navigate into the entity or view model to see the datatype used as a property, an action parameter and as a return type of collections. +Navigate into the entity or view model to see the datatype used as a property, an action parameter and as a return type of collections, along with code samples. === Implementation Notes
