<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Artisan Numérique</title>
  <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1267"/>
  <link rel="self" type="application/atom+xml" href="http://artisan.karma-lab.net/node/1267/atom/feed"/>
  <id>http://artisan.karma-lab.net/node/1267/atom/feed</id>
  <updated>2008-05-03T20:42:18+02:00</updated>
  <entry>
    <title>TuxDroid Java API - Nouveautés de la 0.4</title>
    <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1267" />
    <id>http://artisan.karma-lab.net/node/1267</id>
    <published>2007-10-04T03:44:45+02:00</published>
    <updated>2008-05-03T20:42:18+02:00</updated>
    <author>
      <name>Anonymous</name>
    </author>
    <category term="TuxDroid" />
    <category term="Aucun" />
    <category term="OK" />
    <category term="Article" />
    <summary type="html"><![CDATA[<p><image id="1"/>
It toke me some time but I hope it worth it. This release now supports all TuxDroid features, even those which are not implemented yet (Sleep, ping, etc). Apart from that, the API now comes with a new TuxManager, a widgets based graphical application. 
</p>
    ]]></summary>
    <content type="html"><![CDATA[<p><image id="1"/>
It toke me some time but I hope it worth it. This release now supports all TuxDroid features, even those which are not implemented yet (Sleep, ping, etc). Apart from that, the API now comes with a new TuxManager, a widgets based graphical application. 
</p>
<!--break-->

	<a name='chapter_1'></a>
  <h2>Core API</h2>
	
<p>This is mainly a reverse ingeneered version of the very clear Python API reworked to fit Java standards.</p>

<ul>
<li>All TuxDroid features (motors, captors, speech, sound, system, etc..) are supported.</li>
<li>Mostly all useful status are accessible by a getXXX() and by events (classical swing system, on event, multiple listeners). To follow the daemon philosophy, getting a status is giving you the value but also generate associated event to listeners.</li>
<li>I rewrote the protocol engine that should be fully thread-safe now, even with re-entrance (getting a status that generate an event that is getting the same status <img src="http://artisan.karma-lab.net/sites/all/modules/contrib/smileys/packs/crystal/wink2.gif" title="Wink" alt="Wink" class="smiley-content"/></li>
<li>Lost Connection recognition and automatic reconnection.</li>
<li>Building process is using Maven. There is now a specific maven repository for all libraries so everything can be build from source very easily (just untar & maven compile)</li>
<li>JavaDoc is included with sources. It's covering about 80% of core API.</li>
</ul>


	<a name='chapter_2'></a>
  <h2>TuxManager</h2>
	
<p>A Swing application that can be seen as the merge of Python Gadget Manager and tuxgi</p>
<ul>
<li>Core UI simply contains a Tuxlet selector, a traces output and a status bar for all important states (AC, RF, TTS, Tuxd, etc..)</li>
<li>All other features are wrapped in a plugin (tuxlets) system.</li>
<li>Tuxlet framework is included in the API).</li>
</ul>

	<a name='chapter_3'></a>
  <h2>Tuxlets</h2>
	
<p>For testing purpose, 3 "tuxlets" (gadgets) are included.</p>
<ul>
<li>"Movement Tuxlet" : basically the same as tuxgi first pane.</li>
<li>"Configuration Tuxlet" : speech test and voice selection, sounds test and management, information pane juste showing all Tux components versions.</li>
<li>"Insight Tuxlet" : just a joke to demonstrate light sensor.</li>
</ul>
<p>
More tuxlets will come later. I already wrote RSS reader, Clock and Weather. They just need a proper configuration panel
</p>

<p>
That's it for now. Just to finish a big thank you to Sonny ( http://geekrc1.free.fr ) who kindly accepted to test the beast and found nice bugs <img src="http://artisan.karma-lab.net/sites/all/modules/contrib/smileys/packs/crystal/wink2.gif" title="Wink" alt="Wink" class="smiley-content"/>
</p>    ]]></content>
  </entry>
</feed>
