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 e4d047738b26912265166bf387979ea6bb7f44d5
Merge: f3428f0 55a7df4
Author: Dan Haywood <[email protected]>
AuthorDate: Tue Aug 2 10:16:54 2022 +0100

    Merge branch 'jpa-SNAPSHOT' into jdo-SNAPSHOT

 .../domainapp/modules/simple/SimpleModule.java     |  3 ++
 .../modules/simple/dom/so/SimpleObject.java        | 37 +++++++++++++++-------
 .../modules/simple/dom/so/SimpleObjects.java       | 15 +++++----
 3 files changed, 38 insertions(+), 17 deletions(-)

diff --cc module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
index af89f3f,5b85205..8a50246
--- a/module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
+++ b/module-simple/src/main/java/domainapp/modules/simple/SimpleModule.java
@@@ -11,8 -13,13 +11,11 @@@ import domainapp.modules.simple.dom.so.
  
  @Configuration
  @ComponentScan
 -@EnableJpaRepositories
 -@EntityScan(basePackageClasses = {SimpleModule.class})
  public class SimpleModule implements ModuleWithFixtures {
  
+     public static final String NAMESPACE = "simple";
+     public static final String SCHEMA = "simple";
+ 
      @Override
      public FixtureScript getTeardownFixture() {
          return new TeardownFixtureJpaAbstract() {
diff --cc 
module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObject.java
index ee83d30,7c61b9e..5854996
--- 
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
@@@ -3,9 -3,19 +3,16 @@@ package domainapp.modules.simple.dom.so
  import java.util.Comparator;
  
  import javax.inject.Inject;
+ import javax.inject.Named;
 -import javax.persistence.Column;
 -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.DatastoreIdentity;
 +import javax.jdo.annotations.IdGeneratorStrategy;
 +import javax.jdo.annotations.IdentityType;
++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.apache.isis.applib.annotation.Action;
@@@ -32,33 -44,30 +40,35 @@@ import lombok.Setter
  import lombok.ToString;
  import lombok.val;
  
++import domainapp.modules.simple.SimpleModule;
+ import domainapp.modules.simple.SimpleModule;
  import domainapp.modules.simple.types.Name;
  import domainapp.modules.simple.types.Notes;
  
  
- @javax.jdo.annotations.PersistenceCapable(
-     schema = "simple",
 -@Entity
 -@Table(
 -    schema= SimpleModule.SCHEMA,
 -    uniqueConstraints = {
 -        @UniqueConstraint(name = "SimpleObject__name__UNQ", columnNames = 
{"NAME"})
 -    }
++@PersistenceCapable(
++    schema = SimpleModule.SCHEMA,
 +    identityType=IdentityType.DATASTORE)
- @javax.jdo.annotations.Unique(
-         name = "SimpleObject_name_UNQ", members = {"name"}
++@Unique(
++        name = "SimpleObject__name__UNQ", members = { "name" }
  )
- @javax.jdo.annotations.Queries({
-         @javax.jdo.annotations.Query(
 -@NamedQueries({
 -        @NamedQuery(
++@Queries({
++        @Query(
                  name = SimpleObject.NAMED_QUERY__FIND_BY_NAME_LIKE,
 -                query = "SELECT so " +
 -                        "FROM SimpleObject so " +
 -                        "WHERE so.name LIKE :name"
 +                value = "SELECT " +
 +                        "FROM domainapp.modules.simple.dom.so.SimpleObject " +
 +                        "WHERE name.indexOf(:name) >= 0"
 +        ),
-         @javax.jdo.annotations.Query(
++        @Query(
 +                name = SimpleObject.NAMED_QUERY__FIND_BY_NAME_EXACT,
 +                value = "SELECT " +
 +                        "FROM domainapp.modules.simple.dom.so.SimpleObject " +
 +                        "WHERE name == :name"
          )
  })
 -@EntityListeners(IsisEntityListener.class)
 -@Named(SimpleModule.NAMESPACE +
 -        ".SimpleObject")
 -@DomainObject(entityChangePublishing = Publishing.ENABLED)
 
[email protected](strategy=IdGeneratorStrategy.IDENTITY,
 column="id")
 [email protected](strategy= VersionStrategy.DATE_TIME, 
column="version")
 +@DomainObject(logicalTypeName = "simple.SimpleObject", entityChangePublishing 
= Publishing.ENABLED)
  @DomainObjectLayout()
  @NoArgsConstructor(access = AccessLevel.PUBLIC)
  @XmlJavaTypeAdapter(PersistentEntityAdapter.class)
@@@ -82,14 -101,16 +92,14 @@@ public class SimpleObject implements Co
  
      @Title
      @Name
 -    @Column(length = Name.MAX_LEN, nullable = false)
      @Getter @Setter @ToString.Include
-     @PropertyLayout(fieldSetId = "name", sequence = "1")
+     @PropertyLayout(fieldSetId = LayoutConstants.FieldSetId.IDENTITY, 
sequence = "1")
      private String name;
  
      @Notes
 -    @Column(length = Notes.MAX_LEN, nullable = true)
      @Getter @Setter
      @Property(commandPublishing = Publishing.ENABLED, executionPublishing = 
Publishing.ENABLED)
-     @PropertyLayout(fieldSetId = "name", sequence = "2")
+     @PropertyLayout(fieldSetId = LayoutConstants.FieldSetId.DETAILS, sequence 
= "2")
      private String notes;
  
  
diff --cc 
module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObjects.java
index ab78719,c0416e4..9117954
--- 
a/module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObjects.java
+++ 
b/module-simple/src/main/java/domainapp/modules/simple/dom/so/SimpleObjects.java
@@@ -2,8 -2,11 +2,10 @@@ package domainapp.modules.simple.dom.so
  
  import java.util.List;
  
+ import javax.annotation.Priority;
  import javax.inject.Inject;
+ import javax.inject.Named;
 -import javax.persistence.EntityManager;
 -import javax.persistence.TypedQuery;
 +import javax.jdo.JDOQLTypedQuery;
  
  import org.apache.isis.applib.annotation.Action;
  import org.apache.isis.applib.annotation.ActionLayout;
@@@ -16,16 -19,18 +18,17 @@@ import org.apache.isis.applib.annotatio
  import org.apache.isis.applib.annotation.SemanticsOf;
  import org.apache.isis.applib.query.Query;
  import org.apache.isis.applib.services.repository.RepositoryService;
 -import org.apache.isis.commons.functional.Try;
 -import org.apache.isis.persistence.jpa.applib.services.JpaSupportService;
 +import org.apache.isis.persistence.jdo.applib.services.JdoSupportService;
  
+ import lombok.RequiredArgsConstructor;
+ 
+ import domainapp.modules.simple.SimpleModule;
  import domainapp.modules.simple.types.Name;
  
- @DomainService(
-         nature = NatureOfService.VIEW,
-         logicalTypeName = "simple.SimpleObjects"
- )
- @javax.annotation.Priority(PriorityPrecedence.EARLY)
- @lombok.RequiredArgsConstructor(onConstructor_ = {@Inject} )
+ @Named(SimpleModule.NAMESPACE + ".SimpleObjects")
+ @DomainService(nature = NatureOfService.VIEW)
+ @Priority(PriorityPrecedence.EARLY)
+ @RequiredArgsConstructor(onConstructor_ = {@Inject} )
  public class SimpleObjects {
  
      final RepositoryService repositoryService;

Reply via email to