<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.oehive.org" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>The OpenEdge Hive - OOABL</title>
 <link>http://www.oehive.org/taxonomy/term/136/all</link>
 <description>Code, discussions, and whitepapers related to the use of object-oriented techniques in coding ABL applications.</description>
 <language>oehive</language>
<item>
 <title>abljson</title>
 <link>http://www.oehive.org/project/abljson</link>
 <description>&lt;p&gt;&lt;span class=&quot;inline left&quot;&gt;&lt;a href=&quot;http://www.ganimede.ro&quot;&gt;&lt;img src=&quot;http://www.oehive.org/files/images/JSON_0.thumbnail.gif&quot; alt=&quot;abljson&quot; title=&quot;abljson&quot;  class=&quot;image thumbnail&quot; width=&quot;150&quot; height=&quot;93&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;caption&quot; style=&quot;width: -2px;&quot;&gt;&lt;strong&gt;abljson&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;JSON Parser for Progress ABL is a &quot;wrapper&quot; for the &lt;a href=&quot;https://sourceforge.net/projects/cjson/&quot;&gt;cJSON&lt;/a&gt; parser - ultra-lightweight, portable, single-file, simple-as-can-be ANSI-C compliant JSON parser.&lt;/p&gt;
&lt;p&gt;The reader object can be used to load and parse a JSON string from either a file on the file system or from a character, longchar or memptr variable.&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/194&quot; class=&quot;og_links&quot;&gt;Hive group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/project/abljson&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <category domain="http://www.oehive.org/taxonomy/term/896">json</category>
 <category domain="http://www.oehive.org/taxonomy/term/897">parser</category>
 <category domain="http://www.oehive.org/taxonomy/term/214">Development Support Tools</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <category domain="http://www.oehive.org/taxonomy/term/292">Web Services &amp;amp; Other Integration Technologies</category>
 <category domain="http://www.oehive.org/taxonomy/term/281">Aggregation from other Progress-related Websites</category>
 <group domain="http://www.oehive.org/node/194">Hive group</group>
 <pubDate>Mon, 10 Jan 2011 10:21:36 +0000</pubDate>
 <dc:creator>medu</dc:creator>
 <guid isPermaLink="false">1893 at http://www.oehive.org</guid>
</item>
<item>
 <title>Introduction to the parameter object</title>
 <link>http://www.oehive.org/node/1625</link>
 <description>&lt;p&gt;I&#039;m reading Martin Fowler&#039;s refactoring and will work out some of his methods (which also apply to building new software) in this blog. Read this to get some background info:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://sourcemaking.com/refactoring/introduce-parameter-object&quot; title=&quot;http://sourcemaking.com/refactoring/introduce-parameter-object&quot;&gt;http://sourcemaking.com/refactoring/introduce-parameter-object&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.refactoring.com/catalog/introduceParameterObject.html&quot; title=&quot;http://www.refactoring.com/catalog/introduceParameterObject.html&quot;&gt;http://www.refactoring.com/catalog/introduceParameterObject.html&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://martinfowler.com/ap2/range.html&quot; title=&quot;http://martinfowler.com/ap2/range.html&quot;&gt;http://martinfowler.com/ap2/range.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Below a simple daterangeparameter object, and therebelow a procedure using the daterange object.&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/213&quot; class=&quot;og_links&quot;&gt;Miscellaneous Group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1625&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1625#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/769">oo</category>
 <category domain="http://www.oehive.org/taxonomy/term/768">parameter object</category>
 <category domain="http://www.oehive.org/taxonomy/term/142">Code Samples</category>
 <category domain="http://www.oehive.org/taxonomy/term/133">Coding Standards and Best Practice</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <group domain="http://www.oehive.org/node/213">Miscellaneous Group</group>
 <pubDate>Mon, 18 Jan 2010 14:03:18 +0000</pubDate>
 <dc:creator>Stefan</dc:creator>
 <guid isPermaLink="false">1625 at http://www.oehive.org</guid>
</item>
<item>
 <title>Using Object Oriented Programming For Custom Programming In A SaaS Application</title>
 <link>http://www.oehive.org/node/1469</link>
 <description>&lt;p&gt;In the SaaS world, often customers will want their own customizations into the source code specific to how they want to do business with your software.&lt;/p&gt;
&lt;p&gt;Here is a point where object oriented programming stands out.  By crafting your programming in such a way that basic functionality is enhanced - you can use different classes specific to particular customers for enhanced implementation.&lt;/p&gt;
&lt;p&gt;Since we are going to potentially be using one of multiple classes, we need to have an interface describing the methods available in the class.&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/667&quot; class=&quot;og_links&quot;&gt;ABL(4GL) General Programming Group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1469&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1469#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/603">SaaS Dynamic Programming</category>
 <category domain="http://www.oehive.org/taxonomy/term/133">Coding Standards and Best Practice</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <category domain="http://www.oehive.org/taxonomy/term/292">Web Services &amp;amp; Other Integration Technologies</category>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <group domain="http://www.oehive.org/node/667">ABL(4GL) General Programming Group</group>
 <pubDate>Tue, 21 Apr 2009 06:20:45 +0000</pubDate>
 <dc:creator>Scott Auge</dc:creator>
 <guid isPermaLink="false">1469 at http://www.oehive.org</guid>
