INT-3367: Add GemfireMetadataStore
JIRA: https://jira.spring.io/browse/INT-3367 INT-3367 Polishing Rename test class; move to metadata package; doc polishing.
This commit is contained in:
committed by
Gary Russell
parent
2ee179a891
commit
de123c1ee4
@@ -200,4 +200,39 @@ Note the <emphasis>pool</emphasis> element is configured with the address of a c
|
||||
</note>
|
||||
</para>
|
||||
</section>
|
||||
<section id="gemfire-metadata-store">
|
||||
<title>Gemfire Metadata Store</title>
|
||||
<para>
|
||||
As of <emphasis>Spring Integration 4.0</emphasis>, a new Gemfire-based
|
||||
<interfacename>MetadataStore</interfacename>
|
||||
(<xref linkend="metadata-store"/>) implementation is available. The <classname>GemfireMetadataStore</classname>
|
||||
can be used to maintain metadata state
|
||||
across application restarts. This new <interfacename>MetadataStore</interfacename>
|
||||
implementation can be used with adapters such as:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><xref linkend="twitter-inbound"/></listitem>
|
||||
<listitem><xref linkend="feed-inbound-channel-adapter"/></listitem>
|
||||
<listitem><xref linkend="file-reading"/></listitem>
|
||||
<listitem><xref linkend="ftp-inbound"/></listitem>
|
||||
<listitem><xref linkend="sftp-inbound"/></listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
In order to instruct these adapters to use the new <classname>GemfireMetadataStore</classname>,
|
||||
simply declare a Spring bean using the bean name <emphasis role="bold">metadataStore</emphasis>.
|
||||
The <emphasis>Twitter Inbound Channel Adapter</emphasis> and the
|
||||
<emphasis>Feed Inbound Channel Adapter</emphasis> will both automatically
|
||||
pick up and use the declared <classname>GemfireMetadataStore</classname>.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
The <classname>GemfireMetadataStore</classname> also implements
|
||||
<interfacename>ConcurrentMetadataStore</interfacename>, allowing it to be reliably shared across
|
||||
multiple application instances where only one instance will be allowed to store or modify a key's value.
|
||||
These methods give various levels of concurrency guarantees based on the scope and data policy of the region.
|
||||
They are implemented in the peer cache and client/server cache but are disallowed in peer Regions having
|
||||
NORMAL or EMPTY data policies.
|
||||
</para>
|
||||
</note>
|
||||
</section>
|
||||
</chapter>
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
<itemizedlist>
|
||||
<listitem>PropertiesPersistingMetadataStore</listitem>
|
||||
<listitem><xref linkend="redis-metadata-store"/></listitem>
|
||||
<listitem><xref linkend="gemfire-metadata-store"/></listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
The <classname>PropertiesPersistingMetadataStore</classname> is backed by a properties file and a
|
||||
@@ -49,7 +50,7 @@
|
||||
<section id="idempotent-receiver">
|
||||
<title>Idempotent Receiver</title>
|
||||
<para>
|
||||
The <emphasis>Metadata Store</emphasis> is useful for implementating the
|
||||
The <emphasis>Metadata Store</emphasis> is useful for implementing the
|
||||
EIP <ulink url="http://eaipatterns.com/IdempotentReceiver.html">Idempotent Receiver</ulink> pattern, when
|
||||
there is need to <emphasis>filter</emphasis> an incoming Message if it has already been processed, and just discard
|
||||
it or perform some other logic on discarding. The following configuration is an example of how to do this:
|
||||
|
||||
@@ -182,6 +182,17 @@
|
||||
For more information, see <xref linkend="twitter-sog"/>.
|
||||
</para>
|
||||
</section>
|
||||
<section id="4.0-gemfire-metadata">
|
||||
<title>Gemfire Metadata Store</title>
|
||||
<para>
|
||||
The <classname>GemfireMetadataStore</classname> is provided, allowing it to be used, for example,
|
||||
in a <classname>AbstractPersistentAcceptOnceFileListFilter</classname>
|
||||
implementation in a multiple application instance/server environment.
|
||||
For more information, see <xref linkend="metadata-store"/>,
|
||||
<xref linkend="file-reading"/>, <xref linkend="ftp-inbound"/> and
|
||||
<xref linkend="sftp-inbound"/>.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="4.0-general">
|
||||
|
||||
Reference in New Issue
Block a user