You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by bu...@apache.org on 2014/12/09 01:04:15 UTC
svn commit: r931910 - in /websites/staging/isis/trunk: cgi-bin/ content/
content/more-advanced-topics/metamodel-finetuning-the-programming-model.html
Author: buildbot
Date: Tue Dec 9 00:04:15 2014
New Revision: 931910
Log:
Staging update by buildbot for isis
Modified:
websites/staging/isis/trunk/cgi-bin/ (props changed)
websites/staging/isis/trunk/content/ (props changed)
websites/staging/isis/trunk/content/more-advanced-topics/metamodel-finetuning-the-programming-model.html
Propchange: websites/staging/isis/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Dec 9 00:04:15 2014
@@ -1 +1 @@
-1643320
+1643958
Propchange: websites/staging/isis/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Dec 9 00:04:15 2014
@@ -1 +1 @@
-1643320
+1643958
Modified: websites/staging/isis/trunk/content/more-advanced-topics/metamodel-finetuning-the-programming-model.html
==============================================================================
--- websites/staging/isis/trunk/content/more-advanced-topics/metamodel-finetuning-the-programming-model.html (original)
+++ websites/staging/isis/trunk/content/more-advanced-topics/metamodel-finetuning-the-programming-model.html Tue Dec 9 00:04:15 2014
@@ -454,10 +454,10 @@
<h3>Fine-tuning the existing programming model</h3>
-<p>Suppose that for some reason you wanted to disable support for the <code>@Aggregated</code> annotation. This would be done using:</p>
+<p>Suppose that you wanted to completely remove support for the (already deprecated) <code>@ActionOrder</code> annotation. This would be done using:</p>
<pre>
-isis.reflector.facets.exclude=org.apache.isis.core.progmodel.facets.object.aggregated.annotation.AggregatedAnnotationFacetFactory
+isis.reflector.facets.exclude=org.apache.isis.core.metamodel.facets.object.actionorder.annotation.ActionOrderFacetAnnotationFactory
</pre>
<p>Or, suppose you wanted to use the example <a href="https://github.com/apache/isis/blob/master/mothballed/misc/metamodel/namefile/src/main/java/org/apache/isis/example/metamodel/namefile/facets/NameFileFacetFactory.java">"namefile"</a> <code>FacetFactory</code> as part of your programming conventions, use:</p>
@@ -472,7 +472,19 @@ isis.reflector.facets.include=org.apache
<p>This <a href="http://isis.markmail.org/thread/472c3mrvcgnripst">thread</a> from the users mailing list (in Apr 2014) shows a typical customization (to enable per-instance security).</p>
-<h3>Specifying a new programming model</h3>
+<h2>Specifying a different LayoutMetadataReader</h2>
+
+<p>While all facets can be specified using annotations, the facets that provide hints for the user interface can also be specified from a corresponding <code>.layout.json</code> file, described in more detail <a href="../components/viewers/wicket/dynamic-layouts.html">here</a>. It is the role of a <code>LayoutMetadataReader</code> to read/parse such a file and create the appropriate facets.</p>
+
+<p>In the case of the <code>.layout.json</code> file, the implementation used in <code>LayoutMetadataReaderFromJson</code>. This is also the default implementation. However, an alternative implementation can be specified using:</p>
+
+<pre>
+isis.reflector.layoutMetadataReaders=org.apache.isis.core.metamodel.layoutmetadata.json.LayoutMetadataReaderFromJson
+</pre>
+
+<p>As of 1.8.0-SNAPSHOT there is only one implementation provided, but we anticipate other implementations in future releases.</p>
+
+<h2>Specifying a new programming model</h2>
<p>To specify a completely new programming model, you'll first need an implementation of <code>ProgrammingModel</code>. One option is to subclass from <code>ProgammingModelFacetsJava5</code>; in your subclass you could remove any <code>FacetFactory</code>s that you wanted to exclude, as well as registering your own implementations.</p>