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/01/09 22:40:35 UTC

[15/22] isis git commit: ISIS-1559: removes the mixins from SimpleObject, and simplifies code elsewhere also where possible.

ISIS-1559: removes the mixins from SimpleObject, and simplifies code elsewhere also where possible.

Also moves the specglue from the application module to the module-simple module.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/1e81a3a0
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/1e81a3a0
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/1e81a3a0

Branch: refs/heads/master
Commit: 1e81a3a0e2a7815a8052a41702a96551f1d421af
Parents: 735cb81
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu Dec 22 18:45:49 2016 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Dec 22 18:45:49 2016 +0000

----------------------------------------------------------------------
 .../application/simpleapp/application/pom.xml   |   7 +-
 .../fixture/scenarios/DomainAppDemo.java        |  28 +--
 .../fixture/teardown/DomainAppTearDown.java     |   5 -
 .../DomainAppAppManifestWithFixtures.java       |   4 +-
 .../services/homepage/HomePageViewModel.java    |   9 -
 .../bdd/specglue/BootstrappingGlue.java         |   2 -
 .../bdd/specglue/CatalogOfFixturesGlue.java     |   6 +-
 .../bdd/specglue/SimpleObjectGlue.java          |  50 ------
 .../application/bdd/specs/RunIntegBddSpecs.java |   5 +-
 .../SimpleObjectSpec_listAllAndCreate.feature   |   2 +-
 .../application/integtests/Smoke_IntegTest.java |   4 +-
 .../simple/dom/SimpleModuleDomSubmodule.java    |   2 +-
 .../modules/simple/dom/impl/SimpleObject.java   | 180 +++++--------------
 .../fixture/SimpleModuleFixtureSubmodule.java   |   3 +-
 .../fixture/data/SimpleObjectMenu_create.java   |  58 ------
 .../fixture/scenario/CreateSimpleObjects.java   |  81 +++++++++
 .../fixture/scenario/RecreateSimpleObjects.java |  76 --------
 .../tests/SimpleObjectMenu_IntegTest.java       |   8 +-
 .../tests/SimpleObject_IntegTest.java           |  10 +-
 .../simple/specglue/SimpleObjectMenuGlue.java   |  53 ++++++
 example/application/simpleapp/pom.xml           |   6 +
 .../src/main/webapp/WEB-INF/translations-en.po  |   2 +-
 .../src/main/webapp/WEB-INF/translations-es.po  |   2 +-
 .../src/main/webapp/WEB-INF/translations-nl.po  |   2 +-
 .../src/main/webapp/WEB-INF/translations.po     |   2 +-
 25 files changed, 221 insertions(+), 386 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/pom.xml b/example/application/simpleapp/application/pom.xml
index d0dd876..293ffc0 100644
--- a/example/application/simpleapp/application/pom.xml
+++ b/example/application/simpleapp/application/pom.xml
@@ -107,7 +107,12 @@
             <groupId>${project.groupId}</groupId>
             <artifactId>simpleapp-module-simple</artifactId>
         </dependency>
-
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>simpleapp-module-simple</artifactId>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
 
         <!-- isis -->
         <dependency>

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/scenarios/DomainAppDemo.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/scenarios/DomainAppDemo.java b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/scenarios/DomainAppDemo.java
index 8914ba8..7f3ce27 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/scenarios/DomainAppDemo.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/scenarios/DomainAppDemo.java
@@ -18,10 +18,14 @@
  */
 package domainapp.application.fixture.scenarios;
 
+import javax.annotation.Nullable;
+
 import org.apache.isis.applib.fixturescripts.FixtureScript;
 
 import domainapp.application.fixture.teardown.DomainAppTearDown;
