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/09/21 08:50:21 UTC
[25/29] isis-site git commit: ISIS-1465: factors out a new user guide
for DN object store
http://git-wip-us.apache.org/repos/asf/isis-site/blob/18dc39e7/content/guides/rgant.html
----------------------------------------------------------------------
diff --git a/content/guides/rgant.html b/content/guides/rgant.html
index f79f893..ab25e93 100644
--- a/content/guides/rgant.html
+++ b/content/guides/rgant.html
@@ -530,6 +530,9 @@ annotations that are now deprecated, and indicates their replacement.</p>
<p><a href="ugvro.html">Restful Objects viewer</a></p>
</li>
<li>
+<p><a href="ugvro.html">DataNucleus object store</a></p>
+</li>
+<li>
<p><a href="ugsec.html">Security</a></p>
</li>
<li>
@@ -4769,7 +4772,7 @@ can be used instead, eg:</p>
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="java"><span class="directive">public</span> <span class="type">class</span> <span class="class">Customer</span> {
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
<span class="directive">public</span> <span class="predefined-type">String</span> getMiddleInitial() { ... }
<span class="directive">public</span> <span class="type">void</span> setMiddleInitial(<span class="predefined-type">String</span> middleInitial) { ... }</code></pre>
</div>
@@ -4798,7 +4801,7 @@ can be used instead, eg:</p>
<span class="annotation">@javax</span>.jdo.annotations.Column(length=<span class="integer">20</span>)
<span class="directive">public</span> <span class="predefined-type">String</span> getFirstName() { ... }
<span class="directive">public</span> <span class="type">void</span> setFirstName(<span class="predefined-type">String</span> firstName) { ... }
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>, length=<span class="integer">1</span>)
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>, length=<span class="integer">1</span>)
<span class="directive">public</span> <span class="predefined-type">String</span> getMiddleInitial() { ... }
<span class="directive">public</span> <span class="type">void</span> setMiddleInitial(<span class="predefined-type">String</span> middleInitial) { ... }
<span class="annotation">@javax</span>.jdo.annotations.Column(length=<span class="integer">30</span>)
@@ -9853,7 +9856,7 @@ Note that this does not prevent the user from uploading some other file type; ra
<p>specifies a property is optional rather than mandatory<br></p>
</div>
<div class="paragraph">
-<p>In many/most cases you should however use <a href="#_rgant-Column"><code>@Column#allowNulls()</code></a></p>
+<p>In many/most cases you should however use <a href="#_rgant-Column"><code>@Column#allowsNull()</code></a></p>
</div></div></td>
</tr>
<tr>
@@ -9885,7 +9888,7 @@ Note that this does not prevent the user from uploading some other file type; ra
<span class="keyword">return</span> EmailUtil.ensureValidEmail(proposed); <i class="conum" data-value="1"></i><b>(1)</b>
}
}
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>) <i class="conum" data-value="2"></i><b>(2)</b>
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>) <i class="conum" data-value="2"></i><b>(2)</b>
<span class="annotation">@Property</span>(
maxLength=<span class="integer">30</span>,
minLength=<span class="integer">5</span>,
@@ -10545,7 +10548,7 @@ tables. Annotating with <code>@Property(where=Where.NOWHERE)</code> overrides th
<p>That said, properties are most commonly defined on persistent domain objects (entities), in which case the JDO <a href="#_rgant-Column"><code>@Column</code></a> should be specified. Apache Isis can infer the maxLength directly from the equivalent @Column#length() annotation.</p>
</div>
<div class="paragraph">
-<p>That said, properties are most commonly defined on persistent domain objects (entities), in which case the JDO <a href="#_rgant-Column"><code>@Column</code></a> will in any case need to be specified. Apache Isis can infer the <code>optionality</code> semantic directly from the equivalent <code>@Column#allowNulls()</code> annotation/attribute.</p>
+<p>That said, properties are most commonly defined on persistent domain objects (entities), in which case the JDO <a href="#_rgant-Column"><code>@Column</code></a> will in any case need to be specified. Apache Isis can infer the <code>optionality</code> semantic directly from the equivalent <code>@Column#allowsNull()</code> annotation/attribute.</p>
</div>
<div class="paragraph">
<p>For example:</p>
@@ -10553,7 +10556,7 @@ tables. Annotating with <code>@Property(where=Where.NOWHERE)</code> overrides th
<div class="listingblock">
<div class="content">
<pre class="CodeRay highlight"><code data-lang="java"><span class="directive">public</span> <span class="type">class</span> <span class="class">Customer</span> {
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
<span class="directive">public</span> <span class="predefined-type">String</span> getMiddleInitial() { ... }
<span class="directive">public</span> <span class="type">void</span> setMiddleInitial(<span class="predefined-type">String</span> middleInitial) { ... }
...
@@ -10566,10 +10569,10 @@ tables. Annotating with <code>@Property(where=Where.NOWHERE)</code> overrides th
<div class="sect3">
<h4 id="_mismatched_defaults">29.8.1. Mismatched defaults</h4>
<div class="paragraph">
-<p>If the <code>@Column#allowNulls()</code> attribute is omitted and the `@Property#optionality() attribute is also omitted, then note that Isis' defaults and JDO’s defaults differ. Specifically, Isis always assumes properties are mandatory, whereas JDO specifies that primitives are mandatory, but all reference types are optional.</p>
+<p>If the <code>@Column#allowsNull()</code> attribute is omitted and the `@Property#optionality() attribute is also omitted, then note that Isis' defaults and JDO’s defaults differ. Specifically, Isis always assumes properties are mandatory, whereas JDO specifies that primitives are mandatory, but all reference types are optional.</p>
</div>
<div class="paragraph">
-<p>When Apache Isis initializes it checks for these mismatches during its metamodel validation phase, and will fail to boot ("fail-fast") if there is a mismatch. The fix is usually to add the <code>@Column#allowsNulls()</code> annotation/attribute.</p>
+<p>When Apache Isis initializes it checks for these mismatches during its metamodel validation phase, and will fail to boot ("fail-fast") if there is a mismatch. The fix is usually to add the <code>@Column#allowsNull()</code> annotation/attribute.</p>
</div>
</div>
<div class="sect3">
@@ -10591,7 +10594,7 @@ tables. Annotating with <code>@Property(where=Where.NOWHERE)</code> overrides th
<span class="annotation">@javax</span>.jdo.annotations.Inheritance(strategy = InheritanceStrategy.SUPERCLASS_TABLE)
<span class="directive">public</span> <span class="type">class</span> <span class="class">CreditCardPaymentMethod</span> <span class="directive">extends</span> PaymentMethod {
<span class="directive">private</span> <span class="predefined-type">String</span> cardNumber;
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
<span class="annotation">@Property</span>(optionality=Optionality.MANDATORY)
<span class="directive">public</span> <span class="predefined-type">String</span> getCardNumber() { <span class="keyword">return</span> <span class="local-variable">this</span>.cardNumber; }
<span class="directive">public</span> <span class="type">void</span> setCardNumber(<span class="predefined-type">String</span> cardNumber) { <span class="local-variable">this</span>.cardNumber = cardNumber; }
@@ -10607,7 +10610,7 @@ tables. Annotating with <code>@Property(where=Where.NOWHERE)</code> overrides th
<pre class="CodeRay highlight"><code data-lang="java"><span class="annotation">@javax</span>.jdo.annotations.PersistenceCapable
<span class="annotation">@javax</span>.jdo.annotations.Inheritance(strategy = InheritanceStrategy.SUPERCLASS_TABLE)
<span class="directive">public</span> <span class="type">class</span> <span class="class">CreditCardPaymentMethod</span> <span class="directive">extends</span> PaymentMethod {
- <span class="annotation">@javax</span>.jdo.annotations.Column(allowNulls=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
+ <span class="annotation">@javax</span>.jdo.annotations.Column(allowsNull=<span class="string"><span class="delimiter">"</span><span class="content">true</span><span class="delimiter">"</span></span>)
<span class="directive">private</span> <span class="predefined-type">String</span> cardNumber;
<span class="directive">public</span> <span class="predefined-type">String</span> getCardNumber() { <span class="keyword">return</span> <span class="local-variable">this</span>.cardNumber; }
<span class="directive">public</span> <span class="type">void</span> setCardNumber(<span class="predefined-type">String</span> cardNumber) { <span class="local-variable">this</span>.cardNumber = cardNumber; }