<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://quest.windwards.net"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Quest for improvement - asynchrmi</title>
 <link>http://quest.windwards.net/tags/asynchrmi</link>
 <description></description>
 <language>en</language>
<item>
 <title>asynchrmi 1.2 released</title>
 <link>http://quest.windwards.net/content/asynchrmi-12-released</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; property=&quot;content:encoded&quot;&gt;&lt;p&gt;&lt;a href=&quot;https://bitbucket.org/quest/asynchrmi&quot;&gt;asynchrmi&lt;/a&gt; goes to version 1.2. This is the first production-ready release. Its core features seems to serve us well.&lt;/p&gt;
&lt;p&gt;For those who used earlier snapshots, note that there is an interface change in the ChainBuilder. It now uses a common object called a ChainResult. In traditional Promise programming, each group of tasks typically feed the next step. When using asynchrmi we foung that we needed to gradually build up a data by successive layers of relation lookups. Only at the end do we have enough data to produce the actual result (i.e. a web page).&lt;/p&gt;
&lt;p&gt;Maven dependency looks thus:&lt;/p&gt;
&lt;pre&gt;
   &lt;span class=&quot;nt&quot;&gt;&amp;lt;dependency&amp;gt;&lt;/span&gt;
     &lt;span class=&quot;nt&quot;&gt;&amp;lt;groupId&amp;gt;&lt;/span&gt;net.windwards&lt;span class=&quot;nt&quot;&gt;&amp;lt;/groupId&amp;gt;&lt;/span&gt;
     &lt;span class=&quot;nt&quot;&gt;&amp;lt;artifactId&amp;gt;&lt;/span&gt;asynchrmi&lt;span class=&quot;nt&quot;&gt;&amp;lt;/artifactId&amp;gt;&lt;/span&gt;
     &lt;span class=&quot;nt&quot;&gt;&amp;lt;version&amp;gt;&lt;/span&gt;1.3-SNAPSHOT&lt;span class=&quot;nt&quot;&gt;&amp;lt;/version&amp;gt;&lt;/span&gt;
   &lt;span class=&quot;nt&quot;&gt;&amp;lt;/dependency&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-tags field-type-taxonomy-term-reference field-label-above&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Tags:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/quest-blog&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;quest-blog&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/java-programming&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;java-programming&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/jboss&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;jboss&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/asynchrmi&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;asynchrmi&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Thu, 02 Jul 2015 13:33:43 +0000</pubDate>
 <dc:creator>quest</dc:creator>
 <guid isPermaLink="false">38 at http://quest.windwards.net</guid>
 <comments>http://quest.windwards.net/content/asynchrmi-12-released#comments</comments>
</item>
<item>
 <title>asynchrmi helps writing JBoss RMI clients</title>
 <link>http://quest.windwards.net/content/asynchrmi-helps-writing-jboss-rmi-clients</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; property=&quot;content:encoded&quot;&gt;&lt;p&gt;I have started a new project called &lt;a href=&quot;https://bitbucket.org/quest/asynchrmi&quot;&gt;asynchrmi&lt;/a&gt;. The purpose of this lib is to make it simpler to write serious applications that calls a JBoss application server.&lt;/p&gt;
&lt;p&gt;We were in the process of writing a modern web frontend to our car-sharing system when we concluded that: 1) making many parallel calls to JBoss as different users didn&#039;t work, and 2) that because of the heavily relational datamodel (a typical Hibernate model) you needed to make several calls to get all the data you wanted - calls that could be parallelized.&lt;/p&gt;
&lt;p&gt;In order to encourage the building of a vocabulary, I wrote a simple library called asynchrmi that enables threadpool-mediated, Future- and/or callback-driven client JNP operations that will be safely threaded.&lt;/p&gt;
&lt;p&gt;The project is still in early stages, but has proved useful and robust.&lt;/p&gt;
&lt;p&gt;The big missing piece is the ability to inject RMI endpoints on RMITask objects so that all the tedious lookups can be compressed (and ideally performed in parallel).&lt;/p&gt;
&lt;p&gt;Please note that this is a large hammer. You can easily sink your application server, either via lock-death or through load-death. Proceed with caution.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-tags field-type-taxonomy-term-reference field-label-above&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Tags:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/quest-blog&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;quest-blog&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/java-programming&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;java-programming&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item even&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/jboss&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;jboss&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot; rel=&quot;dc:subject&quot;&gt;&lt;a href=&quot;/tags/asynchrmi&quot; typeof=&quot;skos:Concept&quot; property=&quot;rdfs:label skos:prefLabel&quot; datatype=&quot;&quot;&gt;asynchrmi&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Fri, 15 Aug 2014 09:33:01 +0000</pubDate>
 <dc:creator>quest</dc:creator>
 <guid isPermaLink="false">37 at http://quest.windwards.net</guid>
 <comments>http://quest.windwards.net/content/asynchrmi-helps-writing-jboss-rmi-clients#comments</comments>
</item>
</channel>
</rss>
