http://git-wip-us.apache.org/repos/asf/isis-site/blob/6ad91949/content/guides/rgfis/rgfis.html
----------------------------------------------------------------------
diff --git a/content/guides/rgfis/rgfis.html b/content/guides/rgfis/rgfis.html
index 6d58ae9..309570d 100644
--- a/content/guides/rgfis/rgfis.html
+++ b/content/guides/rgfis/rgfis.html
@@ -467,15 +467,15 @@
</thead>
<tbody>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_ContentNegotiationService"><code>o.a.i.v.ro.</code><br>
<code>rendering.service.conneg.</code><br>
<code>ContentNegotiationService</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Encodes the algorithm that delegates to any registered <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>s.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>o.a.i.v.ro.</code><br>
<code>rendering.service.conneg.</code><br>
<code>ContentNegotiationService</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Encodes the algorithm that delegates to any registered <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>s.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>ContentNegotiationService-</code><br>
<code>XRoDomainType</code><br> <code>o.a.i.core</code><br>
<code>isis-core-viewer-restfulobjects-rendering</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_RepresentationService"><code>o.a.i.v.ro.</code><br>
<code>rendering.service.</code><br>
<code>RepresentationService</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Generates the representations, delegating to any registered
<a
href="#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>s.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_RepresentationService"><code>o.a.i.v.ro.</code><br>
<code>rendering.service.</code><br>
<code>RepresentationService</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Generates the representations, delegating to any registered
<a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>s.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>RepresentationService-</code><br>
<code>ForRestfulObjects</code><br> <code>o.a.i.core</code><br>
<code>isis-core-viewer-restfulobjects-rendering</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
@@ -497,7 +497,7 @@
<div class="sect2">
<h3 id="_rgfis_spi_ContentNegotiationService">2.1.
<code>ContentNegotiationService</code></h3>
<div class="paragraph">
- <p>The <code>ContentNegotiationService</code> is a plug-in point for
the <a href="ugvro.html">RestfulObjects viewer</a> so that it can generate
representations according to HTTP <code>Accept</code> header of the request.
This idea is discussed in section 34.1 of the <a
href="http://restfulobjects.org">Restful Objects spec</a> v1.0.</p>
+ <p>The <code>ContentNegotiationService</code> is a plug-in point for
the <a href="../ugvro/ugvro.html">RestfulObjects viewer</a> so that it can
generate representations according to HTTP <code>Accept</code> header of the
request. This idea is discussed in section 34.1 of the <a
href="http://restfulobjects.org">Restful Objects spec</a> v1.0.</p>
</div>
<div class="paragraph">
<p>The principal motivation is to allow more flexible representations
to be generated for REST clients that (perhaps through their use of a certain
Javascript library, say) expect, or at least works best with, a certain style
of representation.</p>
@@ -510,11 +510,11 @@
</div>
<div class="ulist">
<ul>
- <li> <p>first is to solve the problem at the domain layer by
defining a regular Apache Isis <a href="ugbtb.html#_ugbtb_view-models">view
model</a>. This is then surfaced over the RO viewer. <br></p>
+ <li> <p>first is to solve the problem at the domain layer by
defining a regular Apache Isis <a
href="../ugfun/ugfun.html#_ugfun_building-blocks_types-of-domain-objects_view-models">view
model</a>. This is then surfaced over the RO viewer. <br></p>
<div class="paragraph">
<p>If the underlying entities change, then care must be taken to
ensure that structure of the view model nevertheless is unchanged.</p>
</div> </li>
- <li> <p>a second option is to solve the problem at the persistence
layer, but defining a (SQL) view in the database and then <a
href="ugbtb.html#_ugbtb_other-techniques_mapping-rdbms-views">mapping this</a>
to a (read-only) entity. Again this is surfaced by the RO viewer. <br></p>
+ <li> <p>a second option is to solve the problem at the persistence
layer, but defining a (SQL) view in the database and then <a
href="../ugodn/ugodn.html#_ugodn_jdo-mappings_mapping-to-a-view">mapping
this</a> to a (read-only) entity. Again this is surfaced by the RO viewer.
<br></p>
<div class="paragraph">
<p>If the underlying tables change (as the result of a change in
their corresponding domain entities) then once more the view must be refactored
so that it still presents the same structure.</p>
</div> </li>
@@ -523,7 +523,7 @@
<p>The <code>ContentNegotiationService</code> is responsible for
inspecting the HTTP <code>Accept</code> header, and use this to select the
correct representation to render. <br></p>
</div>
<div class="paragraph">
- <p>The Apache Isis framework provides three implementations of
<code>ContentNegotiationService</code> which inspects different elements of the
HTTP <code>Accept</code> header. One of these implementations,
<code>ContentNegotiationServiceXRoDomainType</code> will further delegate down
to the companion <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
service (if configured/available), based on the value of the
"x-ro-domain-type" parameter of the header.<br></p>
+ <p>The Apache Isis framework provides three implementations of
<code>ContentNegotiationService</code> which inspects different elements of the
HTTP <code>Accept</code> header. One of these implementations,
<code>ContentNegotiationServiceXRoDomainType</code> will further delegate down
to the companion <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
service (if configured/available), based on the value of the
"x-ro-domain-type" parameter of the header.<br></p>
</div>
<div class="paragraph">
<p>A typical implementation of <code>ContentMappingService</code>
will convert the domain object into some sort of DTO (data transfer object) as
specified by the "x-ro-domaintype". If this DTO is annotated with JAXB or
Jackson mappings, then the RO viewer (courtesy of the underlying <a
href="http://resteasy.jboss.org/">RestEasy</a> framework) can serialize these
directly.<br></p>
@@ -651,7 +651,7 @@
</ul>
</div>
<div class="paragraph">
- <p>The value of the <code>x-ro-domain-type</code> parameter
corresponds to the DTO to be mapped into by the <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>.</p>
+ <p>The value of the <code>x-ro-domain-type</code> parameter
corresponds to the DTO to be mapped into by the <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>.</p>
</div>
<div class="paragraph">
<p>If the DTO is annotated with JAXB, then also note that the
runtime type must be annotated with the JAXB
<code>javax.xml.bind.annotation.XmlRootElement</code> so that RestEasy is able
to unambiguously serialize it.</p>
@@ -667,7 +667,7 @@
</div> </li>
<li>
<p><code>ContentNegotiationServiceOrgApacheIsisV1</code><br></p>
<div class="paragraph">
- <p>which returns <a
href="ugvro.html#_ugvro_simplified-representations">simplified
representations</a></p>
+ <p>which returns <a
href="../ugvro/ugvro.html#_ugvro_simplified-representations">simplified
representations</a></p>
</div> </li>
</ul>
</div>
@@ -724,7 +724,7 @@
<div class="sect3">
<h4 id="_configuration">2.1.4. Configuration</h4>
<div class="paragraph">
- <p>The default <code>ContentNegotiationServiceXRoDomainType</code>
implementation provides a <a
href="rgcfg.html#_rgcfg_configuring-core">configuration property</a> which
controls whether a mapped domain object is pretty-printed (formatted, indented)
or not:</p>
+ <p>The default <code>ContentNegotiationServiceXRoDomainType</code>
implementation provides a <a
href="../rgcfg/rgcfg.html#_rgcfg_configuring-core">configuration property</a>
which controls whether a mapped domain object is pretty-printed (formatted,
indented) or not:</p>
</div>
<div class="listingblock">
<div class="content">
@@ -732,41 +732,41 @@
</div>
</div>
<div class="paragraph">
- <p>If the property is not set, then the default depends on the <a
href="rgcfg.html#_rgcfg_deployment-types">deployment type</a>; production mode
will disable pretty printing, while prototyping mode will enable it.</p>
+ <p>If the property is not set, then the default depends on the <a
href="../rgcfg/rgcfg.html#_rgcfg_deployment-types">deployment type</a>;
production mode will disable pretty printing, while prototyping mode will
enable it.</p>
</div>
</div>
<div class="sect3">
<h4 id="_registering_the_services">2.1.5. Registering the
Services</h4>
<div class="paragraph">
- <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap the
app</a>) then Apache Isis' default implementations of
<code>ContentNegotiationService</code> service are automatically registered and
injected (it is annotated with <code>@DomainService</code>) so no further
configuration is required.</p>
+ <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="../rgcms/rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap
the app</a>) then Apache Isis' default implementations of
<code>ContentNegotiationService</code> service are automatically registered and
injected (it is annotated with <code>@DomainService</code>) so no further
configuration is required.</p>
</div>
<div class="paragraph">
- <p>To use an alternative implementation, use <a
href="rgant.html#_rgant-DomainServiceLayout_menuOrder"><code>@DomainServiceLayout#menuOrder()</code></a>
(as explained in the <a
href="rgsvc.html#__rgsvc_intro_overriding-the-services">introduction</a> to
this guide).</p>
+ <p>To use an alternative implementation, use <a
href="../rgant/rgant.html#_rgant-DomainServiceLayout_menuOrder"><code>@DomainServiceLayout#menuOrder()</code></a>
(as explained in the <a
href="../rgsvc/rgsvc.html#__rgsvc_intro_overriding-the-services">introduction</a>
to this guide).</p>
</div>
</div>
<div class="sect3">
<h4 id="_related_services">2.1.6. Related Services</h4>
<div class="paragraph">
- <p>The default implementation of
<code>ContentNegotiationService</code> delegates to <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
(if present) to convert domain entities into a stable form (eg DTO).</p>
+ <p>The default implementation of
<code>ContentNegotiationService</code> delegates to <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
(if present) to convert domain entities into a stable form (eg DTO).</p>
</div>
<div class="paragraph">
- <p>The <code>ContentNegotiationService</code> is itself called by
the (default implementation of) <a
href="#_rgfis_spi_RepresentationService"><code>RepresentationService</code></a>.</p>
+ <p>The <code>ContentNegotiationService</code> is itself called by
the (default implementation of) <a
href="../rgfis/rgfis.html#_rgfis_spi_RepresentationService"><code>RepresentationService</code></a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_rgfis_spi_RepresentationService">2.2.
<code>RepresentationService</code></h3>
<div class="paragraph">
- <p>The <code>RepresentationService</code> is the main plug-in point
for the <a href="ugvro.html">RestfulObjects viewer</a> to generate
representations.</p>
+ <p>The <code>RepresentationService</code> is the main plug-in point
for the <a href="../ugvro/ugvro.html">RestfulObjects viewer</a> to generate
representations.</p>
</div>
<div class="paragraph">
- <p>The default implementation generates representations according to
the <a href="http://restfulobjects.org">Restful Objects spec</a> v1.0. However,
it also delegates to the <a
href="#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>
which provides a mechanism for altering representations according to the HTTP
<code>Accept</code> header.</p>
+ <p>The default implementation generates representations according to
the <a href="http://restfulobjects.org">Restful Objects spec</a> v1.0. However,
it also delegates to the <a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>
which provides a mechanism for altering representations according to the HTTP
<code>Accept</code> header.</p>
</div>
<div class="paragraph">
<p>The principal motivation is to allow more flexible representations
to be generated for REST clients that (perhaps through their use of a certain
Javascript library, say) expect, or at least works best with, a certain style
of representation.</p>
</div>
<div class="paragraph">
- <p>In all there are three domain services that can influence the
representations generated: this service, <a
href="#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>and
the <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>.
The diagram below shows how these collaborate:</p>
+ <p>In all there are three domain services that can influence the
representations generated: this service, <a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>and
the <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>.
The diagram below shows how these collaborate:</p>
</div>
<div class="imageblock">
<div class="content">
@@ -854,22 +854,22 @@
<div class="sect3">
<h4 id="_implementation_2">2.2.2. Implementation</h4>
<div class="paragraph">
- <p>As discussed in the introduction, the framework provides a
default implementation,
<code>o.a.i.v.ro.rendering.service.RepresentationServiceContentNegotiator</code>.
This delegates to <a
href="#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>
to generate an alternative representation; but if none is provided then it
falls back on generating the representations as defined in the <a
href="http://restfulobjects.org">Restful Objects spec</a> v1.0.</p>
+ <p>As discussed in the introduction, the framework provides a
default implementation,
<code>o.a.i.v.ro.rendering.service.RepresentationServiceContentNegotiator</code>.
This delegates to <a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>
to generate an alternative representation; but if none is provided then it
falls back on generating the representations as defined in the <a
href="http://restfulobjects.org">Restful Objects spec</a> v1.0.</p>
</div>
<div class="paragraph">
- <p>To use an alternative implementation, use <a
href="rgant.html#_rgant-DomainServiceLayout_menuOrder"><code>@DomainServiceLayout#menuOrder()</code></a>
(as explained in the <a
href="rgsvc.html#__rgsvc_intro_overriding-the-services">introduction</a> to
this guide).</p>
+ <p>To use an alternative implementation, use <a
href="../rgant/rgant.html#_rgant-DomainServiceLayout_menuOrder"><code>@DomainServiceLayout#menuOrder()</code></a>
(as explained in the <a
href="../rgsvc/rgsvc.html#__rgsvc_intro_overriding-the-services">introduction</a>
to this guide).</p>
</div>
</div>
<div class="sect3">
<h4 id="_registering_the_services_2">2.2.3. Registering the
Services</h4>
<div class="paragraph">
- <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap the
app</a>) then Apache Isis' default implementation of
<code>RepresentationService</code> service is automatically registered and
injected (it is annotated with <code>@DomainService</code>) so no further
configuration is required.</p>
+ <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="../rgcms/rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap
the app</a>) then Apache Isis' default implementation of
<code>RepresentationService</code> service is automatically registered and
injected (it is annotated with <code>@DomainService</code>) so no further
configuration is required.</p>
</div>
</div>
<div class="sect3">
<h4 id="_related_services_2">2.2.4. Related Services</h4>
<div class="paragraph">
- <p>The default implementation delegates to <a
href="#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>,
whose default implementation may delegate in turn to <a
href="rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
(if present).</p>
+ <p>The default implementation delegates to <a
href="../rgfis/rgfis.html#_rgfis_spi_ContentNegotiationService"><code>ContentNegotiationService</code></a>,
whose default implementation may delegate in turn to <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_ContentMappingService"><code>ContentMappingService</code></a>
(if present).</p>
</div>
</div>
</div>
@@ -905,7 +905,7 @@
</thead>
<tbody>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_AuthenticationSessionProvider"><code>o.a.i.core.commons.</code><br>
<code>authentication.</code><br>
<code>AuthenticationSessionProvider</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_AuthenticationSessionProvider"><code>o.a.i.core.commons.</code><br>
<code>authentication.</code><br>
<code>AuthenticationSessionProvider</code></a></p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">Simply responsible for obtaining the current
<code>AuthenticationSession</code> (the frameworkâs internal representation
of the currently logged-in user).</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>AuthenticationSession-</code><br>
<code>ProviderDefault</code><br> <code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
@@ -916,15 +916,15 @@
</div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_CommandDtoServiceInternal"><code>o.a.i.c.m.s.command</code><br>
<code>CommandDtoServiceInternal</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Creates memento of current action invocation, for use as a
serializable XML reified command. The most notable usage of this is to allow
the execution of the <code>Command</code> to be deferred to run in the
background (via <a
href="rgant.html#_rgant-Action_command"><code>@Action#commandExecuteIn()</code></a>
or <a
href="rgant.html#_rgant-Property_command"><code>@Property#commandExecuteIn()</code></a>.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_CommandDtoServiceInternal"><code>o.a.i.c.m.s.command</code><br>
<code>CommandDtoServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Creates memento of current action invocation, for use as a
serializable XML reified command. The most notable usage of this is to allow
the execution of the <code>Command</code> to be deferred to run in the
background (via <a
href="../rgant/rgant.html#_rgant-Action_command"><code>@Action#commandExecuteIn()</code></a>
or <a
href="../rgant/rgant.html#_rgant-Property_command"><code>@Property#commandExecuteIn()</code></a>.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>CommandDtoService-</code><br>
<code>InternalServiceDefault</code><br> <code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_MessageBrokerServiceInternal"><code>o.a.i.c.m.s.msgbroker</code><br>
<code>MessageBrokerServiceInternal</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">A wrapper around <a
href="rgsvc.html#_rgsvc_api_MessageService"><code>MessageService</code></a>.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_MessageBrokerServiceInternal"><code>o.a.i.c.m.s.msgbroker</code><br>
<code>MessageBrokerServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">A wrapper around <a
href="../rgsvc/rgsvc.html#_rgsvc_api_MessageService"><code>MessageService</code></a>.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">MessageBrokerService-`<br> <code>InternalDefault</code><br>
<code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
<div>
@@ -934,8 +934,8 @@
</div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_InteractionDtoServiceInternal"><code>o.a.i.c.m.s.ixn</code><br>
<code>InteractionDtoServiceInternal</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Creates DTO for the current execution of an action
invocation or property edit, for use either as a reified command or for
implementations of the <a
href="rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_InteractionDtoServiceInternal"><code>o.a.i.c.m.s.ixn</code><br>
<code>InteractionDtoServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Creates DTO for the current execution of an action
invocation or property edit, for use either as a reified command or for
implementations of the <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>CommandDtoService-</code><br>
<code>InternalServiceDefault</code><br>
<code>isis-core-metamodel</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
@@ -979,14 +979,14 @@
</div>
</div>
<div class="paragraph">
- <p>If <a
href="rgsvc.html#_rgsvc_api_SudoService"><code>SudoService</code></a> has been
used to temporarily override the user and/or roles, then this service will
report the overridden values.</p>
+ <p>If <a
href="../rgsvc/rgsvc.html#_rgsvc_api_SudoService"><code>SudoService</code></a>
has been used to temporarily override the user and/or roles, then this service
will report the overridden values.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_rgfis_spi_CommandDtoServiceInternal">3.2.
<code>CommandDtoServiceInternal</code></h3>
<div class="paragraph">
- <p>The <code>CommandDtoServiceInternal</code> is responsible for
creating an memento of the current action invocation or property edit, to store
in the <code>Command</code> object (from <a
href="rgsvc.html#_rgsvc_api_CommandContext"><code>CommandContext</code></a>).
This memento is a JAXB DTO being an instance of the <a
href="rgcms.html#_rgcms_schema-cmd">"cmd" schema</a>, so can be reified so that
its execution can be deferred until later, as a <a
href="rgsvc.html#_rgsvc_spi_BackgroundCommandService">background
command</a>.</p>
+ <p>The <code>CommandDtoServiceInternal</code> is responsible for
creating an memento of the current action invocation or property edit, to store
in the <code>Command</code> object (from <a
href="../rgsvc/rgsvc.html#_rgsvc_api_CommandContext"><code>CommandContext</code></a>).
This memento is a JAXB DTO being an instance of the <a
href="../rgcms/rgcms.html#_rgcms_schema-cmd">"cmd" schema</a>, so can be
reified so that its execution can be deferred until later, as a <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_BackgroundCommandService">background
command</a>.</p>
</div>
<div class="sect3">
<h4 id="_spi_implementation">3.2.1. SPI & Implementation</h4>
@@ -1028,7 +1028,7 @@
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
- <td>Returns a JAXB DTO being an instance of the <a
href="rgcms.html#_rgcms_schema-cmd">"cmd" schema</a> (hence convertible to XML)
that represents the <em>intention</em> to invoke an action on a target object
(or possibly many targets, for bulk actions). If an action, it can also be
either mixin action or a contributed action.</td>
+ <td>Returns a JAXB DTO being an instance of the <a
href="../rgcms/rgcms.html#_rgcms_schema-cmd">"cmd" schema</a> (hence
convertible to XML) that represents the <em>intention</em> to invoke an action
on a target object (or possibly many targets, for bulk actions). If an action,
it can also be either mixin action or a contributed action.</td>
</tr>
<tr>
<td><i class="conum" data-value="3"></i><b>3</b></td>
@@ -1036,11 +1036,11 @@
</tr>
<tr>
<td><i class="conum" data-value="4"></i><b>4</b></td>
- <td>add the arguments of an action to an <code>ActionDto</code>.
This is used when the command is actually executed (per <a
href="rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>)
to populate the parameters of the equivalent
<code>ActionInvocationDto</code>.</td>
+ <td>add the arguments of an action to an <code>ActionDto</code>.
This is used when the command is actually executed (per <a
href="../rgsvc/rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>)
to populate the parameters of the equivalent
<code>ActionInvocationDto</code>.</td>
</tr>
<tr>
<td><i class="conum" data-value="5"></i><b>5</b></td>
- <td>add the new value argument of a property to a
<code>PropertyDto</code>. This is used when the command is actually executed
(per <a
href="rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>)
to set the the new value of the equivalent <code>PropertyEditDto</code>.</td>
+ <td>add the new value argument of a property to a
<code>PropertyDto</code>. This is used when the command is actually executed
(per <a
href="../rgsvc/rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>)
to set the the new value of the equivalent <code>PropertyEditDto</code>.</td>
</tr>
</tbody>
</table>
@@ -1052,14 +1052,14 @@
<div class="sect3">
<h4 id="_related_services_3">3.2.2. Related Services</h4>
<div class="paragraph">
- <p>The design of this service is similar to that of <a
href="#_rgfis_spi_InteractionDtoServiceInternal"><code>InteractionDtoServiceInternal</code></a>,
used to create the <code>MemberExecutionDto</code> (from the <a
href="rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>).</p>
+ <p>The design of this service is similar to that of <a
href="../rgfis/rgfis.html#_rgfis_spi_InteractionDtoServiceInternal"><code>InteractionDtoServiceInternal</code></a>,
used to create the <code>MemberExecutionDto</code> (from the <a
href="../rgcms/rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>).</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_rgfis_spi_MessageBrokerServiceInternal">3.3.
<code>MessageBrokerServiceInternal</code></h3>
<div class="paragraph">
- <p>The (internal) <code>MessageBrokerServiceInternal</code> domain
service is a wrapper around <a
href="rgsvc.html#_rgsvc_api_MessageService"><code>MessageService</code></a>.</p>
+ <p>The (internal) <code>MessageBrokerServiceInternal</code> domain
service is a wrapper around <a
href="../rgsvc/rgsvc.html#_rgsvc_api_MessageService"><code>MessageService</code></a>.</p>
</div>
<div class="admonitionblock note">
<table>
@@ -1097,7 +1097,7 @@
<div class="ulist">
<ul>
<li> <p><code>MessageBrokerServiceInternalDefault</code> is
provided by <code>isis-core-runtime</code>, and is used during normal use and
integration tests</p> </li>
- <li> <p><code>MessageBrokerServiceInternalNoop</code> is provided
as a fallback by <code>isis-core-metamodel</code>, and is provided to allow the
<a href="#rgmvn.adoc">maven plugin</a> to be bootstrapped without any "backend"
database.</p> </li>
+ <li> <p><code>MessageBrokerServiceInternalNoop</code> is provided
as a fallback by <code>isis-core-metamodel</code>, and is provided to allow the
<a href="../rgmvn/rgmvn.html">maven plugin</a> to be bootstrapped without any
"backend" database.</p> </li>
</ul>
</div>
<div class="paragraph">
@@ -1108,7 +1108,7 @@
<div class="sect2">
<h3 id="_rgfis_spi_InteractionDtoServiceInternal">3.4.
<code>InteractionDtoServiceInternal</code></h3>
<div class="paragraph">
- <p>The <code>InteractionDtoServiceInternal</code> internal domain
service is used by the framework to create and update DTOs representing member
executions, ie the invocation of an action or the editing of a property. The
DTO is in all cases a subclass of <code>MemberExecutionDto</code>, from the <a
href="rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>, and subsequently
accessible from the <code>Interaction</code> object (per the <a
href="rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
service).</p>
+ <p>The <code>InteractionDtoServiceInternal</code> internal domain
service is used by the framework to create and update DTOs representing member
executions, ie the invocation of an action or the editing of a property. The
DTO is in all cases a subclass of <code>MemberExecutionDto</code>, from the <a
href="../rgcms/rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>, and subsequently
accessible from the <code>Interaction</code> object (per the <a
href="../rgsvc/rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
service).</p>
</div>
<div class="sect3">
<h4 id="_spi_implementation_2">3.4.1. SPI & Implementation</h4>
@@ -1142,7 +1142,7 @@
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
- <td>called by the framework when editing a property, to create a
DTO (for the <a href="rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>) capturing
the details of the property edit (target, new value etc).</td>
+ <td>called by the framework when editing a property, to create a
DTO (for the <a href="../rgcms/rgcms.html#_rgcms_schema-ixn">"ixn" schema</a>)
capturing the details of the property edit (target, new value etc).</td>
</tr>
<tr>
<td><i class="conum" data-value="3"></i><b>3</b></td>
@@ -1158,7 +1158,7 @@
<div class="sect3">
<h4 id="_related_services_4">3.4.2. Related Services</h4>
<div class="paragraph">
- <p>The design of this service is similar to that of <a
href="#_rgfis_spi_CommandDtoServiceInternal"><code>CommandDtoServiceInternal</code></a>,
used to create the <code>CommandDto</code> (from the <a
href="rgcms.html#_rgcms_schema-cmd">"cmd" schema</a>).</p>
+ <p>The design of this service is similar to that of <a
href="../rgfis/rgfis.html#_rgfis_spi_CommandDtoServiceInternal"><code>CommandDtoServiceInternal</code></a>,
used to create the <code>CommandDto</code> (from the <a
href="../rgcms/rgcms.html#_rgcms_schema-cmd">"cmd" schema</a>).</p>
</div>
</div>
</div>
@@ -1194,35 +1194,35 @@
</thead>
<tbody>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_AuditingServiceInternal"><code>o.a.i.c.r.s.auditing.</code><br>
<code>AuditingServiceInternal</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Co-ordinates between <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
and <a
href="#_rgfis_spi_AuditerService"><code>AuditerService</code></a>.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_AuditingServiceInternal"><code>o.a.i.c.r.s.auditing.</code><br>
<code>AuditingServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Co-ordinates between <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
and <a
href="../rgfis/rgfis.html#_rgfis_spi_AuditerService"><code>AuditerService</code></a>.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">concrete class.</p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>o.a.i.c.r.s.changes.</code><br>
<code>ChangedObjectsServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>o.a.i.c.r.s.changes.</code><br>
<code>ChangedObjectsServiceInternal</code></a></p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">Request-scoped service holding objects enlisted into current
transaction.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">concrete class.</p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_PersistenceSessionServiceInternal"><code>o.a.i.c.m.s.</code><br>
<code>persistsession.</code><br>
<code>PersistenceSessionServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_PersistenceSessionServiceInternal"><code>o.a.i.c.m.s.</code><br>
<code>persistsession.</code><br>
<code>PersistenceSessionServiceInternal</code></a></p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">Acts as a facade to the underlying JDO persistence session /
database connection. As such it provides methods for querying and for
persisting objects.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>PersistenceSessionService-</code><br>
<code>InternalDefault</code><br> <code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_PublishingServiceInternal"><code>o.a.i.c.m.s.publishing.</code><br>
<code>PublishingServiceInternal</code></a></p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Co-ordinates between <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
and <a
href="rgsvc.html#_rgsvc_api_MetricsService"><code>MetricsService</code></a> and
the SPI services, <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
and (deprecated) <a
href="rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_PublishingServiceInternal"><code>o.a.i.c.m.s.publishing.</code><br>
<code>PublishingServiceInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock">Co-ordinates between <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
and <a
href="../rgsvc/rgsvc.html#_rgsvc_api_MetricsService"><code>MetricsService</code></a>
and the SPI services, <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
and (deprecated) <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>PublishingService-</code><br>
<code>InternalDefault</code><br> <code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
<div></div></td>
</tr>
<tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="#_rgfis_spi_TransactionStateProviderInternal"><code>o.a.i.c.m.s.</code><br>
<code>transtate.</code><br>
<code>TransactionStateProviderInternal</code></a></p></td>
+ <td class="tableblock halign-left valign-top"><p
class="tableblock"><a
href="../rgfis/rgfis.html#_rgfis_spi_TransactionStateProviderInternal"><code>o.a.i.c.m.s.</code><br>
<code>transtate.</code><br>
<code>TransactionStateProviderInternal</code></a></p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">Simply provides the ability to check as to the state of the
current transaction.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock"><code>TransactionStateProvider-</code><br>
<code>InternalDefault</code><br> <code>isis-core-runtime</code></p></td>
<td class="tableblock halign-left valign-top">
@@ -1244,7 +1244,7 @@
<div class="sect2">
<h3 id="_rgfis_spi_AuditingServiceInternal">4.1.
<code>AuditingServiceInternal</code></h3>
<div class="paragraph">
- <p>The (internal) <code>AuditingServiceInternal</code> domain service
acts as an internal facade to any configured <a
href="rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
and <a
href="rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditerService</code></a>
services. It is responsible for obtaining the details of all changes to domain
objects within an interaction, and then to call the configured
<code>AuditingService</code> to actually create audit entries of those
changes.</p>
+ <p>The (internal) <code>AuditingServiceInternal</code> domain service
acts as an internal facade to any configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
and <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditerService</code></a>
services. It is responsible for obtaining the details of all changes to domain
objects within an interaction, and then to call the configured
<code>AuditingService</code> to actually create audit entries of those
changes.</p>
</div>
<div class="admonitionblock note">
<table>
@@ -1253,7 +1253,7 @@
<td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
<td class="content">
<div class="paragraph">
- <p><a
href="rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
is now deprecated, replaced by <a
href="rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditerService</code></a>.</p>
+ <p><a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
is now deprecated, replaced by <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditerService</code></a>.</p>
</div> </td>
</tr>
</tbody>
@@ -1277,11 +1277,11 @@
<tbody>
<tr>
<td><i class="conum" data-value="1"></i><b>1</b></td>
- <td>minor performance optimization as to whether any auditing
services are actually enabled; checks to see if any <a
href="rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
has been configured, also if any <a
href="rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditService</code></a> are
enabled.</td>
+ <td>minor performance optimization as to whether any auditing
services are actually enabled; checks to see if any <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>
has been configured, also if any <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditerService"><code>AuditService</code></a>
are enabled.</td>
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
- <td>uses the <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
to obtain details of the changed properties, then call the configured <a
href="rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>.</td>
+ <td>uses the <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
to obtain details of the changed properties, then call the configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>.</td>
</tr>
</tbody>
</table>
@@ -1293,23 +1293,23 @@
<div class="sect3">
<h4 id="_registering_the_service">4.1.2. Registering the Service</h4>
<div class="paragraph">
- <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap the
app</a>) then Apache Isis' default implementation of
<code>AuditingServiceInternal</code> class is automatically registered (it is
annotated with <code>@DomainService</code>) so no further configuration is
required.</p>
+ <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="../rgcms/rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap
the app</a>) then Apache Isis' default implementation of
<code>AuditingServiceInternal</code> class is automatically registered (it is
annotated with <code>@DomainService</code>) so no further configuration is
required.</p>
</div>
</div>
<div class="sect3">
<h4 id="_related_classes">4.1.3. Related Classes</h4>
<div class="paragraph">
- <p>The service delegates between the (internal) <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
domain service to the configured <a
href="rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>.
If no such <code>AuditingService</code> is configured, this service is in
effect a no-op.</p>
+ <p>The service delegates between the (internal) <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
domain service to the configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_AuditingService"><code>AuditingService</code></a>.
If no such <code>AuditingService</code> is configured, this service is in
effect a no-op.</p>
</div>
<div class="paragraph">
- <p>The (internal) <a
href="#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
performs a similar function for the <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>,
also collating details of the changed objects from
<code>ChangedObjectsServiceInternal</code>.</p>
+ <p>The (internal) <a
href="../rgfis/rgfis.html#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
performs a similar function for the <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>,
also collating details of the changed objects from
<code>ChangedObjectsServiceInternal</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_rgfis_spi_ChangedObjectsServiceInternal">4.2.
<code>ChangedObjectsServiceInternal</code></h3>
<div class="paragraph">
- <p>The <code>ChangedObjectsServiceInternal</code> class is an
(internal) request-scoped domain service that is responsible for collecting the
details of all changes to domain objects within an interaction. This is then
used by various other (internal) domain services, notably <a
href="#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
and <a
href="#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>.</p>
+ <p>The <code>ChangedObjectsServiceInternal</code> class is an
(internal) request-scoped domain service that is responsible for collecting the
details of all changes to domain objects within an interaction. This is then
used by various other (internal) domain services, notably <a
href="../rgfis/rgfis.html#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
and <a
href="../rgfis/rgfis.html#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>.</p>
</div>
<div class="sect3">
<h4 id="_spi_and_implementation_3">4.2.1. SPI and Implementation</h4>
@@ -1345,15 +1345,15 @@
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
- <td>Used by the framework to determine whether to set the
"persist hint" on the <code>Command</code> object (as per <a
href="rgsvc.html#_rgsvc_api_CommandContext"><code>CommandContext</code></a>).</td>
+ <td>Used by the framework to determine whether to set the
"persist hint" on the <code>Command</code> object (as per <a
href="../rgsvc/rgsvc.html#_rgsvc_api_CommandContext"><code>CommandContext</code></a>).</td>
</tr>
<tr>
<td><i class="conum" data-value="3"></i><b>3</b></td>
- <td>Used by <a
href="#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
to obtain details of and counters of all objects changed within the
transaction.</td>
+ <td>Used by <a
href="../rgfis/rgfis.html#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
to obtain details of and counters of all objects changed within the
transaction.</td>
</tr>
<tr>
<td><i class="conum" data-value="4"></i><b>4</b></td>
- <td>Used by <a
href="#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
to obtain all pairs of pre/post values of changed properties</td>
+ <td>Used by <a
href="../rgfis/rgfis.html#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
to obtain all pairs of pre/post values of changed properties</td>
</tr>
<tr>
<td><i class="conum" data-value="5"></i><b>5</b></td>
@@ -1372,13 +1372,13 @@
<div class="sect3">
<h4 id="_registering_the_service_2">4.2.2. Registering the
Service</h4>
<div class="paragraph">
- <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap the
app</a>) then Apache Isis' default implementation of
<code>ChangedObjectsServiceInternal</code> class is automatically registered
(it is annotated with <code>@DomainService</code>) so no further configuration
is required.</p>
+ <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="../rgcms/rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap
the app</a>) then Apache Isis' default implementation of
<code>ChangedObjectsServiceInternal</code> class is automatically registered
(it is annotated with <code>@DomainService</code>) so no further configuration
is required.</p>
</div>
</div>
<div class="sect3">
<h4 id="_related_classes_2">4.2.3. Related Classes</h4>
<div class="paragraph">
- <p>Both the <a
href="#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
and <a
href="#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
(internal) domain services query this object.</p>
+ <p>Both the <a
href="../rgfis/rgfis.html#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
and <a
href="../rgfis/rgfis.html#_rgfis_spi_PublishingServiceInternal"><code>PublishingServiceInternal</code></a>
(internal) domain services query this object.</p>
</div>
</div>
</div>
@@ -1509,7 +1509,7 @@
<div class="ulist">
<ul>
<li> <p><code>PersistenceSessionServiceInternalDefault</code> is
provided by <code>isis-core-runtime</code>, and is used during normal use and
integration tests</p> </li>
- <li> <p><code>PersistenceSessionServiceInternalNoop</code> is
provided as a fallback by <code>isis-core-metamodel</code>, and is provided to
allow the <a href="#rgmvn.adoc">maven plugin</a> to be bootstrapped without any
"backend" database.</p> </li>
+ <li> <p><code>PersistenceSessionServiceInternalNoop</code> is
provided as a fallback by <code>isis-core-metamodel</code>, and is provided to
allow the <a href="../rgmvn/rgmvn.html">maven plugin</a> to be bootstrapped
without any "backend" database.</p> </li>
</ul>
</div>
<div class="paragraph">
@@ -1520,13 +1520,13 @@
<div class="sect2">
<h3 id="_rgfis_spi_PublishingServiceInternal">4.4.
<code>PublishingServiceInternal</code></h3>
<div class="paragraph">
- <p>The (internal) <code>PublishingServiceInternal</code> domain
service acts as an internal facade to any configured <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
or (deprecated) <a
href="rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>
domain services.</p>
+ <p>The (internal) <code>PublishingServiceInternal</code> domain
service acts as an internal facade to any configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
or (deprecated) <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>
domain services.</p>
</div>
<div class="paragraph">
<p>For published action invocations/ property edits, it provides an
API for those member executions to call.</p>
</div>
<div class="paragraph">
- <p>For published objects, it provides an API for the framework to
call at the end of the interaction; it obtains details of the changed objects
(from the <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>)
and filters them to just those objects that are to be published; these are
then passed through to any configured <code>PublisherService</code> or
<code>PublishingService</code> implementations.</p>
+ <p>For published objects, it provides an API for the framework to
call at the end of the interaction; it obtains details of the changed objects
(from the <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>)
and filters them to just those objects that are to be published; these are
then passed through to any configured <code>PublisherService</code> or
<code>PublishingService</code> implementations.</p>
</div>
<div class="sect3">
<h4 id="_spi_and_implementation_4">4.4.1. SPI and Implementation</h4>
@@ -1554,19 +1554,19 @@
<tbody>
<tr>
<td><i class="conum" data-value="1"></i><b>1</b></td>
- <td>to publish an action invocation, as represented by the
specified member <code>Execution</code> parameter and with the <a
href="rgant.html#_rgant-Action_publishing"><code>@Action#publishing()</code></a>
annotation attribute or equivalent, to any configured <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>.
The <code>Execution</code> object will be an instance of
<code>ActionInvocation</code> (see <a
href="rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
for details).</td>
+ <td>to publish an action invocation, as represented by the
specified member <code>Execution</code> parameter and with the <a
href="../rgant/rgant.html#_rgant-Action_publishing"><code>@Action#publishing()</code></a>
annotation attribute or equivalent, to any configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>.
The <code>Execution</code> object will be an instance of
<code>ActionInvocation</code> (see <a
href="../rgsvc/rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
for details).</td>
</tr>
<tr>
<td><i class="conum" data-value="2"></i><b>2</b></td>
- <td>the remaining parameters are to support the publishing of the
action to any configured <a
href="rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>
services (deprecated).</td>
+ <td>the remaining parameters are to support the publishing of the
action to any configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>
services (deprecated).</td>
</tr>
<tr>
<td><i class="conum" data-value="3"></i><b>3</b></td>
- <td>to publish a property edit, as as represented by the
specified member <code>Execution</code> parameter and with the <a
href="rgant.html#_rgant-Property_publishing"><code>@Property#publishing()</code></a>
annotation attribute or equivalent, to any configured <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>.
The <code>Execution</code> object will be an instance of
<code>PropertyEdit</code> (see <a
href="rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
for details).</td>
+ <td>to publish a property edit, as as represented by the
specified member <code>Execution</code> parameter and with the <a
href="../rgant/rgant.html#_rgant-Property_publishing"><code>@Property#publishing()</code></a>
annotation attribute or equivalent, to any configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>.
The <code>Execution</code> object will be an instance of
<code>PropertyEdit</code> (see <a
href="../rgsvc/rgsvc.html#_rgsvc_api_InteractionContext"><code>InteractionContext</code></a>
for details).</td>
</tr>
<tr>
<td><i class="conum" data-value="4"></i><b>4</b></td>
- <td>to publish all changed objects that are to be published (with
the <a
href="rgant.html#_rgant-DomainObject_publishing"><code>@DomainObject#publishing()</code></a>
annotation attribute or equivalent).</td>
+ <td>to publish all changed objects that are to be published (with
the <a
href="../rgant/rgant.html#_rgant-DomainObject_publishing"><code>@DomainObject#publishing()</code></a>
annotation attribute or equivalent).</td>
</tr>
</tbody>
</table>
@@ -1578,16 +1578,16 @@
<div class="sect3">
<h4 id="_registering_the_service_3">4.4.2. Registering the
Service</h4>
<div class="paragraph">
- <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap the
app</a>) then Apache Isis' default implementation of
<code>PublishingServiceInternal</code> class is automatically registered (it is
annotated with <code>@DomainService</code>) so no further configuration is
required.</p>
+ <p>Assuming that the <code>configuration-and-annotation</code>
services installer is configured (implicit if using the
<code>AppManifest</code> to <a
href="../rgcms/rgcms.html#_rgcms_classes_AppManifest-bootstrapping">bootstrap
the app</a>) then Apache Isis' default implementation of
<code>PublishingServiceInternal</code> class is automatically registered (it is
annotated with <code>@DomainService</code>) so no further configuration is
required.</p>
</div>
</div>
<div class="sect3">
<h4 id="_related_classes_3">4.4.3. Related Classes</h4>
<div class="paragraph">
- <p>The service delegates between the (internal) <a
href="#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
domain service to the configured <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
and <a
href="rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p>
+ <p>The service delegates between the (internal) <a
href="../rgfis/rgfis.html#_rgfis_spi_ChangedObjectsServiceInternal"><code>ChangedObjectsServiceInternal</code></a>
domain service to the configured <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>
and <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublishingService"><code>PublishingService</code></a>.</p>
</div>
<div class="paragraph">
- <p>The (internal) <a
href="#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
performs a similar function for the <a
href="rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>,
also collating details of the changed objects from
<code>ChangedObjectsServiceInternal</code>.</p>
+ <p>The (internal) <a
href="../rgfis/rgfis.html#_rgfis_spi_AuditingServiceInternal"><code>AuditingServiceInternal</code></a>
performs a similar function for the <a
href="../rgsvc/rgsvc.html#_rgsvc_spi_PublisherService"><code>PublisherService</code></a>,
also collating details of the changed objects from
<code>ChangedObjectsServiceInternal</code>.</p>
</div>
</div>
</div>
@@ -1603,7 +1603,7 @@
<td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
<td class="content">
<div class="paragraph">
- <p>The service will probably be combined with <a
href="rgsvc.html#_rgsvc_api_TransactionService"><code>TransactionService</code></a>
in the future.</p>
+ <p>The service will probably be combined with <a
href="../rgsvc/rgsvc.html#_rgsvc_api_TransactionService"><code>TransactionService</code></a>
in the future.</p>
</div> </td>
</tr>
</tbody>
@@ -1630,7 +1630,7 @@
<div class="ulist">
<ul>
<li> <p><code>TransactionStateProviderInternalDefault</code> is
provided by <code>isis-core-runtime</code>, and is used during normal use and
integration tests</p> </li>
- <li> <p><code>TransactionStateProviderInternalNoop</code> is
provided as a fallback by <code>isis-core-metamodel</code>, and is provided to
allow the <a href="#rgmvn.adoc">maven plugin</a> to be bootstrapped without any
"backend" database.</p> </li>
+ <li> <p><code>TransactionStateProviderInternalNoop</code> is
provided as a fallback by <code>isis-core-metamodel</code>, and is provided to
allow the <a href="../rgmvn/rgmvn.html">maven plugin</a> to be bootstrapped
without any "backend" database.</p> </li>
</ul>
</div>
<div class="paragraph">