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 2016/03/18 13:22:00 UTC

[2/4] isis git commit: ISIS-1287: recreating simpleapp archetype

ISIS-1287: 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/f7d6f4ba
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/f7d6f4ba
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/f7d6f4ba

Branch: refs/heads/master
Commit: f7d6f4baeaa720e3298c53d0b5e60de18a4914b1
Parents: c32ab6b
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Fri Mar 18 06:23:30 2016 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Fri Mar 18 06:23:30 2016 +0000

----------------------------------------------------------------------
 example/archetype/simpleapp/pom.xml             |   4 +-
 .../META-INF/maven/archetype-metadata.xml       |   6 -
 .../archetype-resources/.gitattributes          |  51 ---
 .../resources/archetype-resources/.gitignore    |  42 --
 .../app/services/homepage/HomePageService.java  |   6 +-
 .../homepage/HomePageViewModel.layout.xml       |   5 -
 .../prototyping/HideMixinsForHomePage.java      |  56 +++
 .../java/domainapp/dom/simple/SimpleObject.java |   8 +-
 .../domainapp/dom/simple/SimpleObjects.java     |  14 +-
 .../domainapp/dom/simple/SimpleObjectsTest.java |  12 +-
 .../archetype-resources/integtests/.gitignore   |   1 -
 .../integtests/translations.pot                 | 442 +++++++++++++++++++
 .../webapp/ide/eclipse/launch/.gitignore        |   2 -
 .../ide/eclipse/launch/SimpleApp-JREBEL.launch  |  33 ++
 .../archetype-resources/webapp/lib/.gitignore   |   5 -
 .../src/main/webapp/WEB-INF/isis.properties     |   2 +-
 .../projects/basic/archetype.properties         |   2 +-
 17 files changed, 554 insertions(+), 137 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/pom.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/pom.xml b/example/archetype/simpleapp/pom.xml
index a0b38f1..29a16ca 100644
--- a/example/archetype/simpleapp/pom.xml
+++ b/example/archetype/simpleapp/pom.xml
@@ -29,14 +29,14 @@
             <extension>
                 <groupId>org.apache.maven.archetype</groupId>
                 <artifactId>archetype-packaging</artifactId>
-                <version>2.2</version>
+                <version>2.4</version>
             </extension>
         </extensions>
         <pluginManagement>
             <plugins>
                 <plugin>
                     <artifactId>maven-archetype-plugin</artifactId>
-                    <version>2.2</version>
+                    <version>2.4</version>
                 </plugin>
             </plugins>
         </pluginManagement>

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/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 847ea88..ef9a445 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
@@ -61,12 +61,6 @@
                     </includes>
                 </fileSet>
                 <fileSet filtered="true" encoding="UTF-8">
