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

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

commit 5ec32722aac920a798e49ed0d45eeb53e956800a
Merge: ab7806d 33aa3d4
Author: Dan Haywood <[email protected]>
AuthorDate: Mon Aug 29 23:47:31 2022 +0100

    Merge branch 'jpa-SNAPSHOT' into jdo-SNAPSHOT

 module-simple-tests/pom.xml                        |   6 ++--
 module-simple/pom.xml                              |   5 +++
 .../domainapp/modules/simple/SimpleModule.java     |   7 +++++
 .../modules/simple/dom/so/SimpleObject.java        |  35 +++++++++++++++++++--
 .../modules/simple/dom/so/SimpleObject.layout.xml  |   5 +++
 .../modules/simple/dom/so/SimpleObjects.java       |   1 -
 .../simple/fixture/SimpleObjectBuilder.java        |  34 +++++++++++++++++++-
 .../simple/fixture/SimpleObject_persona.java       |  23 +++++++-------
 .../domainapp/modules/simple/fixture/Bang.docx     | Bin 0 -> 13071 bytes
 .../domainapp/modules/simple/fixture/Bang.pdf      | Bin 0 -> 48548 bytes
 .../domainapp/modules/simple/fixture/Bar.docx      | Bin 0 -> 12936 bytes
 .../domainapp/modules/simple/fixture/Bar.pdf       | Bin 0 -> 47488 bytes
 .../domainapp/modules/simple/fixture/Fizz.docx     | Bin 0 -> 12869 bytes
 .../domainapp/modules/simple/fixture/Fizz.pdf      | Bin 0 -> 46833 bytes
 .../domainapp/modules/simple/fixture/Foo.docx      | Bin 0 -> 13069 bytes
 .../domainapp/modules/simple/fixture/Foo.pdf       | Bin 0 -> 47185 bytes
 .../domainapp/modules/simple/fixture/Frodo.docx    | Bin 0 -> 12969 bytes
 .../domainapp/modules/simple/fixture/Frodo.pdf     | Bin 0 -> 47587 bytes
 webapp/pom.xml                                     |  10 ++++++
 .../main/java/domainapp/webapp/AppManifest.java    |   6 +++-
 20 files changed, 112 insertions(+), 20 deletions(-)

diff --cc module-simple-tests/pom.xml
index 746b7b6,3ec4c63..a7a48a4
--- a/module-simple-tests/pom.xml
+++ b/module-simple-tests/pom.xml
@@@ -69,8 -69,8 +69,8 @@@
          </dependency>
  
          <dependency>
-             <groupId>org.apache.isis.testing</groupId>
-             <artifactId>isis-testing-fixtures-applib</artifactId>
+             <groupId>org.apache.isis.persistence</groupId>
 -            <artifactId>isis-persistence-jpa-eclipselink</artifactId>
++            <artifactId>isis-persistence-jdo-datanucleus</artifactId>
              <scope>test</scope>
          </dependency>
  
diff --cc module-simple/pom.xml
index 76a4964,aeb7cb5..a8bdf1f
--- a/module-simple/pom.xml
+++ b/module-simple/pom.xml
@@@ -40,9 -40,14 +40,14 @@@
              <artifactId>isis-applib</artifactId>
          </dependency>
  
+         <dependency>
+             <groupId>org.apache.isis.extensions</groupId>
+             <artifactId>isis-extensions-pdfjs-applib</artifactId>
+         </dependency>
+ 
          <dependency>
              <groupId>org.apache.isis.persistence</groupId>
 -            <artifactId>isis-persistence-jpa-applib</artifactId>
 +            <artifactId>isis-persistence-jdo-datanucleus</artifactId>
          </dependency>
  
          <dependency>
diff --cc module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
index 1a27b37,8379b42..a600a94
--- a/module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
+++ b/module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
@@@ -1,16 -1,27 +1,23 @@@
  package domainapp.modules.simple;
  
 -import org.springframework.boot.autoconfigure.domain.EntityScan;
  import org.springframework.context.annotation.ComponentScan;
  import org.springframework.context.annotation.Configuration;
+ import org.springframework.context.annotation.Import;
 -import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
  
+ import org.apache.isis.extensions.pdfjs.applib.IsisModuleExtPdfjsApplibModel;
 -import org.apache.isis.persistence.jpa.applib.IsisModulePersistenceJpaApplib;
++import org.apache.isis.persistence.jdo.applib.IsisModulePersistenceJdoApplib;
  import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScript;
  import org.apache.isis.testing.fixtures.applib.modules.ModuleWithFixtures;
 -import 
org.apache.isis.testing.fixtures.applib.teardown.jpa.TeardownFixtureJpaAbstract;
 +import 
org.apache.isis.testing.fixtures.applib.teardown.jdo.TeardownFixtureJdoAbstract;
  
  import domainapp.modules.simple.dom.so.SimpleObject;
  
  @Configuration
