ISIS-903: integ tests passing again;

exposing the mode of the TranslationService so that can ensure that the 
translations are eagerly requested in prototype/test mode (and while the 
metamodel is being built), but lazily otherwise.


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

Branch: refs/heads/master
Commit: ac66f1e9590750f2b795887cfbe62cc949936565
Parents: 6ab0959
Author: Dan Haywood <[email protected]>
Authored: Tue Feb 17 16:28:54 2015 +0000
Committer: Dan Haywood <[email protected]>
Committed: Wed Feb 18 14:07:45 2015 +0000

----------------------------------------------------------------------
 .../actinvoc/ActionInvocationContext.java       |   4 +-
 .../services/i18n/TranslationService.java       |  33 +++++
 .../all/i18n/DescribedAsFacetTranslated.java    |  15 ++-
 .../facets/all/i18n/NamedFacetTranslated.java   |  12 +-
 .../metamodel/services/i18n/po/PoAbstract.java  |  11 +-
 .../metamodel/services/i18n/po/PoReader.java    |  17 ++-
 .../metamodel/services/i18n/po/PoWriter.java    |  33 ++---
 .../services/i18n/po/TranslationServicePo.java  |  32 +++--
 .../simple/SimpleObjectsFixturesService.java    |  12 +-
 .../src/main/webapp/WEB-INF/isis.properties     |  15 +++
 .../src/main/webapp/WEB-INF/translations.po     | 135 +++++++++++++++++++
 11 files changed, 274 insertions(+), 45 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/applib/src/main/java/org/apache/isis/applib/services/actinvoc/ActionInvocationContext.java
----------------------------------------------------------------------
diff --git 
a/core/applib/src/main/java/org/apache/isis/applib/services/actinvoc/ActionInvocationContext.java
 