-                    <directory>src/main/resources</directory>
-                    <includes>
-                        <include>**/*.xml</include>
-                    </includes>
-                </fileSet>
-                <fileSet filtered="true" encoding="UTF-8">
                     <directory>src/test/java</directory>
                     <includes>
                         <include>**/*.java</include>

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitattributes
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitattributes b/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitattributes
deleted file mode 100644
index b1eafb6..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitattributes
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-#
-# text files are normalized (convert crlf => lf)
-# binary files are not normalized (binary is a macro for -text -diff)
-#
-#
-
-
-# Unless otherwise stated, assume text
-
-* text=auto
-
-
-*.java text diff=java
-*.html text diff=html
-*.xhtml text diff=html
-*.xml text
-*.txt text
-
-
-*.jar binary
-*.so binary
-*.dll binary
-
-# images
-*.jpg binary
-*.jpeg binary
-*.png binary
-*.pdn binary
-*.pdn binary
-
-
-*.cs     text diff=csharp
-
-*.sln    merge=union
-*.csproj merge=union
-*.vbproj merge=union
-*.fsproj merge=union
-*.dbproj merge=union
-
-*.doc	 diff=astextplain
-*.DOC	 diff=astextplain
-*.docx diff=astextplain
-*.DOCX diff=astextplain
-*.dot  diff=astextplain
-*.DOT  diff=astextplain
-*.pdf  diff=astextplain
-*.PDF	 diff=astextplain
-*.rtf	 diff=astextplain
-*.RTF	 diff=astextplain
-

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitignore
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitignore b/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitignore
deleted file mode 100644
index 0558e54..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/.gitignore
+++ /dev/null
@@ -1,42 +0,0 @@
-*~
-*.swp
-*.class
-bin/
-target/
-target-ide/
-logs/
-.settings/
-.project
-.classpath
-.idea
-*.iml
-
-JArchitectOut/
-*.jdproj
-
-neo4j_DB/
-
-# log files
-datanucleus.log
-isis.log
-i18n-po.log
-hs_err_pid*.log
-
-# Package Files #
-*.jar
-*.war
-*.ear
-
-dependency-reduced-pom.xml
-pom.xml.tag
-pom.xml.next
-pom.xml.releaseBackup
-pom.xml.versionsBackup
-
-.clover/
-*.jdproj
-JArchitectOut/
-
-
-rebel.xml
-/translations.pot

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageService.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageService.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageService.java
index ecc88e0..744ac0b 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageService.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageService.java
@@ -21,12 +21,12 @@
  */
 package domainapp.app.services.homepage;
 