</item>
<item>
 <title>OOP Mail Classes in Progress ABL/4GL Available</title>
 <link>http://www.oehive.org/node/1435</link>
 <description>&lt;p&gt;A new library of Amduus Classes I am putting together includes some code for sending email in Progress 10.1a or better programs.&lt;/p&gt;
&lt;p&gt;Example call in HTML with embedded images and an attachment.&lt;/p&gt;
&lt;p&gt;define variable M as com.amduus.mail.MailBySendmail no-undo.&lt;br /&gt;
define variable HTML as character no-undo.&lt;/p&gt;
&lt;p&gt;M = new com.amduus.mail.MailBySendmail().&lt;/p&gt;
&lt;p&gt;M:ToEmail = &quot;sauge@localhost&quot;.&lt;br /&gt;
M:FromEmail = &quot;root@localhost&quot;.&lt;br /&gt;
M:BCCEmail = &quot;root@localhost&quot;.&lt;br /&gt;
M:Subject = &quot;Test 1&quot;.&lt;/p&gt;
&lt;p&gt;HTML = &quot;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&quot;&lt;br /&gt;
     + &#039;This is a &amp;lt;b&amp;gt;test&amp;lt;/b&amp;gt; &amp;lt;img src=&quot;cid:y1&quot;&amp;gt; email&#039;&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/667&quot; class=&quot;og_links&quot;&gt;ABL(4GL) General Programming Group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1435&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1435#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <enclosure url="http://www.oehive.org/files/amduusclasses.2009063223318.zip" length="14756" type="application/zip" />
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <group domain="http://www.oehive.org/node/667">ABL(4GL) General Programming Group</group>
 <pubDate>Thu, 05 Mar 2009 03:58:00 +0000</pubDate>
 <dc:creator>Scott Auge</dc:creator>
 <guid isPermaLink="false">1435 at http://www.oehive.org</guid>
</item>
<item>
 <title>Book on object oriented programming available</title>
 <link>http://www.oehive.org/node/1431</link>
 <description>&lt;p&gt;I have a book on object oriented programming in the ABL language available at &lt;a href=&quot;http://www.lulu.com/content/paperback_book/discussions_of_object_oriented_programming_in_progress_openedge_101x/4609181&quot; title=&quot;http://www.lulu.com/content/paperback_book/discussions_of_object_oriented_programming_in_progress_openedge_101x/4609181&quot;&gt;http://www.lulu.com/content/paperback_book/discussions_of_object_oriente...&lt;/a&gt;&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/ooabl&quot; class=&quot;og_links&quot;&gt;Object-Oriented ABL Techniques&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description>
 <comments>http://www.oehive.org/node/1431#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/594">OOP Programming</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <group domain="http://www.oehive.org/node/667">ABL(4GL) General Programming Group</group>
 <group domain="http://www.oehive.org/node/1273">Adverts and Commercial Group</group>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <pubDate>Tue, 03 Mar 2009 19:33:51 +0000</pubDate>
 <dc:creator>Scott Auge</dc:creator>
 <guid isPermaLink="false">1431 at http://www.oehive.org</guid>
</item>
<item>
 <title>Include Unit Code at the bottom of your class files</title>
 <link>http://www.oehive.org/node/1402</link>
 <description>&lt;p&gt;One of the important things in software development is to do unit testing - that is a set of tests the programmer can do on a piece of code to be assured it is most likely working the way one wants it to.&lt;/p&gt;
&lt;p&gt;Surprisingly it is rare to find unit test code as part of a source code file.  If it is created at all (horror), it is usually tucked away on some developers disk someplace or simply thrown away!&lt;/p&gt;
&lt;p&gt;What I have found helpful for myself as well as others working the same code, is to place a comment at the end of the program with the unit test code.&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/667&quot; class=&quot;og_links&quot;&gt;ABL(4GL) General Programming Group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1402&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1402#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/587">Unit Testing</category>
 <category domain="http://www.oehive.org/taxonomy/term/132">Code Quality &amp;amp; Improvement</category>
 <category domain="http://www.oehive.org/taxonomy/term/133">Coding Standards and Best Practice</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <group domain="http://www.oehive.org/node/667">ABL(4GL) General Programming Group</group>
 <pubDate>Wed, 04 Feb 2009 05:32:12 +0000</pubDate>
 <dc:creator>Scott Auge</dc:creator>
 <guid isPermaLink="false">1402 at http://www.oehive.org</guid>