b/core/applib/src/main/java/org/apache/isis/applib/services/actinvoc/ActionInvocationContext.java
index 1dbed9a..4c6b7ee 100644
--- 
a/core/applib/src/main/java/org/apache/isis/applib/services/actinvoc/ActionInvocationContext.java
+++ 
b/core/applib/src/main/java/org/apache/isis/applib/services/actinvoc/ActionInvocationContext.java
@@ -44,7 +44,7 @@ public class ActionInvocationContext {
      * Intended only to support unit testing.
      */
     public static ActionInvocationContext onObject(final Object domainObject) {
-        return new ActionInvocationContext(InvokedOn.OBJECT, 
Collections.singletonList(domainObject)){};
+        return new ActionInvocationContext(InvokedOn.OBJECT, 
Collections.singletonList(domainObject));
     }
 
     /**
@@ -58,7 +58,7 @@ public class ActionInvocationContext {
      * Intended only to support unit testing.
      */
     public static ActionInvocationContext onCollection(final List<Object> 
domainObjects) {
-        return new ActionInvocationContext(InvokedOn.COLLECTION, 
domainObjects){};
+        return new ActionInvocationContext(InvokedOn.COLLECTION, 
domainObjects);
     }
 
     // //////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationService.java
----------------------------------------------------------------------
diff --git 
a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationService.java
 
b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationService.java
index ca20004..e143ef0 100644
--- 
a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationService.java
+++ 
b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationService.java
@@ -47,4 +47,37 @@ public interface TranslationService {
     @Programmatic
     public String translate(final String context, final String singularText, 
final String pluralText, int num, final Locale targetLocale);
 
+
+    public enum Mode {
+        READ,
+        WRITE;
+
+        public boolean isRead() {
+            return this == READ;
+        }
+        public boolean isWrite() {
+            return this == WRITE;
+        }
+    }
+
+    /**
+     * Whether this implementation is operating in read or in write mode.
+     *
+     * <p>
+     *     If in read mode, then the translations are expected to be present.  
In such cases, the
+     *     {@link #translate(String, String, java.util.Locale) translate}
+     *     {@link #translate(String, String, String, int, java.util.Locale) 
method}s should be <i>lazily</i> called,
+     *     if only because there will (most likely) need to be a session in 
progress (such that the locale of the
+     *     current user can be determined).
+     * </p>
+     *
+     * <p>
+     *     If in write mode, then the implementation is saving translation 
keys, and will
+     *     always return the untranslated translation.  In such cases, the 
{@link #translate(String, String, java.util.Locale) translate} 
+     *     {@link #translate(String, String, String, int, java.util.Locale) 
method}s should be <i>eagerly</i> called
+     *     such that all pathways are exercised..
+     * </p>
+     */
+    @Programmatic
+    Mode getMode();
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/DescribedAsFacetTranslated.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/DescribedAsFacetTranslated.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/DescribedAsFacetTranslated.java
index 4e67f26..9dbc5cc 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/DescribedAsFacetTranslated.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/DescribedAsFacetTranslated.java
@@ -19,7 +19,6 @@
 
 package org.apache.isis.core.metamodel.facets.all.i18n;
 
-import java.util.Locale;
 import org.apache.isis.applib.services.i18n.LocaleProvider;
 import org.apache.isis.applib.services.i18n.TranslationService;
 import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
@@ -33,6 +32,8 @@ public class DescribedAsFacetTranslated extends FacetAbstract 
implements Describ
     private final TranslationService translationService;
     private final LocaleProvider localeProvider;
 
+    private String value;
+
     public DescribedAsFacetTranslated(
             final String context, final String originalText,
             final TranslationService translationService, final LocaleProvider 
localeProvider,
@@ -42,11 +43,19 @@ public class DescribedAsFacetTranslated extends 
FacetAbstract implements Describ
         this.originalText = originalText;
         this.translationService = translationService;
         this.localeProvider = localeProvider;
+
+
+        if(translationService.getMode().isWrite()) {
+            // force evaluation
+            value();
+        }
     }
 
     @Override
     public String value() {
-        final Locale locale = localeProvider.getLocale();
-        return translationService.translate(context, originalText, locale);
+        if (value == null) {
+            value = translationService.translate(context, originalText, 
localeProvider.getLocale());
+        }
+        return value;
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/NamedFacetTranslated.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/NamedFacetTranslated.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/NamedFacetTranslated.java
index 6e7fb31..03caada 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/NamedFacetTranslated.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/all/i18n/NamedFacetTranslated.java
@@ -32,6 +32,8 @@ public class NamedFacetTranslated extends FacetAbstract 
implements NamedFacet {
     String context;
     String originalText;
 
+    private String value;
+
     public NamedFacetTranslated(
             final String context, final String originalText,
             final TranslationService translationService, final LocaleProvider 
localeProvider,
@@ -41,11 +43,19 @@ public class NamedFacetTranslated extends FacetAbstract 
implements NamedFacet {
         this.originalText = originalText;
         this.translationService = translationService;
         this.localeProvider = localeProvider;
+
+        if(translationService.getMode().isWrite()) {
+            // force evaluation
+            value();
+        }
     }
 
     @Override
     public String value() {
-        return translationService.translate(context, originalText, 
localeProvider.getLocale());
+        if (value == null) {
+            value = translationService.translate(context, originalText, 
localeProvider.getLocale());
+        }
+        return value;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoAbstract.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoAbstract.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoAbstract.java
index e3ddba9..cfe3cd3 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoAbstract.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoAbstract.java
@@ -19,23 +19,26 @@
 package org.apache.isis.core.metamodel.services.i18n.po;
 
 import java.util.Locale;
-import java.util.Map;
+import org.apache.isis.applib.services.i18n.TranslationService;
 
 abstract class PoAbstract {
 
     protected final TranslationServicePo translationServicePo;
+    private final TranslationService.Mode mode;
 
-    PoAbstract(final TranslationServicePo translationServicePo) {
+    PoAbstract(final TranslationServicePo translationServicePo, final 
TranslationService.Mode mode) {
         this.translationServicePo = translationServicePo;
+        this.mode = mode;
     }
 
 
-    abstract void init(final Map<String,String> config);
-
     abstract void shutdown();
 
     abstract String translate(final String context, final String msgId, final 
Locale targetLocale);
 
     abstract String translate(final String context, final String msgId, final 
String msgIdPlural, int num, final Locale targetLocale);
 
+    public TranslationService.Mode getMode() {
+        return mode;
+    }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
index 237ae4c..ade935a 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
@@ -27,6 +27,7 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.apache.isis.applib.services.i18n.TranslationService;
 import org.apache.isis.applib.services.i18n.UrlResolver;
 
 class PoReader extends PoAbstract {
@@ -50,7 +51,7 @@ class PoReader extends PoAbstract {
     private List<String> fallback;
 
     public PoReader(final TranslationServicePo translationServicePo) {
-        super(translationServicePo);
+        super(translationServicePo, TranslationService.Mode.READ);
     }
 
     //region > init, shutdown
@@ -62,6 +63,7 @@ class PoReader extends PoAbstract {
         }
     }
 
+    @Override
     void shutdown() {
     }
     //endregion
@@ -93,14 +95,14 @@ class PoReader extends PoAbstract {
         final Map<ContextAndMsgId, String> translationsByKey = 
readAndCacheTranslationsIfRequired(targetLocale);
 
         final ContextAndMsgId key = new ContextAndMsgId(context, msgId, type);
-        final String translation = translationsByKey.get(key);
-        if (translation != null) {
+        final String translation = lookupTranslation(translationsByKey, key);
+        if (!Strings.isNullOrEmpty(translation)) {
             return translation;
         }
 
         final ContextAndMsgId keyNoContext = new ContextAndMsgId("", msgId, 
type);
-        final String translationNoContext = 
translationsByKey.get(keyNoContext);
-        if (translationNoContext != null) {
+        final String translationNoContext = 
lookupTranslation(translationsByKey, keyNoContext);
+        if (!Strings.isNullOrEmpty(translationNoContext)) {
             return translationNoContext;
         }
 
@@ -108,6 +110,11 @@ class PoReader extends PoAbstract {
         return msgId;
     }
 
+    private String lookupTranslation(final Map<ContextAndMsgId, String> 
translationsByKey, final ContextAndMsgId key) {
+        final String s = translationsByKey.get(key);
+        return s != null? s.trim(): null;
+    }
+
     private Map<ContextAndMsgId, String> 
readAndCacheTranslationsIfRequired(final Locale locale) {
         Map<ContextAndMsgId, String> translationsByKey = 
translationByKeyByLocale.get(locale);
         if(translationsByKey != null) {

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoWriter.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoWriter.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoWriter.java
index 6c023cf..86574bf 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoWriter.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoWriter.java
@@ -19,7 +19,6 @@
 package org.apache.isis.core.metamodel.services.i18n.po;
 
 import java.util.Locale;
-import java.util.Map;
 import java.util.SortedMap;
 import java.util.SortedSet;
 import com.google.common.collect.Maps;
@@ -27,6 +26,7 @@ import com.google.common.collect.Sets;
 import org.joda.time.LocalDateTime;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.apache.isis.applib.services.i18n.TranslationService;
 
 class PoWriter extends PoAbstract {
 
@@ -45,13 +45,12 @@ class PoWriter extends PoAbstract {
     private final SortedMap<String, Block> blocksByMsgId = Maps.newTreeMap();
 
     public PoWriter(final TranslationServicePo translationServicePo) {
-        super(translationServicePo);
+        super(translationServicePo, TranslationService.Mode.WRITE);
     }
 
-    //region > init, shutdown
-    void init(final Map<String,String> config) {
-    }
+    //region > shutdown
 
+    @Override
     void shutdown() {
         final StringBuilder buf = new StringBuilder();
         buf.append("\n");
@@ -90,10 +89,8 @@ class PoWriter extends PoAbstract {
 
 
     public String translate(final String context, final String msgId, final 
Locale targetLocale) {
-        Block block = blocksByMsgId.get(msgId);
-        if(block == null) {
-            block = new Block(msgId);
-        }
+
+        final Block block = blockFor(msgId);
         block.contexts.add(context);
 
         return msgId;
@@ -102,14 +99,20 @@ class PoWriter extends PoAbstract {
     @Override
     String translate(final String context, final String msgId, final String 
msgIdPlural, final int num, final Locale targetLocale) {
 
+        final Block block = blockFor(msgId);
+        block.contexts.add(context);
+        block.msgIdPlural = msgIdPlural;
+
+        return null;
+    }
+
+    private Block blockFor(final String msgId) {
         Block block = blocksByMsgId.get(msgId);
         if(block == null) {
             block = new Block(msgId);
+            blocksByMsgId.put(msgId, block);
         }
-        block.msgIdPlural = msgIdPlural;
-        block.contexts.add(context);
-
-        return null;
+        return block;
     }
 
     /**
@@ -117,9 +120,9 @@ class PoWriter extends PoAbstract {
      */
     String toPot() {
         final StringBuilder buf = new StringBuilder();
-        for (String msgId : blocksByMsgId.keySet()) {
+        for (final String msgId : blocksByMsgId.keySet()) {
             final Block block = blocksByMsgId.get(msgId);
-            for (String context : block.contexts) {
+            for (final String context : block.contexts) {
                 buf.append("#: ").append(context).append("\n");
             }
             buf.append("msgid \"").append(msgId).append("\"\n");

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
----------------------------------------------------------------------
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
index e390f6d..afb6bb7 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
@@ -36,12 +36,19 @@ public class TranslationServicePo implements 
TranslationService {
 
     public static Logger LOG = 
LoggerFactory.getLogger(TranslationServicePo.class);
 
+    public static final String KEY_DEPLOYMENT_TYPE = "isis.deploymentType";
+    public static final String KEY_PO_MODE = 
"isis.services.translation.po.mode";
+
     private boolean prototype;
 
     private PoAbstract po;
 
+    /**
+     * Defaults to writer mode because the service isn't available while the 
metamodel is bring instantiated,
+     * however we want to force the translations to be cached in case required 
later.
+     */
     public TranslationServicePo() {
-        po = new PoReader(this);
+        po = new PoWriter(this);
     }
 
     //region > init, shutdown
@@ -50,20 +57,22 @@ public class TranslationServicePo implements 
TranslationService {
     @PostConstruct
     public void init(final Map<String,String> config) {
 
-        final String deploymentType = config.get("isis.deploymentType");
+        final String deploymentType = config.get(KEY_DEPLOYMENT_TYPE);
         prototype = deploymentType==null ||
                     deploymentType.toLowerCase().contains("prototype") ||
                     deploymentType.toLowerCase().contains("test") ;
 
-        String translationMode = 
config.get("isis.services.translation.po.mode");
+        String translationMode = config.get(KEY_PO_MODE);
         final boolean forceRead =
-                "read".equalsIgnoreCase(translationMode) ||
-                "reader".equalsIgnoreCase(translationMode);
-
-        if (prototype && !forceRead) {
-            po = new PoWriter(this);
+                translationMode != null &&
+                        ("read".equalsIgnoreCase(translationMode) ||
+                         "reader".equalsIgnoreCase(translationMode));
+
+        if (!prototype || forceRead) {
+            final PoReader poReader = new PoReader(this);
+            poReader.init(config);
+            po = poReader;
         }
-        po.init(config);
     }
 
     @Programmatic
@@ -89,6 +98,11 @@ public class TranslationServicePo implements 
TranslationService {
         return po.translate(context, singularText, pluralText, num, 
targetLocale);
     }
 
+    @Override
+    public Mode getMode() {
+        return po.getMode();
+    }
+
     /**
      * Not API
      */

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/example/application/simpleapp/fixture/src/main/java/fixture/simple/SimpleObjectsFixturesService.java
----------------------------------------------------------------------
diff --git 
a/example/application/simpleapp/fixture/src/main/java/fixture/simple/SimpleObjectsFixturesService.java
 
b/example/application/simpleapp/fixture/src/main/java/fixture/simple/SimpleObjectsFixturesService.java
index cc926d2..242d934 100644
--- 
a/example/application/simpleapp/fixture/src/main/java/fixture/simple/SimpleObjectsFixturesService.java
+++ 
b/example/application/simpleapp/fixture/src/main/java/fixture/simple/SimpleObjectsFixturesService.java
@@ -22,10 +22,11 @@ import fixture.simple.scenario.SimpleObjectsFixture;
 
 import java.util.List;
 import org.apache.isis.applib.annotation.Action;
+import org.apache.isis.applib.annotation.ActionLayout;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.fixturescripts.FixtureResult;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
 import org.apache.isis.applib.fixturescripts.FixtureScripts;
@@ -51,10 +52,6 @@ public class SimpleObjectsFixturesService extends 
FixtureScripts {
         return findFixtureScriptFor(SimpleFixtureScript.class);
     }
 
-    /**
-     * Raising visibility to <tt>public</tt> so that choices are available for 
first param
-     * of {@link #runFixtureScript(FixtureScript, String)}.
-     */
     @Override
     public List<FixtureScript> choices0RunFixtureScript() {
         return super.choices0RunFixtureScript();
@@ -66,8 +63,11 @@ public class SimpleObjectsFixturesService extends 
FixtureScripts {
     @Action(
             restrictTo = RestrictTo.PROTOTYPING
     )
+    @ActionLayout(
+            cssClassFa="fa fa-refresh"
+    )
     @MemberOrder(sequence="20")
-    public Object installFixturesAndReturnFirst() {
+    public Object recreateObjectsAndReturnFirst() {
         final List<FixtureResult> run = 
findFixtureScriptFor(SimpleObjectsFixture.class).run(null);
         return run.get(0).getObject();
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/isis.properties
----------------------------------------------------------------------
diff --git 
a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/isis.properties 
b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/isis.properties
index 3cafcdd..3151bab 100644
--- 
a/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/isis.properties
+++ 
b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/isis.properties
@@ -265,6 +265,21 @@ isis.fixtures=fixture.simple.scenario.SimpleObjectsFixture
 
 
################################################################################
 #
+# i18n
+#
+#################################################################################
+
+#
+#force read translations, even if running in prototype mode
+#
+isis.services.translation.po.mode=read
+
+
+
+
+
+################################################################################
+#
 # Viewer defaults
 #
 
#################################################################################

http://git-wip-us.apache.org/repos/asf/isis/blob/ac66f1e9/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
new file mode 100644
index 0000000..1bf7919
--- /dev/null
+++ 
b/example/application/simpleapp/webapp/src/main/webapp/WEB-INF/translations.po
@@ -0,0 +1,135 @@
+##############################################################################
+#
+# .pot file
+#
+# generated at: 2015-02-17 16:21:01
+# generated by: TranslationServicePo
+#
+# 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
+#
+##############################################################################
+
+#: 
org.apache.isis.core.metamodel.services.i18n.TranslationServicePoMenu#downloadPotFile(java.lang.String)
+msgid ".pot file name"
+msgstr ""
+
+
+#: dom.simple.SimpleObjects#create()
+msgid "Create"
+msgstr ""
+
+
+#: 
org.apache.isis.core.metamodel.services.i18n.TranslationServicePoMenu#downloadPotFile()
+msgid "Download Pot File"
+msgstr ""
+
+
+#: org.apache.isis.applib.fixturescripts.FixtureResult#fixtureScriptClassName
+msgid "Fixture script"
+msgstr ""
+
+
+#: 
org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault#isViewModel()
+msgid "Is View Model"
+msgstr ""
+
+
+#: dom.simple.SimpleObjects#listAll()
+msgid "List All"
+msgstr ""
+
+
+#: fixture.simple.scenario.SimpleObjectsFixture#lookup()
+#: org.apache.isis.applib.fixturescripts.FixtureScript#lookup()
+#: 
org.apache.isis.applib.services.bookmark.BookmarkHolderActionContributions#lookup()
+msgid "Lookup"
+msgstr ""
+
+
+#: dom.simple.SimpleObjects#create(java.lang.String)
+msgid "Name"
+msgstr ""
+
+
+#: 
org.apache.isis.applib.services.bookmark.BookmarkHolderAssociationContributions#object()
+msgid "Object"
+msgstr ""
+
+
+#: 
fixture.simple.SimpleObjectsFixturesService#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: 
org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+msgid "Parameters"
+msgstr ""
+
+
+#: fixture.simple.SimpleObjectsFixturesService
+#: org.apache.isis.core.metamodel.services.i18n.TranslationServicePoMenu
+msgid "Prototyping"
+msgstr ""
+
+
+#: fixture.simple.SimpleObjectsFixturesService#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 ""
+
+
+#: fixture.simple.SimpleObjectsFixturesService#runFixtureScript()
+#: org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript()
+msgid "Run Fixture Script"
+msgstr ""
+
+
+#: fixture.simple.scenario.SimpleObjectsFixture
+#: org.apache.isis.applib.fixturescripts.FixtureScript
+msgid "Script"
+msgstr ""
+
+
+#: 
fixture.simple.SimpleObjectsFixturesService#runFixtureScript(org.apache.isis.applib.fixturescripts.FixtureScript,java.lang.String)
+#: 
org.apache.isis.applib.fixturescripts.FixtureScripts#runFixtureScript(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 ""
+
+
+#: org.apache.isis.core.metamodel.services.i18n.po.TranslationServicePo#toPo()
+msgid "To Po"
+msgstr ""
+
+
+#: fixture.simple.scenario.SimpleObjectsFixture#withDiscoverability()
+#: org.apache.isis.applib.fixturescripts.FixtureScript#withDiscoverability()
+msgid "With Discoverability"
+msgstr ""
+
+
+
+
+
+##############################################################################
+#
+# end of .pot file
+#
+##############################################################################
+
+

Reply via email to