-import org.apache.isis.applib.DomainObjectContainer;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.HomePage;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.SemanticsOf;
+import org.apache.isis.applib.services.registry.ServiceRegistry;
 
 @DomainService(
         nature = NatureOfService.VIEW_CONTRIBUTIONS_ONLY // trick to suppress the actions from the top-level menu
@@ -40,7 +40,7 @@ public class HomePageService {
     )
     @HomePage
     public HomePageViewModel homePage() {
-        return container.injectServicesInto(new HomePageViewModel());
+        return serviceRegistry.injectServicesInto(new HomePageViewModel());
     }
 
     //endregion
@@ -48,7 +48,7 @@ public class HomePageService {
     //region > injected services
 
     @javax.inject.Inject
-    DomainObjectContainer container;
+    ServiceRegistry serviceRegistry;
 
     //endregion
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageViewModel.layout.xml
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageViewModel.layout.xml b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageViewModel.layout.xml
index fdeb0b0..f351d5e 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageViewModel.layout.xml
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/homepage/HomePageViewModel.layout.xml
@@ -11,11 +11,6 @@
                     <domainObject/>
                 </bs3:col>
             </bs3:row>
-            <bs3:row>
-                <bs3:col span="12">
-                    <action id="downloadLayoutXml"/>
-                </bs3:col>
-            </bs3:row>
         </bs3:col>
         <bs3:col span="4" unreferencedCollections="true">
             <bs3:row>

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/prototyping/HideMixinsForHomePage.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/prototyping/HideMixinsForHomePage.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/prototyping/HideMixinsForHomePage.java
new file mode 100644
index 0000000..b5c0a7b
--- /dev/null
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/app/src/main/java/domainapp/app/services/prototyping/HideMixinsForHomePage.java
@@ -0,0 +1,56 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+/*
+ *  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.app.services.prototyping;
+
+import java.util.List;
+
+import com.google.common.eventbus.Subscribe;
+
+import org.apache.isis.applib.AbstractSubscriber;
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.NatureOfService;
+import org.apache.isis.applib.services.layout.Object_downloadLayoutXml;
+import org.apache.isis.applib.services.layout.Object_rebuildMetamodel;
+
+import domainapp.app.services.homepage.HomePageViewModel;
+
+@DomainService(
+        nature = NatureOfService.DOMAIN
+)
+public class HideMixinsForHomePage extends AbstractSubscriber{
+
+    @Subscribe
+    public void on(Object_rebuildMetamodel.ActionDomainEvent ev) {
+        final List<Object> arguments = ev.getArguments();
+        if(arguments.get(0) instanceof HomePageViewModel) {
+            ev.hide();
+        }
+    }
+
+    @Subscribe
+    public void on(Object_downloadLayoutXml.ActionDomainEvent ev) {
+        final List<Object> arguments = ev.getArguments();
+        if(arguments.get(0) instanceof HomePageViewModel) {
+            ev.hide();
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObject.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
index 6cfb7cd..417f5fa 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObject.java
@@ -24,15 +24,13 @@ package domainapp.dom.simple;
 import javax.jdo.annotations.IdentityType;
 import javax.jdo.annotations.VersionStrategy;
 
-import org.apache.isis.applib.DomainObjectContainer;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.DomainObject;
-import org.apache.isis.applib.annotation.Parameter;
-import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.services.eventbus.ActionDomainEvent;
 import org.apache.isis.applib.services.eventbus.PropertyDomainEvent;
 import org.apache.isis.applib.services.i18n.TranslatableString;
+import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.util.ObjectContracts;
 
 @javax.jdo.annotations.PersistenceCapable(
@@ -95,7 +93,7 @@ public class SimpleObject implements Comparable<SimpleObject> {
             semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE
     )
     public void delete() {
-        container.removeIfNotAlready(this);
+        repositoryService.remove(this);
     }
 
 
@@ -107,6 +105,6 @@ public class SimpleObject implements Comparable<SimpleObject> {
 
 
     @javax.inject.Inject
-    DomainObjectContainer container;
+    RepositoryService repositoryService;
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObjects.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObjects.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObjects.java
index ffc899f..5679f4d 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObjects.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/main/java/domainapp/dom/simple/SimpleObjects.java
@@ -23,7 +23,6 @@ package domainapp.dom.simple;
 
 import java.util.List;
 
-import org.apache.isis.applib.DomainObjectContainer;
 import org.apache.isis.applib.Identifier;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
@@ -37,6 +36,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.query.QueryDefault;
 import org.apache.isis.applib.services.eventbus.ActionDomainEvent;
 import org.apache.isis.applib.services.i18n.TranslatableString;
+import org.apache.isis.applib.services.repository.RepositoryService;
 
 @DomainService(
         nature = NatureOfService.VIEW,
@@ -62,7 +62,7 @@ public class SimpleObjects {
     )
     @MemberOrder(sequence = "1")
     public List<SimpleObject> listAll() {
-        return container.allInstances(SimpleObject.class);
+        return repositoryService.allInstances(SimpleObject.class);
     }
     //endregion
 
@@ -78,7 +78,7 @@ public class SimpleObjects {
             @ParameterLayout(named="Name")
             final String name
     ) {
-        return container.allMatches(
+        return repositoryService.allMatches(
                 new QueryDefault<>(
                         SimpleObject.class,
                         "findByName",
@@ -99,9 +99,9 @@ public class SimpleObjects {
     @MemberOrder(sequence = "3")
     public SimpleObject create(
             final @ParameterLayout(named="Name") String name) {
-        final SimpleObject obj = container.newTransientInstance(SimpleObject.class);
+        final SimpleObject obj = repositoryService.instantiate(SimpleObject.class);
         obj.setName(name);
-        container.persistIfNotAlready(obj);
+        repositoryService.persist(obj);
         return obj;
     }
 
@@ -109,8 +109,8 @@ public class SimpleObjects {
 
     //region > injected services
 
-    @javax.inject.Inject 
-    DomainObjectContainer container;
+    @javax.inject.Inject
+    RepositoryService repositoryService;
 
     //endregion
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/test/java/domainapp/dom/simple/SimpleObjectsTest.java
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/test/java/domainapp/dom/simple/SimpleObjectsTest.java b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/test/java/domainapp/dom/simple/SimpleObjectsTest.java
index 318a8c4..692029e 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/test/java/domainapp/dom/simple/SimpleObjectsTest.java
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/dom/src/test/java/domainapp/dom/simple/SimpleObjectsTest.java
@@ -30,7 +30,7 @@ import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 
-import org.apache.isis.applib.DomainObjectContainer;
+import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
 import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2.Mode;
 
@@ -42,14 +42,14 @@ public class SimpleObjectsTest {
     public JUnitRuleMockery2 context = JUnitRuleMockery2.createFor(Mode.INTERFACES_AND_CLASSES);
 
     @Mock
-    DomainObjectContainer mockContainer;
+    RepositoryService mockRepositoryService;
     
     SimpleObjects simpleObjects;
 
     @Before
     public void setUp() throws Exception {
         simpleObjects = new SimpleObjects();
-        simpleObjects.container = mockContainer;
+        simpleObjects.repositoryService = mockRepositoryService;
     }
 
     public static class Create extends SimpleObjectsTest {
@@ -63,11 +63,11 @@ public class SimpleObjectsTest {
             final Sequence seq = context.sequence("create");
             context.checking(new Expectations() {
                 {
-                    oneOf(mockContainer).newTransientInstance(SimpleObject.class);
+                    oneOf(mockRepositoryService).instantiate(SimpleObject.class);
                     inSequence(seq);
                     will(returnValue(simpleObject));
 
-                    oneOf(mockContainer).persistIfNotAlready(simpleObject);
+                    oneOf(mockRepositoryService).persist(simpleObject);
                     inSequence(seq);
                 }
             });
@@ -92,7 +92,7 @@ public class SimpleObjectsTest {
 
             context.checking(new Expectations() {
                 {
-                    oneOf(mockContainer).allInstances(SimpleObject.class);
+                    oneOf(mockRepositoryService).allInstances(SimpleObject.class);
                     will(returnValue(all));
                 }
             });

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/.gitignore
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/.gitignore b/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/.gitignore
deleted file mode 100644
index 88dfbbc..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/translations.pot

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/translations.pot
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/translations.pot b/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/translations.pot
new file mode 100644
index 0000000..7d3837d
--- /dev/null
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/integtests/translations.pot
@@ -0,0 +1,442 @@
+
+
+##############################################################################
+#
+# .pot file
+#
+# Translate this file to each required language and place in WEB-INF, eg:
+#
+#     /WEB-INF/translations-en_US.po
+#     /WEB-INF/translations-en.po
+#     /WEB-INF/translations-fr_FR.po
+#     /WEB-INF/translations-fr.po
+#     /WEB-INF/translations.po
+#
+# If the app uses TranslatableString (eg for internationalized validation
+# messages), or if the app calls the TranslationService directly, then ensure
+# that all text to be translated has been captured by running a full
+# integration test suite that exercises all relevant behaviour
+#
+##############################################################################
+
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: 2016-03-17 18:27:02+\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+
+#: org.apache.isis.applib.services.metamodel.MetaModelServicesMenu#downloadMetaModel(java.lang.String)
+msgid ".csv file name"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata#$$(java.lang.String)
+msgid ".jdo file name"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu#downloadTranslations(java.lang.String)
+msgid ".pot file name"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.appfeat.ApplicationMemberType#ACTION
+msgid "Action"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.system.IsisSystem
+msgid "Are you sure?"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.system.IsisSystem
+msgid "Cancel"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureType$2#CLASS
+msgid "Class"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu#resetTranslationCache()
+msgid "Clear translation cache"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.appfeat.ApplicationMemberType#COLLECTION
+msgid "Collection"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.LayoutService$Style#COMPLETE
+msgid "Complete"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.system.IsisSystem
+msgid "Confirm"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObjects#create()
+msgid "Create"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.LayoutService$Style#CURRENT
+msgid "Current"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#delete()
+msgid "Delete"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript#discoverable
+msgid "Discoverable"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixtures.FixtureType#DOMAIN_OBJECTS
+msgid "Domain Objects"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#downloadJdoMetadata()
+msgid "Download Jdo Metadata"
+msgstr ""
+
+
+#: domainapp.app.services.homepage.HomePageViewModel#downloadLayoutXml()
+#: domainapp.dom.simple.SimpleObject#downloadLayoutXml()
+#: org.apache.isis.applib.fixturescripts.FixtureResult#downloadLayoutXml()
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeature#downloadLayoutXml()
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureId#downloadLayoutXml()
+msgid "Download Layout Xml"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.LayoutServiceMenu#downloadLayouts()
+msgid "Download Layouts (XML)"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.metamodel.MetaModelServicesMenu#downloadMetaModel()
+msgid "Download Meta Model (CSV)"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerServiceMenu#downloadSwaggerSpec()
+msgid "Download Swagger Spec"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu#downloadTranslations()
+msgid "Download Translations"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#name
+msgid "Exclamation mark is not allowed"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.dto.Dto_downloadXml#$$(java.lang.String)
+#: org.apache.isis.applib.services.dto.Dto_downloadXsd#$$(java.lang.String,org.apache.isis.applib.services.jaxb.JaxbService$IsisSchemas)
+#: org.apache.isis.applib.services.layout.Object_downloadLayoutXml#$$(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)
+msgid "File name"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerServiceMenu#downloadSwaggerSpec(java.lang.String,org.apache.isis.applib.services.swagger.SwaggerService$Visibility,org.apache.isis.applib.services.swagger.SwaggerService$Format)
+msgid "Filename"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObjects#findByName()
+msgid "Find By Name"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureResult#fixtureScriptClassName
+msgid "Fixture script"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript#friendlyName
+msgid "Friendly Name"
+msgstr ""
+
+
+#: domainapp.app.services.homepage.HomePageService#homePage()
+msgid "Home Page"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#datanucleusIdLong()
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong#$$()
+msgid "Id"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#IDEMPOTENT
+msgid "Idempotent"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#IDEMPOTENT_ARE_YOU_SURE
+msgid "Idempotent Are You Sure"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.jaxb.JaxbService$IsisSchemas#IGNORE
+msgid "Ignore"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.jaxb.JaxbService$IsisSchemas#INCLUDE
+msgid "Include"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerService$Format#JSON
+msgid "Json"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObjects#listAll()
+msgid "List All"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript#localName
+msgid "Local Name"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript#lookup()
+#: org.apache.isis.applib.services.bookmark.BookmarkHolderActionContributions#lookup()
+msgid "Lookup"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureType$3#MEMBER
+msgid "Member"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.Object_downloadLayoutXml
+#: org.apache.isis.applib.services.layout.Object_rebuildMetamodel
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata
+msgid "Metadata"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.LayoutService$Style#MINIMAL
+msgid "Minimal"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#name
+#: domainapp.dom.simple.SimpleObjects#create(java.lang.String)
+#: domainapp.dom.simple.SimpleObjects#findByName(java.lang.String)
+msgid "Name"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureFactory#newApplicationFeature()
+msgid "New Application Feature"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#NON_IDEMPOTENT
+msgid "Non Idempotent"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#NON_IDEMPOTENT_ARE_YOU_SURE
+msgid "Non Idempotent Are You Sure"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.layout.LayoutService$Style#NORMALIZED
+msgid "Normalized"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.bookmark.BookmarkHolderAssociationContributions#object()
+msgid "Object"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#title()
+msgid "Object: {name}"
+msgstr ""
+
+
+#: domainapp.app.services.homepage.HomePageViewModel#objects
+msgid "Objects"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixtures.FixtureType#OTHER
+msgid "Other"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureType$1#PACKAGE
+msgid "Package"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScriptWithAutoComplete(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+msgid "Parameters"
+msgstr ""
+
+
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureId#parentClassId
+msgid "Parent Class Id"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerService$Visibility#PRIVATE
+msgid "Private"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerService$Visibility#PRIVATE_WITH_PROTOTYPING
+msgid "Private With Prototyping"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.appfeat.ApplicationMemberType#PROPERTY
+msgid "Property"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault
+#: org.apache.isis.applib.services.layout.LayoutServiceMenu
+#: org.apache.isis.applib.services.metamodel.MetaModelServicesMenu
+#: org.apache.isis.applib.services.swagger.SwaggerServiceMenu
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu
+msgid "Prototyping"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerService$Visibility#PUBLIC
+msgid "Public"
+msgstr ""
+
+
+#: domainapp.app.services.homepage.HomePageViewModel#rebuildMetamodel()
+#: domainapp.dom.simple.SimpleObject#rebuildMetamodel()
+#: org.apache.isis.applib.fixturescripts.FixtureResult#rebuildMetamodel()
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeature#rebuildMetamodel()
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureId#rebuildMetamodel()
+msgid "Rebuild Metamodel"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#recreateObjectsAndReturnFirst()
+msgid "Recreate Objects And Return First"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureResult#object
+msgid "Result"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureResult#className
+msgid "Result class"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureResult#key
+msgid "Result key"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript()
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScript()
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScriptWithAutoComplete()
+msgid "Run Fixture Script"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#SAFE
+msgid "Safe"
+msgstr ""
+
+
+#: org.apache.isis.applib.annotation.SemanticsOf#SAFE_AND_REQUEST_CACHEABLE
+msgid "Safe And Request Cacheable"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript
+msgid "Script"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault#runFixtureScriptWithAutoComplete(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+msgid "Script-specific parameters (if any).  The format depends on the script implementation (eg key=value, CSV, JSON, XML etc)"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObjects#title()
+msgid "Simple Objects"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu#switchToReadingTranslations()
+msgid "Switch To Reading Translations"
+msgstr ""
+
+
+#: org.apache.isis.core.runtime.services.i18n.po.TranslationServicePoMenu#switchToWritingTranslations()
+msgid "Switch To Writing Translations"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureScript#type
+#: org.apache.isis.core.metamodel.services.appfeat.ApplicationFeatureId#type
+msgid "Type"
+msgstr ""
+
+
+#: domainapp.dom.simple.SimpleObject#datanucleusVersionLong()
+#: domainapp.dom.simple.SimpleObject#datanucleusVersionTimestamp()
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong#$$()
+#: org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp#$$()
+msgid "Version"
+msgstr ""
+
+
+#: org.apache.isis.applib.services.swagger.SwaggerService$Format#YAML
+msgid "Yaml"
+msgstr ""
+
+
+
+
+
+##############################################################################
+# end of .pot file
+##############################################################################
+

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/.gitignore
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/.gitignore b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/.gitignore
deleted file mode 100644
index 1d44fd4..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/SimpleApp-PROTOTYPE-jrebel.launch
-/SimpleApp-jrebel.launch

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/SimpleApp-JREBEL.launch
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/SimpleApp-JREBEL.launch b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/SimpleApp-JREBEL.launch
new file mode 100644
index 0000000..3b1d393
--- /dev/null
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/ide/eclipse/launch/SimpleApp-JREBEL.launch
@@ -0,0 +1,33 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?><launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
+  <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+    <listEntry value="/isis-core-webserver/src/main/java/org/apache/isis/WebServer.java"/>
+  </listAttribute>
+  <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+    <listEntry value="1"/>
+  </listAttribute>
+  <mapAttribute key="org.eclipse.debug.core.preferred_launchers">
+    <mapEntry value="org.eclipse.jdt.launching.localJavaApplication" key="[debug]"/>
+    <mapEntry value="org.eclipse.jdt.launching.localJavaApplication" key="[run]"/>
+  </mapAttribute>
+  <stringAttribute value="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector" key="org.eclipse.debug.core.source_locator_id"/>
+  <stringAttribute value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;sourceLookupDirector&gt;&#13;&#10;&lt;sourceContainers duplicates=&quot;false&quot;&gt;&#13;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;javaProject name=&amp;quot;isis-jrebel-plugin&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#13;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10;&lt;/sourceContainers&gt;&#13;&#10;&lt;/sourceLookupDirector&gt;&#13;&#10;" key="org.eclipse.debug.core.source_locator_meme
 nto"/>
+  <listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+    <listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+  </listAttribute>
+  <booleanAttribute value="true" key="org.eclipse.jdt.debug.ui.INCLUDE_EXTERNAL_JARS"/>
+  <listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
+    <listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry containerPath=&quot;org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6&quot; path=&quot;1&quot; type=&quot;4&quot;/&gt;&#13;&#10;"/>
+    <listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry path=&quot;3&quot; projectName=&quot;simple_wicket_restful_jdo-webapp&quot; type=&quot;1&quot;/&gt;&#13;&#10;"/>
+    <listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry containerPath=&quot;org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER&quot; path=&quot;3&quot; type=&quot;4&quot;/&gt;&#13;&#10;"/>
+  </listAttribute>
+  <stringAttribute value="org.eclipse.m2e.launchconfig.classpathProvider" key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER"/>
+  <booleanAttribute value="true" key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH"/>
+  <stringAttribute value="org.apache.isis.WebServer" key="org.eclipse.jdt.launching.MAIN_TYPE"/>
+  <stringAttribute value="--port 8080 --type PROTOTYPE" key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS"/>
+  <stringAttribute value="${rootArtifactId}-webapp" key="org.eclipse.jdt.launching.PROJECT_ATTR"/>
+  <stringAttribute value="org.eclipse.m2e.launchconfig.sourcepathProvider" key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER"/>
+  <stringAttribute value="${jrebel_args} -Drebel.log=false -Drebel.check_class_hash=true -Drebel.packages_exclude=org.apache.isis -Dproject.root=${project_loc}/.. -Dtarget.dir=target-ide -Drebel.plugins=C:/github/danhaywood/isis-jrebel-plugin/target/danhaywood-isis-jrebel-plugin-1.0.0-SNAPSHOT.jar -Disis-jrebel-plugin.packagePrefix=dom.simple,org.apache.isis.objectstore.jdo.applib -Disis-jrebel-plugin.loggingLevel=warn -XX:MaxPermSize=128m" key="org.eclipse.jdt.launching.VM_ARGUMENTS"/>
+</launchConfiguration>

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/lib/.gitignore
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/lib/.gitignore b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/lib/.gitignore
deleted file mode 100644
index 70eee7e..0000000
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/lib/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# explicitly ignoring Microsoft JDBC4 jar
-# (cannot redistribute, licensing)
-#
-sqljdbc4.jar

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/isis.properties
----------------------------------------------------------------------
diff --git a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/isis.properties b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/isis.properties
index bbb8c8c..08218e6 100644
--- a/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/isis.properties
+++ b/example/archetype/simpleapp/src/main/resources/archetype-resources/webapp/src/main/webapp/WEB-INF/isis.properties
@@ -114,7 +114,7 @@ ${symbol_pound}
 ${symbol_pound} patterns for applying CssClass facet (CSS styles), matching on member names
 ${symbol_pound}
 isis.reflector.facet.cssClass.patterns=${symbol_escape}
-                        delete.*:btn-warning
+                        delete.*:btn-danger
 
 
 ${symbol_pound}

http://git-wip-us.apache.org/repos/asf/isis/blob/f7d6f4ba/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 e83ae49..5ff0bc1 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 @@
-#Tue Mar 08 06:55:28 GMT 2016
+#Fri Mar 18 06:23:26 GMT 2016
 package=it.pkg
 version=0.1-SNAPSHOT
 groupId=archetype.it