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 2017/09/21 23:34:27 UTC
[05/11] isis git commit: ISIS-1712: recreating simpleapp archetype
ISIS-1712: recreating simpleapp archetype
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/215969cb
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/215969cb
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/215969cb
Branch: refs/heads/release-1.15.1-RC1
Commit: 215969cbc905e397145c880a069ca3891ee0411f
Parents: 3ea3af6
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Fri Sep 22 00:05:08 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Fri Sep 22 00:05:08 2017 +0100
----------------------------------------------------------------------
example/archetype/simpleapp/pom.xml | 7 +-
.../META-INF/maven/archetype-metadata.xml | 7 +-
.../application/manifest/isis.properties | 12 ++-
.../archetype-resources/enhance-all.sh | 2 +
.../archetype-resources/module-simple/pom.xml | 5 ++
.../modules/simple/dom/impl/SimpleObject.java | 17 ++--
.../simple/dom/impl/SimpleObjectRepository.java | 5 +-
.../dom/impl/SimpleObjectRepository_Test.java | 8 +-
.../simple/dom/impl/SimpleObject_Test.java | 2 +-
.../archetype-resources/pom-jdo-enhance-all.xml | 92 --------------------
.../main/resources/archetype-resources/pom.xml | 4 +-
.../webapp/src/main/webapp/WEB-INF/shiro.ini | 10 +--
.../projects/basic/archetype.properties | 2 +-
13 files changed, 43 insertions(+), 130 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/pom.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/pom.xml b/example/archetype/simpleapp/pom.xml
index 4b2d6cf..5607d72 100644
--- a/example/archetype/simpleapp/pom.xml
+++ b/example/archetype/simpleapp/pom.xml
@@ -17,7 +17,7 @@
specific language governing permissions and limitations
under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.isis.archetype</groupId>
<artifactId>simpleapp-archetype</artifactId>
@@ -65,12 +65,11 @@
<connection>scm:git:git@github.com:incodehq/incode-build.git/simpleapp</connection>
<developerConnection>scm:git:git@github.com:incodehq/incode-build.git/simpleapp</developerConnection>
<url>git@github.com:incodehq/incode-build.git/simpleapp</url>
- <tag>HEAD</tag>
- </scm>
+ </scm>
<parent>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis</artifactId>
- <version>1.15.0</version>
+ <version>1.15.1</version>
<relativePath>../../../core/pom.xml</relativePath>
</parent>
<properties>
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/META-INF/maven/archetype-metadata.xml b/example/archetype/simpleapp/src/main/resources/META-INF/maven/archetype-metadata.xml
index bb3c767..4092c71 100644
--- a/example/archetype/simpleapp/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ b/example/archetype/simpleapp/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -44,17 +44,12 @@
<include>**/*.class</include>
</includes>
</fileSet>
- <fileSet filtered="true" encoding="UTF-8">
- <directory/>
- <includes>
- <include>pom-jdo-enhance-all.xml</include>
- </includes>
- </fileSet>
<fileSet encoding="UTF-8">
<directory/>
<includes>
<include>.gitattributes</include>
<include>.gitignore</include>
+ <include>enhance-all.sh</include>
<include>README.adoc</include>
</includes>
</fileSet>
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/application/src/main/resources/domainapp/application/manifest/isis.properties
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/application/src/main/resources/domainapp/application/manifest/isis.properties b/example/archetype/simpleapp/src/main/resources/archetype-resources/application/src/main/resources/domainapp/application/manifest/isis.properties
index 9d24286..1e73022 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/application/src/main/resources/domainapp/application/manifest/isis.properties
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/application/src/main/resources/domainapp/application/manifest/isis.properties
@@ -263,7 +263,7 @@ ${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${symbol_pound}${sym
${symbol_pound}
${symbol_pound} Whether changes to objects should be audited; if not set, defaults to "none"
${symbol_pound} - if not set or set to "none", can explicitly enable using @DomainObject(auditing=Auditing.ENABLED)
-${symbol_pound} - if set to "all", can explicitly disable using @Object(auditing=Auditing.DISABLED)
+${symbol_pound} - if set to "all", can explicitly disable using @DomainObject(auditing=Auditing.DISABLED)
${symbol_pound}
${symbol_pound}isis.services.audit.objects=all|none
isis.services.audit.objects=all
@@ -279,6 +279,16 @@ isis.services.command.actions=ignoreSafe
${symbol_pound}
+${symbol_pound} Whether property edits should be reified into commands; if not set, defaults to "none"
+${symbol_pound} - if not set or set to "none", can explicitly enable using @Property(command=CommandReification.ENABLED)
+${symbol_pound} - if set to "all", can explicitly disable using @Property(command=CommandReification.DISABLED)
+${symbol_pound}
+${symbol_pound}isis.services.command.properties=all|none
+isis.services.command.properties=all
+
+
+
+${symbol_pound}
${symbol_pound} Whether changes to objects should be published; if not set, defaults to "none"
${symbol_pound} - if not set or set to "none", can explicitly enable using @DomainObject(publishing=Publishing.ENABLED)
${symbol_pound} - if set to "all", can explicitly disable using @Object(publishing=Publishing.DISABLED)
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/enhance-all.sh
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/enhance-all.sh b/example/archetype/simpleapp/src/main/resources/archetype-resources/enhance-all.sh
new file mode 100644
index 0000000..63572d1
--- /dev/null
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/enhance-all.sh
@@ -0,0 +1,2 @@
+#!/usr/bin/env bash
+mvn -pl module-simple datanucleus:enhance -o
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/pom.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/pom.xml b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/pom.xml
index 1d0b634..3fc7938 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/pom.xml
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/pom.xml
@@ -136,6 +136,11 @@
<artifactId>isis-core-applib</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.axonframework</groupId>
+ <artifactId>axon-core</artifactId>
+ </dependency>
+
<!-- test -->
<dependency>
<groupId>org.apache.isis.mavendeps</groupId>
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
index 95da22a..05757bb 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
@@ -26,6 +26,7 @@ import javax.jdo.annotations.VersionStrategy;
import org.apache.isis.applib.annotation.Action;
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.Parameter;
import org.apache.isis.applib.annotation.ParameterLayout;
@@ -38,8 +39,7 @@ import org.apache.isis.applib.services.repository.RepositoryService;
import org.apache.isis.applib.services.title.TitleService;
import org.apache.isis.applib.util.ObjectContracts;
-import lombok.Getter;
-import lombok.Setter;
+import lombok.AccessLevel;
@javax.jdo.annotations.PersistenceCapable(
identityType=IdentityType.DATASTORE,
@@ -60,21 +60,19 @@ import lombok.Setter;
})
@javax.jdo.annotations.Unique(name="SimpleObject_name_UNQ", members = {"name"})
@DomainObject() // objectType inferred from @PersistenceCapable${symbol_pound}schema
+@DomainObjectLayout() // trigger events etc.
+@lombok.Getter @lombok.Setter
+@lombok.RequiredArgsConstructor(staticName = "create")
public class SimpleObject implements Comparable<SimpleObject> {
- public SimpleObject(final String name) {
- setName(name);
- }
-
@javax.jdo.annotations.Column(allowsNull = "false", length = 40)
+ @lombok.NonNull
@Property() // editing disabled by default, see isis.properties
- @Getter @Setter
@Title(prepend = "Object: ")
private String name;
@javax.jdo.annotations.Column(allowsNull = "true", length = 4000)
@Property(editing = Editing.ENABLED)
- @Getter @Setter
private String notes;
@@ -121,12 +119,15 @@ public class SimpleObject implements Comparable<SimpleObject> {
//region > injected services
@javax.inject.Inject
+ @lombok.Getter(AccessLevel.NONE) @lombok.Setter(AccessLevel.NONE)
RepositoryService repositoryService;
@javax.inject.Inject
+ @lombok.Getter(AccessLevel.NONE) @lombok.Setter(AccessLevel.NONE)
TitleService titleService;
@javax.inject.Inject
+ @lombok.Getter(AccessLevel.NONE) @lombok.Setter(AccessLevel.NONE)
MessageService messageService;
//endregion
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository.java
index c6ee82b..a0bbaf9 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository.java
@@ -48,10 +48,7 @@ public class SimpleObjectRepository {
}
public SimpleObject create(final String name) {
- final SimpleObject object = new SimpleObject(name);
- serviceRegistry.injectServicesInto(object);
- repositoryService.persist(object);
- return object;
+ return repositoryService.persist(SimpleObject.create(name));
}
@javax.inject.Inject
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository_Test.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository_Test.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository_Test.java
index 0b6a050..ed90361 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository_Test.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObjectRepository_Test.java
@@ -27,7 +27,6 @@ import org.hamcrest.Description;
import org.hamcrest.Matcher;
import org.hamcrest.TypeSafeMatcher;
import org.jmock.Expectations;
-import org.jmock.Sequence;
import org.jmock.auto.Mock;
import org.junit.Before;
import org.junit.Rule;
@@ -35,6 +34,7 @@ import org.junit.Test;
import org.apache.isis.applib.services.registry.ServiceRegistry2;
import org.apache.isis.applib.services.repository.RepositoryService;
+import org.apache.isis.core.unittestsupport.jmocking.JMockActions;
import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2.Mode;
@@ -68,14 +68,10 @@ public class SimpleObjectRepository_Test {
final String someName = "Foobar";
// given
- final Sequence seq = context.sequence("create");
context.checking(new Expectations() {
{
- oneOf(mockServiceRegistry).injectServicesInto(with(any(SimpleObject.class)));
- inSequence(seq);
-
oneOf(mockRepositoryService).persist(with(nameOf(someName)));
- inSequence(seq);
+ will(JMockActions.returnArgument(0));
}
});
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObject_Test.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObject_Test.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObject_Test.java
index 43180a2..4d90f0d 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObject_Test.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/module-simple/src/test/java/domainapp/modules/simple/dom/impl/SimpleObject_Test.java
@@ -30,7 +30,7 @@ public class SimpleObject_Test {
@Before
public void setUp() throws Exception {
- simpleObject = new SimpleObject("Foobar");
+ simpleObject = SimpleObject.create("Foobar");
}
public static class Name extends SimpleObject_Test {
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/pom-jdo-enhance-all.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/pom-jdo-enhance-all.xml b/example/archetype/simpleapp/src/main/resources/archetype-resources/pom-jdo-enhance-all.xml
deleted file mode 100644
index 6c9ba36..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/pom-jdo-enhance-all.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
- license agreements. See the NOTICE file distributed with this work for additional
- information regarding copyright ownership. The ASF licenses this file to
- you under the Apache License, Version 2.0 (the "License"); you may not use
- this file except in compliance with the License. You may obtain a copy of
- the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
- by applicable law or agreed to in writing, software distributed under the
- License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
- OF ANY KIND, either express or implied. See the License for the specific
- language governing permissions and limitations under the License. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache</groupId>
- <artifactId>apache</artifactId>
- <version>13</version>
- <relativePath />
- </parent>
-
- <groupId>${package}</groupId>
- <artifactId>${artifactId}-enhance-all</artifactId>
- <version>0.0.1-SNAPSHOT</version>
-
- <packaging>pom</packaging>
-
- <name>Enhance All DOM Modules</name>
-
- <description>
- Utility to enhance all Maven projects containing JDO entities with a single command:
- mvn -f pom-jdo-enhance-all.xml datanucleus:enhance -o
- </description>
-
- <properties>
- <datanucleus-maven-plugin.version>4.0.1</datanucleus-maven-plugin.version>
- </properties>
-
- <build>
- <resources>
- <resource>
- <filtering>false</filtering>
- <directory>src/main/resources</directory>
- </resource>
- <resource>
- <filtering>false</filtering>
- <directory>src/main/java</directory>
- <includes>
- <include>**</include>
- </includes>
- <excludes>
- <exclude>**/*.java</exclude>
- </excludes>
- </resource>
- </resources>
- <plugins>
- <plugin>
- <groupId>org.datanucleus</groupId>
- <artifactId>datanucleus-maven-plugin</artifactId>
- <version>${symbol_dollar}{datanucleus-maven-plugin.version}</version>
- <configuration>
- <fork>false</fork>
- <verbose>true</verbose>
- </configuration>
- <executions>
- <execution>
- <phase>compile</phase>
- <goals>
- <goal>enhance</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <profiles>
- <profile>
- <id>core</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <modules>
- <module>module-simple</module>
- </modules>
- </profile>
- </profiles>
-
-</project>
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/pom.xml b/example/archetype/simpleapp/src/main/resources/archetype-resources/pom.xml
index 0692fe7..afde2fc 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/pom.xml
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/pom.xml
@@ -38,9 +38,9 @@
</prerequisites>
<properties>
- <isis.version>1.15.0</isis.version>
+ <isis.version>1.15.1</isis.version>
- <lombok.version>1.16.10</lombok.version>
+ <lombok.version>1.16.18</lombok.version>
<compiler-plugin.source>1.7</compiler-plugin.source>
<compiler-plugin.target>1.7</compiler-plugin.target>
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/shiro.ini
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/shiro.ini b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/shiro.ini
index 971ae69..019f356 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/shiro.ini
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/shiro.ini
@@ -43,9 +43,9 @@ ldapRealm.uniqueMemberAttributeValueTemplate = uid={0}
# DEMOS: self-install_role
ldapRealm.permissionsByRole=\
- user_role = *:ToDoItemsJdo:*:*,\
- *:ToDoItem:*:*; \
- self-install_role = *:ToDoItemsFixturesService:install:* ; \
+ user_role = *:SimpleObjectMenu:*:*,\
+ *:SimpleObject:*:*; \
+ self-install_role = *:FixtureScriptsDefault:*:* ; \
admin_role = *
# to use ldap...
@@ -87,7 +87,7 @@ guest = guest, user_role
# role = perm1, perm2, perm3, ...
# perm in format: packageName:className:memberName:r,w
-user_role = *:SimpleObjects:*:*,\
+user_role = *:SimpleObjectMenu:*:*,\
*:SimpleObject:*:*
-self-install_role = *:DomainAppFixtureService:*:*
+self-install_role = *:FixtureScriptsDefault:*:*
admin_role = *
http://git-wip-us.apache.org/repos/asf/isis/blob/215969cb/example/archetype/simpleapp/src/test/resources/projects/basic/archetype.properties
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/test/resources/projects/basic/archetype.properties b/example/archetype/simpleapp/src/test/resources/projects/basic/archetype.properties
index d6972c2..3baa628 100644
--- a/example/archetype/simpleapp/src/test/resources/projects/basic/archetype.properties
+++ b/example/archetype/simpleapp/src/test/resources/projects/basic/archetype.properties
@@ -1,4 +1,4 @@
-#Sun Aug 06 08:44:03 BST 2017
+#Fri Sep 22 00:04:59 BST 2017
package=it.pkg
version=0.1-SNAPSHOT
groupId=archetype.it