-import domainapp.modules.simple.fixture.scenario.RecreateSimpleObjects;
+import domainapp.modules.simple.fixture.scenario.CreateSimpleObjects;
+import lombok.Getter;
+import lombok.Setter;
 
 public class DomainAppDemo extends FixtureScript {
 
@@ -29,32 +33,16 @@ public class DomainAppDemo extends FixtureScript {
         withDiscoverability(Discoverability.DISCOVERABLE);
     }
 
-    //region > number (optional input)
+    @Nullable
+    @Getter @Setter
     private Integer number;
 
-    /**
-     * The number of objects to create, up to 10; optional, defaults to 3.
-     */
-    public Integer getNumber() {
-        return number;
-    }
-
-    public DomainAppDemo setNumber(final Integer number) {
-        this.number = number;
-        return this;
-    }
-    //endregion
-
     @Override
     protected void execute(final ExecutionContext ec) {
 
-        // defaults
-        final int number = defaultParam("number", ec, 3);
-
-
         // execute
         ec.executeChild(this, new DomainAppTearDown());
-        ec.executeChild(this, new RecreateSimpleObjects().setNumber(number));
+        ec.executeChild(this, new CreateSimpleObjects().setNumber(number));
 
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/teardown/DomainAppTearDown.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/teardown/DomainAppTearDown.java b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/teardown/DomainAppTearDown.java
index 44a81a8..f7ea288 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/teardown/DomainAppTearDown.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/fixture/teardown/DomainAppTearDown.java
@@ -19,7 +19,6 @@
 package domainapp.application.fixture.teardown;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
 
 import domainapp.modules.simple.fixture.teardown.SimpleModuleTearDown;
 
@@ -30,8 +29,4 @@ public class DomainAppTearDown extends FixtureScript {
         executionContext.executeChild(this, new SimpleModuleTearDown());
     }
 
-
-    @javax.inject.Inject
-    private IsisJdoSupport isisJdoSupport;
-
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/main/java/domainapp/application/manifest/DomainAppAppManifestWithFixtures.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/manifest/DomainAppAppManifestWithFixtures.java b/example/application/simpleapp/application/src/main/java/domainapp/application/manifest/DomainAppAppManifestWithFixtures.java
index 1afec6f..756ff0e 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/manifest/DomainAppAppManifestWithFixtures.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/manifest/DomainAppAppManifestWithFixtures.java
@@ -27,7 +27,7 @@ import com.google.common.collect.Maps;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
 
-import domainapp.modules.simple.fixture.scenario.RecreateSimpleObjects;
+import domainapp.modules.simple.fixture.scenario.CreateSimpleObjects;
 
 /**
  * Run the app but without setting up any fixtures.
@@ -39,7 +39,7 @@ public class DomainAppAppManifestWithFixtures extends DomainAppAppManifest {
      */
     @Override
     public List<Class<? extends FixtureScript>> getFixtures() {
-        return Lists.newArrayList(RecreateSimpleObjects.class);
+        return Lists.newArrayList(CreateSimpleObjects.class);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageViewModel.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageViewModel.java b/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageViewModel.java
index 78e0ae0..0a0fb6c 100644
--- a/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageViewModel.java
+++ b/example/application/simpleapp/application/src/main/java/domainapp/application/services/homepage/HomePageViewModel.java
@@ -29,23 +29,14 @@ import domainapp.modules.simple.dom.impl.SimpleObjectRepository;
 @ViewModel
 public class HomePageViewModel {
 
-    //region > title
     public TranslatableString title() {
         return TranslatableString.tr("{num} objects", "num", getObjects().size());
     }
-    //endregion
 
-    //region > object (collection)
-    @org.apache.isis.applib.annotation.HomePage
     public List<SimpleObject> getObjects() {
         return simpleObjectRepository.listAll();
     }
-    //endregion
-
-    //region > injected services
 
     @javax.inject.Inject
     SimpleObjectRepository simpleObjectRepository;
-
-    //endregion
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/BootstrappingGlue.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/BootstrappingGlue.java b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/BootstrappingGlue.java
index 53df979..43f59e1 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/BootstrappingGlue.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/BootstrappingGlue.java
@@ -27,9 +27,7 @@ public class BootstrappingGlue extends CukeGlueAbstract {
 
     @Before(value={"@integration"}, order=100)
     public void beforeScenarioIntegrationScope() {
-
         DomainAppIntegTestAbstract.initSystem();
-
         before(ScenarioExecutionScope.INTEGRATION);
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/CatalogOfFixturesGlue.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/CatalogOfFixturesGlue.java b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/CatalogOfFixturesGlue.java
index 1a7c4c7..a5adbac 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/CatalogOfFixturesGlue.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/CatalogOfFixturesGlue.java
@@ -19,13 +19,13 @@ package domainapp.application.bdd.specglue;
 import org.apache.isis.core.specsupport.specs.CukeGlueAbstract;
 
 import cucumber.api.java.Before;
-import domainapp.modules.simple.fixture.scenario.RecreateSimpleObjects;
+import domainapp.application.fixture.scenarios.DomainAppDemo;
 
 public class CatalogOfFixturesGlue extends CukeGlueAbstract {
 
-    @Before(value={"@integration", "@RecreateSimpleObjects"}, order=20000)
+    @Before(value={"@integration", "@DomainAppDemo"}, order=20000)
     public void integrationFixtures() throws Throwable {
-        scenarioExecution().install(new RecreateSimpleObjects());
+        scenarioExecution().install(new DomainAppDemo());
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/SimpleObjectGlue.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/SimpleObjectGlue.java b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/SimpleObjectGlue.java
deleted file mode 100644
index 258b9f0..0000000
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specglue/SimpleObjectGlue.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- *  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.
- */
-package domainapp.application.bdd.specglue;
-
-import java.util.List;
-import java.util.UUID;
-
-import org.apache.isis.core.specsupport.specs.CukeGlueAbstract;
-
-import cucumber.api.java.en.Given;
-import cucumber.api.java.en.When;
-import domainapp.modules.simple.dom.impl.SimpleObject;
-import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-
-public class SimpleObjectGlue extends CukeGlueAbstract {
-
-    @Given("^there are.* (\\d+) simple objects$")
-    public void there_are_N_simple_objects(int n) throws Throwable {
-        try {
-            final List<SimpleObject> findAll = service(SimpleObjectMenu.class).listAll();
-            assertThat(findAll.size(), is(n));
-            putVar("list", "all", findAll);
-            
-        } finally {
-            assertMocksSatisfied();
-        }
-    }
-    
-    @When("^I create a new simple object$")
-    public void I_create_a_new_simple_object() throws Throwable {
-        service(SimpleObjectMenu.class).create(UUID.randomUUID().toString());
-    }
-    
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/RunIntegBddSpecs.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/RunIntegBddSpecs.java b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/RunIntegBddSpecs.java
index 18fd3be..4d9f543 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/RunIntegBddSpecs.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/RunIntegBddSpecs.java
@@ -31,7 +31,10 @@ import cucumber.api.junit.Cucumber;
                 "html:target/cucumber-html-report"
                 ,"json:target/cucumber.json"
         },
-        glue={"classpath:domainapp.application.bdd.specglue"},
+        glue={
+                "classpath:domainapp.application.bdd.specglue",
+                "classpath:domainapp.modules.simple.specglue"
+        },
         strict = true,
         tags = { "~@backlog", "~@ignore" })
 public class RunIntegBddSpecs {

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/SimpleObjectSpec_listAllAndCreate.feature
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/SimpleObjectSpec_listAllAndCreate.feature b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/SimpleObjectSpec_listAllAndCreate.feature
index 77e0356..083e2cb 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/SimpleObjectSpec_listAllAndCreate.feature
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/bdd/specs/SimpleObjectSpec_listAllAndCreate.feature
@@ -14,7 +14,7 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 #
-@RecreateSimpleObjects
+@DomainAppDemo
 Feature: List and Create New Simple Objects
 
   @integration

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
index 4b514e8..08e64ef 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/Smoke_IntegTest.java
@@ -81,7 +81,7 @@ public class Smoke_IntegTest extends DomainAppIntegTestAbstract {
 
 
         // when
-        wrap(mixin(SimpleObject.updateName.class, fred)).exec("Freddy");
+        wrap(fred).updateName("Freddy");
         transactionService.flushTransaction();
 
         // then
@@ -97,7 +97,7 @@ public class Smoke_IntegTest extends DomainAppIntegTestAbstract {
 
 
         // when
-        wrap(mixin(SimpleObject.delete.class, fred)).exec();
+        wrap(fred).delete();
         transactionService.flushTransaction();
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/SimpleModuleDomSubmodule.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/SimpleModuleDomSubmodule.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/SimpleModuleDomSubmodule.java
index 41dc75b..7d314e8 100644
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/SimpleModuleDomSubmodule.java
+++ b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/SimpleModuleDomSubmodule.java
@@ -19,6 +19,7 @@
 package domainapp.modules.simple.dom;
 
 public final class SimpleModuleDomSubmodule {
+    private SimpleModuleDomSubmodule(){}
 
     public static class PropertyDomainEvent<S,T>
             extends org.apache.isis.applib.services.eventbus.PropertyDomainEvent<S,T> {}
@@ -26,5 +27,4 @@ public final class SimpleModuleDomSubmodule {
             extends org.apache.isis.applib.services.eventbus.CollectionDomainEvent<S,T> {}
     public static class ActionDomainEvent<S> extends
             org.apache.isis.applib.services.eventbus.ActionDomainEvent<S> {}
-
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
index 23b3c54..52e9fe9 100644
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
+++ b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/dom/impl/SimpleObject.java
@@ -22,25 +22,19 @@ import javax.jdo.annotations.IdentityType;
 import javax.jdo.annotations.VersionStrategy;
 
 import org.apache.isis.applib.annotation.Action;
-import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.Auditing;
-import org.apache.isis.applib.annotation.CommandReification;
-import org.apache.isis.applib.annotation.Contributed;
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.Editing;
-import org.apache.isis.applib.annotation.Mixin;
 import org.apache.isis.applib.annotation.Parameter;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.Property;
-import org.apache.isis.applib.annotation.Publishing;
 import org.apache.isis.applib.annotation.SemanticsOf;
+import org.apache.isis.applib.annotation.Title;
 import org.apache.isis.applib.services.i18n.TranslatableString;
 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.util.ObjectContracts;
 
-import domainapp.modules.simple.dom.SimpleModuleDomSubmodule;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -51,172 +45,68 @@ import lombok.Setter;
 )
 @javax.jdo.annotations.DatastoreIdentity(
         strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY,
-         column="id")
+        column="id")
 @javax.jdo.annotations.Version(
         strategy= VersionStrategy.DATE_TIME,
         column="version")
 @javax.jdo.annotations.Queries({
         @javax.jdo.annotations.Query(
-                name = "findByName", language = "JDOQL",
+                name = "findByName",
                 value = "SELECT "
                         + "FROM domainapp.modules.simple.dom.impl.SimpleObject "
                         + "WHERE name.indexOf(:name) >= 0 ")
 })
 @javax.jdo.annotations.Unique(name="SimpleObject_name_UNQ", members = {"name"})
 @DomainObject(
-        objectType = "simple.SimpleObject",
-        auditing = Auditing.ENABLED,
-        publishing = Publishing.ENABLED
+        objectType = "simple.SimpleObject"
 )
 public class SimpleObject implements Comparable<SimpleObject> {
 
-    //region > title
-    public TranslatableString title() {
-        return TranslatableString.tr("Object: {name}", "name", getName());
-    }
-    //endregion
-
-    //region > constructor
     public SimpleObject(final String name) {
         setName(name);
     }
-    //endregion
-
-    //region > name (read-only property)
-    public static class NameType {
-        private NameType() {
-        }
-
-        public static class Meta {
-            public static final int MAX_LEN = 40;
-
-            private Meta() {
-            }
-        }
-
-        public static class PropertyDomainEvent
-                extends SimpleModuleDomSubmodule.PropertyDomainEvent<SimpleObject, String> { }
-    }
 
-
-    @javax.jdo.annotations.Column(allowsNull = "false", length = NameType.Meta.MAX_LEN)
-    @Property(
-            editing = Editing.DISABLED,
-            domainEvent = NameType.PropertyDomainEvent.class
-    )
+    @javax.jdo.annotations.Column(allowsNull = "false", length = 40)
+    @Property(editing = Editing.DISABLED)
     @Getter @Setter
+    @Title(prepend = "Object: ")
     private String name;
 
-    // endregion
-
-    //region > notes (editable property)
-    public static class NotesType {
-        private NotesType() {
-        }
-
-        public static class Meta {
-            public static final int MAX_LEN = 4000;
-
-            private Meta() {
-            }
-        }
-
-        public static class PropertyDomainEvent
-                extends SimpleModuleDomSubmodule.PropertyDomainEvent<SimpleObject, String> { }
-    }
-
-
-    @javax.jdo.annotations.Column(
-            allowsNull = "true",
-            length = NotesType.Meta.MAX_LEN
-    )
-    @Property(
-            command = CommandReification.ENABLED,
-            publishing = Publishing.ENABLED,
-            domainEvent = NotesType.PropertyDomainEvent.class
-    )
+    @javax.jdo.annotations.Column(allowsNull = "true", length = 4000)
+    @Property(editing = Editing.ENABLED)
     @Getter @Setter
     private String notes;
-    //endregion
+
 
     //region > updateName (action)
-    @Mixin(method = "exec")
-    public static class updateName {
-
-        public static class ActionDomainEvent extends SimpleModuleDomSubmodule.ActionDomainEvent<SimpleObject> {
-        }
-
-        private final SimpleObject simpleObject;
-
-        public updateName(final SimpleObject simpleObject) {
-            this.simpleObject = simpleObject;
-        }
-
-        @Action(
-                command = CommandReification.ENABLED,
-                publishing = Publishing.ENABLED,
-                semantics = SemanticsOf.IDEMPOTENT,
-                domainEvent = ActionDomainEvent.class
-        )
-        @ActionLayout(
-                contributed = Contributed.AS_ACTION
-        )
-        public SimpleObject exec(
-                @Parameter(maxLength = SimpleObject.NameType.Meta.MAX_LEN)
-                @ParameterLayout(named = "Name")
-                final String name) {
-            simpleObject.setName(name);
-            return simpleObject;
-        }
-
-        public String default0Exec() {
-            return simpleObject.getName();
-        }
-
-        public TranslatableString validate0Exec(final String name) {
-            return name != null && name.contains("!") ? TranslatableString.tr("Exclamation mark is not allowed") : null;
-        }
+    @Action(semantics = SemanticsOf.IDEMPOTENT)
+    public SimpleObject updateName(
+            @Parameter(maxLength = 40)
+            @ParameterLayout(named = "Name")
+            final String name) {
+        setName(name);
+        return this;
+    }
 
+    public String default0UpdateName() {
+        return getName();
+    }
+
+    public TranslatableString validate0UpdateName(final String name) {
+        return name != null && name.contains("!") ? TranslatableString.tr("Exclamation mark is not allowed") : null;
     }
     //endregion
 
     //region > delete (action)
-    @Mixin(method = "exec")
-    public static class delete {
-
-        public static class ActionDomainEvent extends SimpleModuleDomSubmodule.ActionDomainEvent<SimpleObject> {
-        }
-
-        private final SimpleObject simpleObject;
-        public delete(final SimpleObject simpleObject) {
-            this.simpleObject = simpleObject;
-        }
-
-        @Action(
-                domainEvent = ActionDomainEvent.class,
-                semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE
-        )
-        @ActionLayout(
-                contributed = Contributed.AS_ACTION
-        )
-        public void exec() {
-            final String title = titleService.titleOf(simpleObject);
-            messageService.informUser(String.format("'%s' deleted", title));
-            repositoryService.remove(simpleObject);
-        }
-
-        @javax.inject.Inject
-        RepositoryService repositoryService;
-
-        @javax.inject.Inject
-        TitleService titleService;
-
-        @javax.inject.Inject
-        MessageService messageService;
+    @Action(semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE)
+    public void delete() {
+        final String title = titleService.titleOf(this);
+        messageService.informUser(String.format("'%s' deleted", title));
+        repositoryService.remove(this);
     }
-
     //endregion
 
+
     //region > toString, compareTo
     @Override
     public String toString() {
@@ -227,7 +117,17 @@ public class SimpleObject implements Comparable<SimpleObject> {
     public int compareTo(final SimpleObject other) {
         return ObjectContracts.compare(this, other, "name");
     }
+    //endregion
+
+    //region > injected services
+    @javax.inject.Inject
+    RepositoryService repositoryService;
+
+    @javax.inject.Inject
+    TitleService titleService;
 
+    @javax.inject.Inject
+    MessageService messageService;
     //endregion
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/SimpleModuleFixtureSubmodule.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/SimpleModuleFixtureSubmodule.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/SimpleModuleFixtureSubmodule.java
index 0ac5838..b840eb2 100644
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/SimpleModuleFixtureSubmodule.java
+++ b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/SimpleModuleFixtureSubmodule.java
@@ -19,6 +19,5 @@
 package domainapp.modules.simple.fixture;
 
 public final class SimpleModuleFixtureSubmodule {
-
-
+    private SimpleModuleFixtureSubmodule(){}
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/data/SimpleObjectMenu_create.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/data/SimpleObjectMenu_create.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/data/SimpleObjectMenu_create.java
deleted file mode 100644
index cb22a8b..0000000
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/data/SimpleObjectMenu_create.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- *  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.
- */
-
-package domainapp.modules.simple.fixture.data;
-
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-
-import domainapp.modules.simple.dom.impl.SimpleObject;
-import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
-import lombok.Getter;
-import lombok.Setter;
-import lombok.experimental.Accessors;
-
-@Accessors(chain = true)
-public class SimpleObjectMenu_create extends FixtureScript {
-
-    /**
-     * Name of the object (required)
-     */
-    @Getter @Setter
-    private String name;
-
-    /**
-     * The created simple object (output).
-     */
-    @Getter
-    private SimpleObject simpleObject;
-
-
-    @Override
-    protected void execute(final ExecutionContext ec) {
-
-        String name = checkParam("name", ec, String.class);
-
-        this.simpleObject = wrap(simpleObjectMenu).create(name);
-        ec.addResult(this, simpleObject);
-    }
-
-    @javax.inject.Inject
-    SimpleObjectMenu simpleObjectMenu;
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/CreateSimpleObjects.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/CreateSimpleObjects.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/CreateSimpleObjects.java
new file mode 100644
index 0000000..35c4a43
--- /dev/null
+++ b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/CreateSimpleObjects.java
@@ -0,0 +1,81 @@
+/*
+ *  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.
+ */
+
+package domainapp.modules.simple.fixture.scenario;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import javax.annotation.Nullable;
+
+import com.google.common.collect.Lists;
+
+import org.apache.isis.applib.fixturescripts.FixtureScript;
+
+import domainapp.modules.simple.dom.impl.SimpleObject;
+import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+@Accessors(chain = true)
+public class CreateSimpleObjects extends FixtureScript {
+
+    public final List<String> NAMES = Collections.unmodifiableList(Arrays.asList(
+            "Foo", "Bar", "Baz", "Frodo", "Froyo", "Fizz", "Bip", "Bop", "Bang", "Boo"));
+
+    /**
+     * The number of objects to create, up to 10; optional, defaults to 3.
+     */
+    @Nullable
+    @Getter @Setter
+    private Integer number;
+
+    /**
+     * The simpleobjects created by this fixture (output).
+     */
+    @Getter
+    private final List<SimpleObject> simpleObjects = Lists.newArrayList();
+
+    @Override
+    protected void execute(final ExecutionContext ec) {
+
+        // defaults
+        final int number = defaultParam("number", ec, 3);
+
+        // validate
+        if(number < 0 || number > NAMES.size()) {
+            throw new IllegalArgumentException(String.format("number must be in range [0,%d)", NAMES.size()));
+        }
+
+        // execute
+        for (int i = 0; i < number; i++) {
+            final String name = NAMES.get(i);
+
+            final SimpleObject simpleObject = wrap(simpleObjectMenu).create(name);
+            ec.addResult(this, simpleObject);
+            simpleObjects.add(simpleObject);
+        }
+    }
+
+    @javax.inject.Inject
+    SimpleObjectMenu simpleObjectMenu;
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/RecreateSimpleObjects.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/RecreateSimpleObjects.java b/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/RecreateSimpleObjects.java
deleted file mode 100644
index a91b29c..0000000
--- a/example/application/simpleapp/module-simple/src/main/java/domainapp/modules/simple/fixture/scenario/RecreateSimpleObjects.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- *  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.
- */
-
-package domainapp.modules.simple.fixture.scenario;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import com.google.common.collect.Lists;
-
-import org.apache.isis.applib.fixturescripts.FixtureScript;
-
-import domainapp.modules.simple.dom.impl.SimpleObject;
-import domainapp.modules.simple.fixture.data.SimpleObjectMenu_create;
-import domainapp.modules.simple.fixture.teardown.SimpleModuleTearDown;
-import lombok.Getter;
-import lombok.Setter;
-import lombok.experimental.Accessors;
-
-@Accessors(chain = true)
-public class RecreateSimpleObjects extends FixtureScript {
-
-    public final List<String> NAMES = Collections.unmodifiableList(Arrays.asList(
-            "Foo", "Bar", "Baz", "Frodo", "Froyo", "Fizz", "Bip", "Bop", "Bang", "Boo"));
-
-    /**
-     * The number of objects to create, up to 10; optional, defaults to 3.
-     */
-    @Getter @Setter
-    private Integer number;
-
-    /**
-     * The simpleobjects created by this fixture (output).
-     */
-    @Getter
-    private final List<SimpleObject> simpleObjects = Lists.newArrayList();
-
-    @Override
-    protected void execute(final ExecutionContext ec) {
-
-        // defaults
-        final int number = defaultParam("number", ec, 3);
-
-        // validate
-        if(number < 0 || number > NAMES.size()) {
-            throw new IllegalArgumentException(String.format("number must be in range [0,%d)", NAMES.size()));
-        }
-
-        // execute
-        ec.executeChild(this, new SimpleModuleTearDown());
-        for (int i = 0; i < number; i++) {
-            final String name = NAMES.get(i);
-            final SimpleObjectMenu_create fs = new SimpleObjectMenu_create().setName(name);
-            ec.executeChild(this, fs.getName(), fs);
-            simpleObjects.add(fs.getSimpleObject());
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObjectMenu_IntegTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObjectMenu_IntegTest.java b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObjectMenu_IntegTest.java
index e6a6700..88016a9 100644
--- a/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObjectMenu_IntegTest.java
+++ b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObjectMenu_IntegTest.java
@@ -32,12 +32,11 @@ import org.junit.Test;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
 import org.apache.isis.applib.fixturescripts.FixtureScripts;
-import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.services.xactn.TransactionService;
 
 import domainapp.modules.simple.dom.impl.SimpleObject;
 import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
-import domainapp.modules.simple.fixture.scenario.RecreateSimpleObjects;
+import domainapp.modules.simple.fixture.scenario.CreateSimpleObjects;
 import domainapp.modules.simple.fixture.teardown.SimpleModuleTearDown;
 import domainapp.modules.simple.integtests.SimpleModuleIntegTestAbstract;
 import static org.assertj.core.api.Assertions.assertThat;
@@ -50,8 +49,6 @@ public class SimpleObjectMenu_IntegTest extends SimpleModuleIntegTestAbstract {
     TransactionService transactionService;
     @Inject
     SimpleObjectMenu menu;
-    @Inject
-    RepositoryService repositoryService;
 
     public static class ListAll extends SimpleObjectMenu_IntegTest {
 
@@ -59,7 +56,8 @@ public class SimpleObjectMenu_IntegTest extends SimpleModuleIntegTestAbstract {
         public void happyCase() throws Exception {
 
             // given
-            RecreateSimpleObjects fs = new RecreateSimpleObjects();
+            fixtureScripts.runFixtureScript(new SimpleModuleTearDown(), null);
+            CreateSimpleObjects fs = new CreateSimpleObjects();
             fixtureScripts.runFixtureScript(fs, null);
             transactionService.nextTransaction();
 

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObject_IntegTest.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObject_IntegTest.java b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObject_IntegTest.java
index f6ac63e..9ece316 100644
--- a/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObject_IntegTest.java
+++ b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/tests/SimpleObject_IntegTest.java
@@ -34,7 +34,8 @@ import org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleu
 import org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp;
 
 import domainapp.modules.simple.dom.impl.SimpleObject;
-import domainapp.modules.simple.fixture.scenario.RecreateSimpleObjects;
+import domainapp.modules.simple.fixture.scenario.CreateSimpleObjects;
+import domainapp.modules.simple.fixture.teardown.SimpleModuleTearDown;
 import domainapp.modules.simple.integtests.SimpleModuleIntegTestAbstract;
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -50,7 +51,8 @@ public class SimpleObject_IntegTest extends SimpleModuleIntegTestAbstract {
     @Before
     public void setUp() throws Exception {
         // given
-        RecreateSimpleObjects fs = new RecreateSimpleObjects().setNumber(1);
+        fixtureScripts.runFixtureScript(new SimpleModuleTearDown(), null);
+        CreateSimpleObjects fs = new CreateSimpleObjects().setNumber(1);
         fixtureScripts.runFixtureScript(fs, null);
         transactionService.nextTransaction();
 
@@ -87,7 +89,7 @@ public class SimpleObject_IntegTest extends SimpleModuleIntegTestAbstract {
         public void can_be_updated_directly() throws Exception {
 
             // when
-            wrap(mixin(SimpleObject.updateName.class, simpleObject)).exec("new name");
+            wrap(simpleObject).updateName("new name");
             transactionService.nextTransaction();
 
             // then
@@ -102,7 +104,7 @@ public class SimpleObject_IntegTest extends SimpleModuleIntegTestAbstract {
             expectedExceptions.expectMessage("Exclamation mark is not allowed");
 
             // when
-            wrap(mixin(SimpleObject.updateName.class, simpleObject)).exec("new name!");
+            wrap(simpleObject).updateName("new name!");
         }
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/specglue/SimpleObjectMenuGlue.java
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/specglue/SimpleObjectMenuGlue.java b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/specglue/SimpleObjectMenuGlue.java
new file mode 100644
index 0000000..c0b887e
--- /dev/null
+++ b/example/application/simpleapp/module-simple/src/test/java/domainapp/modules/simple/specglue/SimpleObjectMenuGlue.java
@@ -0,0 +1,53 @@
+/**
+ *  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.
+ */
+package domainapp.modules.simple.specglue;
+
+import java.util.List;
+import java.util.UUID;
+
+import org.apache.isis.core.specsupport.specs.CukeGlueAbstract;
+
+import cucumber.api.java.en.Given;
+import cucumber.api.java.en.When;
+import domainapp.modules.simple.dom.impl.SimpleObject;
+import domainapp.modules.simple.dom.impl.SimpleObjectMenu;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertThat;
+
+public class SimpleObjectMenuGlue extends CukeGlueAbstract {
+
+    @Given("^there are.* (\\d+) simple objects$")
+    public void there_are_N_simple_objects(int n) throws Throwable {
+        try {
+            final List<SimpleObject> list = simpleObjectMenu().listAll();
+            assertThat(list.size(), is(n));
+            putVar("java.util.List", "simpleObjects", list);
+        } finally {
+            assertMocksSatisfied();
+        }
+    }
+    
+    @When("^.*create a .*simple object$")
+    public void create_a_simple_object() throws Throwable {
+        simpleObjectMenu().create(UUID.randomUUID().toString());
+    }
+
+    private SimpleObjectMenu simpleObjectMenu() {
+        return service(SimpleObjectMenu.class);
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/pom.xml b/example/application/simpleapp/pom.xml
index 464ffdf..e20afcc 100644
--- a/example/application/simpleapp/pom.xml
+++ b/example/application/simpleapp/pom.xml
@@ -342,6 +342,12 @@
             </dependency>
             <dependency>
                 <groupId>${project.groupId}</groupId>
+                <artifactId>simpleapp-module-simple</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>${project.groupId}</groupId>
                 <artifactId>simpleapp-application</artifactId>
                 <version>${project.version}</version>
             </dependency>

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-en.po
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-en.po b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-en.po
index c927400..5d9f038 100644
--- a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-en.po
+++ b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-en.po
@@ -488,7 +488,7 @@ msgstr "Remember Me"
 
 #: org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage
 msgid "resetButtonLabel"
-msgstr "RecreateSimpleObjects"
+msgstr "CreateSimpleObjects"
 
 
 #: org.wicketstuff.select2.Select2Choice

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-es.po
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-es.po b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-es.po
index 2730e34..5c0f06b 100644
--- a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-es.po
+++ b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-es.po
@@ -487,7 +487,7 @@ msgstr "Remember Me"
 
 #: org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage
 msgid "resetButtonLabel"
-msgstr "RecreateSimpleObjects"
+msgstr "CreateSimpleObjects"
 
 
 #: org.wicketstuff.select2.Select2Choice

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-nl.po
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-nl.po b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-nl.po
index 6efa8de..f7c3e89 100644
--- a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-nl.po
+++ b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations-nl.po
@@ -488,7 +488,7 @@ msgstr "Remember Me"
 
 #: org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage
 msgid "resetButtonLabel"
-msgstr "RecreateSimpleObjects"
+msgstr "CreateSimpleObjects"
 
 
 #: org.wicketstuff.select2.Select2Choice

http://git-wip-us.apache.org/repos/asf/isis/blob/1e81a3a0/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po
----------------------------------------------------------------------
diff --git a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po
index d071cdf..52dcfb3 100644
--- a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po
+++ b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po
@@ -487,7 +487,7 @@ msgstr "Remember Me"
 
 #: org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage
 msgid "resetButtonLabel"
-msgstr "RecreateSimpleObjects"
+msgstr "CreateSimpleObjects"
 
 
 #: org.wicketstuff.select2.Select2Choice