</item>
<item>
 <title>OO classes in subversion</title>
 <link>http://www.oehive.org/node/1211</link>
 <description>&lt;p&gt;I&#039;ve just uploaded the OO class stuff into subversion, so all the changes and enhancements that are coming can be integrated ;)&lt;/p&gt;
&lt;p&gt;The subversion link is  svn://oehive.org/oosockets/trunk&lt;/p&gt;
&lt;p&gt;Let&#039;s see all those updates ...&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/ooabl&quot; class=&quot;og_links&quot;&gt;Object-Oriented ABL Techniques&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description>
 <comments>http://www.oehive.org/node/1211#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <group domain="http://www.oehive.org/node/194">Hive group</group>
 <group domain="http://www.oehive.org/node/213">Miscellaneous Group</group>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <pubDate>Sat, 05 Jul 2008 15:40:42 +0000</pubDate>
 <dc:creator>jmls</dc:creator>
 <guid isPermaLink="false">1211 at http://www.oehive.org</guid>
</item>
<item>
 <title>OO Sockets in OpenEdge</title>
 <link>http://www.oehive.org/project/OOSockets</link>
 <description>&lt;p&gt;A set of classes and programs to allow you to use client and server sockets in the Openedge ABL&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/194&quot; class=&quot;og_links&quot;&gt;Hive group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description>
 <category domain="http://www.oehive.org/taxonomy/term/503">oo sockets</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <group domain="http://www.oehive.org/node/213">Miscellaneous Group</group>
 <group domain="http://www.oehive.org/node/194">Hive group</group>
 <pubDate>Mon, 30 Jun 2008 06:56:31 +0000</pubDate>
 <dc:creator>jmls</dc:creator>
 <guid isPermaLink="false">1208 at http://www.oehive.org</guid>
</item>
<item>
 <title>OO Socket Sample Code</title>
 <link>http://www.oehive.org/node/1205</link>
 <description>&lt;p&gt;Using sockets with the 4gl and classes is an &quot;interesting&quot; exercise. This book contains examples of how to use classes and sockets for a client and server system. There are examples of how to use the client to connect to a web page and download the source. There is also a client / server system that uses XML to pass messages between the server and clients.&lt;/p&gt;
&lt;h1&gt;
General Principles&lt;br /&gt;
&lt;/h1&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/ooabl&quot; class=&quot;og_links&quot;&gt;Object-Oriented ABL Techniques&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1205&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1205#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/500">Socket OO</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <category domain="http://www.oehive.org/taxonomy/term/150">All Projects</category>
 <enclosure url="http://www.oehive.org/files/dotr.com__0.zip" length="40864" type="application/zip" />
 <group domain="http://www.oehive.org/node/194">Hive group</group>
 <group domain="http://www.oehive.org/node/213">Miscellaneous Group</group>
 <group domain="http://www.oehive.org/ooabl">Object-Oriented ABL Techniques</group>
 <pubDate>Sun, 29 Jun 2008 17:20:13 +0000</pubDate>
 <dc:creator>jmls</dc:creator>
 <guid isPermaLink="false">1205 at http://www.oehive.org</guid>
</item>
<item>
 <title>A STOMP class for connecting to Apache MQ</title>
 <link>http://www.oehive.org/node/1204</link>
 <description>&lt;p&gt;An experiment with Apache MQ&lt;/p&gt;
&lt;br class=&quot;clear&quot; /&gt;&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;ul class=&quot;links&quot;&gt;&lt;li  class=&quot;first last og_links&quot;&gt;&lt;a href=&quot;/node/213&quot; class=&quot;og_links&quot;&gt;Miscellaneous Group&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;http://www.oehive.org/node/1204&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.oehive.org/node/1204#comments</comments>
 <category domain="http://www.oehive.org/taxonomy/term/499">Apache MQ</category>
 <category domain="http://www.oehive.org/taxonomy/term/498">protocol</category>
 <category domain="http://www.oehive.org/taxonomy/term/497">stomp</category>
 <category domain="http://www.oehive.org/taxonomy/term/142">Code Samples</category>
 <category domain="http://www.oehive.org/taxonomy/term/138">Interfaces to Other Languages or Databases</category>
 <category domain="http://www.oehive.org/taxonomy/term/136">OOABL</category>
 <category domain="http://www.oehive.org/taxonomy/term/292">Web Services &amp;amp; Other Integration Technologies</category>
 <enclosure url="http://www.oehive.org/files/stomp.zip" length="4793" type="application/x-zip-compressed" />
 <group domain="http://www.oehive.org/node/213">Miscellaneous Group</group>
 <pubDate>Sun, 29 Jun 2008 11:23:13 +0000</pubDate>
 <dc:creator>c_verbiest</dc:creator>
 <guid isPermaLink="false">1204 at http://www.oehive.org</guid>
</item>
</channel>
</rss>