+ @Import({
+         IsisModuleExtPdfjsApplibModel.class,
 -        IsisModulePersistenceJpaApplib.class
++        IsisModulePersistenceJdoApplib.class
+ })
  @ComponentScan
 -@EnableJpaRepositories
 -@EntityScan(basePackageClasses = {SimpleModule.class})
  public class SimpleModule implements ModuleWithFixtures {
  
      public static final String NAMESPACE = "simple";
diff --cc 
module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObject.java
index b1ac97f,bda401d..8b12f84
--- 
a/module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObject.java
+++ 
b/module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObject.java
@@@ -4,22 -4,30 +4,25 @@@ import java.util.Comparator
  
  import javax.inject.Inject;
  import javax.inject.Named;
 -import javax.persistence.AttributeOverride;
 -import javax.persistence.AttributeOverrides;
 -import javax.persistence.Column;
 -import javax.persistence.Embedded;
 -import javax.persistence.Entity;
 -import javax.persistence.EntityListeners;
 -import javax.persistence.GeneratedValue;
 -import javax.persistence.GenerationType;
 -import javax.persistence.Id;
 -import javax.persistence.NamedQueries;
 -import javax.persistence.NamedQuery;
 -import javax.persistence.Table;
 -import javax.persistence.Transient;
 -import javax.persistence.UniqueConstraint;
 -import javax.persistence.Version;
++import javax.jdo.annotations.Column;
 +import javax.jdo.annotations.DatastoreIdentity;
 +import javax.jdo.annotations.IdGeneratorStrategy;
 +import javax.jdo.annotations.IdentityType;
++import javax.jdo.annotations.PersistenceCapable;
++import javax.jdo.annotations.Persistent;
 +import javax.jdo.annotations.Queries;
 +import javax.jdo.annotations.Query;
- import javax.jdo.annotations.PersistenceCapable;
 +import javax.jdo.annotations.Unique;
 +import javax.jdo.annotations.Version;
 +import javax.jdo.annotations.VersionStrategy;
  import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
  
+ import org.springframework.lang.Nullable;
+ 
  import org.apache.isis.applib.annotation.Action;
  import org.apache.isis.applib.annotation.ActionLayout;
- import org.apache.isis.applib.annotation.Domain;
  import org.apache.isis.applib.annotation.DomainObject;
  import org.apache.isis.applib.annotation.DomainObjectLayout;
 -import org.apache.isis.applib.annotation.Editing;
  import org.apache.isis.applib.annotation.MemberSupport;
  import org.apache.isis.applib.annotation.PromptStyle;
  import org.apache.isis.applib.annotation.Property;
@@@ -31,6 -39,10 +34,8 @@@ import org.apache.isis.applib.layout.La
  import org.apache.isis.applib.services.message.MessageService;
  import org.apache.isis.applib.services.repository.RepositoryService;
  import org.apache.isis.applib.services.title.TitleService;
+ import org.apache.isis.applib.value.Blob;
+ import org.apache.isis.extensions.pdfjs.applib.annotations.PdfJsViewer;
 -import org.apache.isis.persistence.jpa.applib.integration.IsisEntityListener;
 -import org.apache.isis.persistence.jpa.applib.types.BlobJpaEmbeddable;
  
  import static org.apache.isis.applib.annotation.SemanticsOf.IDEMPOTENT;
  import static 
org.apache.isis.applib.annotation.SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE;
@@@ -105,7 -122,26 +109,19 @@@ public class SimpleObject implements Co
      @PropertyLayout(fieldSetId = LayoutConstants.FieldSetId.DETAILS, sequence 
= "2")
      private String notes;
  
 -    private org.apache.isis.applib.value.Blob attachment;
 -
 -    @AttributeOverrides({
 -            @AttributeOverride(name="name",    
column=@Column(name="readOnlyProperty_name")),
 -            
@AttributeOverride(name="mimeType",column=@Column(name="readOnlyProperty_mimeType")),
 -            @AttributeOverride(name="bytes",   
column=@Column(name="readOnlyProperty_bytes"))
 -    })
 -    @Embedded
 -    private BlobJpaEmbeddable attachmentEmbedded;
  
+     @PdfJsViewer
++    @Getter @Setter
++    @Persistent(defaultFetchGroup="false", columns = {
++            @Column(name = "attachment_name"),
++            @Column(name = "attachment_mimetype"),
++            @Column(name = "attachment_bytes")
++    })
+     @Property()
+     @PropertyLayout(fieldSetId = "content", sequence = "1")
 -    public Blob getAttachment() {
 -        return BlobJpaEmbeddable.toBlob(attachmentEmbedded);
 -    }
 -    public void setAttachment(final Blob attachment) {
 -        this.attachmentEmbedded = BlobJpaEmbeddable.fromBlob(attachment);
 -    }
++    private Blob attachment;
++
+ 
      @Action(semantics = IDEMPOTENT, commandPublishing = Publishing.ENABLED, 
executionPublishing = Publishing.ENABLED)
      @ActionLayout(
              associateWith = "name", promptStyle = PromptStyle.INLINE,
diff --cc webapp/src/main/java/domainapp/webapp/AppManifest.java
index a3e62aa,f5892e4..ac72c1d
--- a/webapp/src/main/java/domainapp/webapp/AppManifest.java
+++ b/webapp/src/main/java/domainapp/webapp/AppManifest.java
@@@ -9,16 -9,17 +9,18 @@@ import org.apache.isis.applib.IsisModul
  import org.apache.isis.applib.IsisModuleApplibMixins;
  import org.apache.isis.core.config.presets.IsisPresets;
  import org.apache.isis.core.runtimeservices.IsisModuleCoreRuntimeServices;
 -import 
org.apache.isis.extensions.audittrail.jpa.IsisModuleExtAuditTrailPersistenceJpa;
 -import 
org.apache.isis.extensions.commandlog.jpa.IsisModuleExtCommandLogPersistenceJpa;
 -import 
org.apache.isis.extensions.executionlog.jpa.IsisModuleExtExecutionLogPersistenceJpa;
 -import 
org.apache.isis.extensions.executionoutbox.jpa.IsisModuleExtExecutionOutboxPersistenceJpa;
 +import 
org.apache.isis.extensions.audittrail.jdo.IsisModuleExtAuditTrailPersistenceJdo;
 +import 
org.apache.isis.extensions.commandlog.jdo.IsisModuleExtCommandLogPersistenceJdo;
 +import 
org.apache.isis.extensions.executionlog.jdo.IsisModuleExtExecutionLogPersistenceJdo;
 +import 
org.apache.isis.extensions.executionoutbox.jdo.IsisModuleExtExecutionOutboxPersistenceJdo;
  import org.apache.isis.extensions.flyway.impl.IsisModuleExtFlywayImpl;
+ import org.apache.isis.extensions.pdfjs.wkt.ui.IsisModuleExtPdfjsWicketUi;
  import 
org.apache.isis.extensions.secman.encryption.jbcrypt.IsisModuleExtSecmanEncryptionJbcrypt;
 -import 
org.apache.isis.extensions.secman.jpa.IsisModuleExtSecmanPersistenceJpa;
 -import 
org.apache.isis.extensions.sessionlog.jpa.IsisModuleExtSessionLogPersistenceJpa;
 +import 
org.apache.isis.extensions.secman.jdo.IsisModuleExtSecmanPersistenceJdo;
 +import 
org.apache.isis.extensions.sessionlog.jdo.IsisModuleExtSessionLogPersistenceJdo;
 +import 
org.apache.isis.persistence.jdo.datanucleus.IsisModulePersistenceJdoDatanucleus;
+ import 
org.apache.isis.extensions.viewer.wicket.exceldownload.ui.IsisModuleExtExcelDownloadWicketUi;
 -import 
org.apache.isis.persistence.jpa.eclipselink.IsisModulePersistenceJpaEclipselink;
 +import 
org.apache.isis.persistence.jdo.datanucleus.IsisModulePersistenceJdoDatanucleusMixins;
  import 
org.apache.isis.testing.fixtures.applib.IsisModuleTestingFixturesApplib;
  import org.apache.isis.testing.h2console.ui.IsisModuleTestingH2ConsoleUi;
  import 
org.apache.isis.valuetypes.asciidoc.metamodel.IsisModuleValAsciidocMetaModel;
@@@ -49,14 -49,17 +51,17 @@@ import domainapp.webapp.quartz.QuartzMo
  
          IsisModuleExtFlywayImpl.class,
  
 -        IsisModuleExtSecmanPersistenceJpa.class,
 +        IsisModuleExtSecmanPersistenceJdo.class,
          IsisModuleExtSecmanEncryptionJbcrypt.class,
 -        IsisModuleExtSessionLogPersistenceJpa.class,
 -        IsisModuleExtAuditTrailPersistenceJpa.class,
 -        IsisModuleExtCommandLogPersistenceJpa.class,
 -        IsisModuleExtExecutionLogPersistenceJpa.class,
 -        IsisModuleExtExecutionOutboxPersistenceJpa.class,
 +        IsisModuleExtSessionLogPersistenceJdo.class,
 +        IsisModuleExtAuditTrailPersistenceJdo.class,
 +        IsisModuleExtCommandLogPersistenceJdo.class,
 +        IsisModuleExtExecutionLogPersistenceJdo.class,
 +        IsisModuleExtExecutionOutboxPersistenceJdo.class,
  
+         IsisModuleExtExcelDownloadWicketUi.class,
+         IsisModuleExtPdfjsWicketUi.class,
+ 
          IsisModuleValAsciidocMetaModel.class, // for pretty rendering of DTO 
objects such as CommandDto, InteractionDto
          IsisModuleValAsciidocUiWkt.class,
  

Reply via email to