<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>foomonger&#039;s blog &#187; signals</title>
	<atom:link href="http://blog.foomonger.com/tag/signals/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.foomonger.com</link>
	<description>Tips and Musings on Software Development, Flash, and Flex</description>
	<lastBuildDate>Wed, 14 Jul 2010 20:18:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>foomonger-swizframework Updated With Swiz 1.0.0 RC1</title>
		<link>http://blog.foomonger.com/2010/05/23/foomonger-swizframework-updated-with-swiz-1-0-0-rc1/</link>
		<comments>http://blog.foomonger.com/2010/05/23/foomonger-swizframework-updated-with-swiz-1-0-0-rc1/#comments</comments>
		<pubDate>Sun, 23 May 2010 07:26:42 +0000</pubDate>
		<dc:creator>Sam Ahn</dc:creator>
				<category><![CDATA[flex]]></category>
		<category><![CDATA[custom processor]]></category>
		<category><![CDATA[resource manager]]></category>
		<category><![CDATA[signals]]></category>
		<category><![CDATA[swiz]]></category>

		<guid isPermaLink="false">http://blog.foomonger.com/?p=164</guid>
		<description><![CDATA[Swiz 1.0.0 RC1 was recently released so I've updated my custom metadata processors to work with it. Head over to Google Code to check out [MediateSignal] and [Resource]. Happy coding...
]]></description>
			<content:encoded><![CDATA[<p><a href="http://swizframework.jira.com/wiki/display/SWIZ/Home">Swiz 1.0.0 RC1</a> was recently released so I've updated my custom metadata processors to work with it. Head over to <a href="http://code.google.com/p/foomonger-swizframework/">Google Code</a> to check out <a href="http://code.google.com/p/foomonger-swizframework/wiki/MediateSignalProcessor">[MediateSignal]</a> and <a href="http://code.google.com/p/foomonger-swizframework/wiki/ResourceProcessor">[Resource]</a>. Happy coding...</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.foomonger.com%2F2010%2F05%2F23%2Ffoomonger-swizframework-updated-with-swiz-1-0-0-rc1%2F&amp;linkname=foomonger-swizframework%20Updated%20With%20Swiz%201.0.0%20RC1"><img src="http://blog.foomonger.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.foomonger.com/2010/05/23/foomonger-swizframework-updated-with-swiz-1-0-0-rc1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Swiz, Signals, and [MediateSignal]</title>
		<link>http://blog.foomonger.com/2010/02/26/swiz-signals-and-mediatesignal/</link>
		<comments>http://blog.foomonger.com/2010/02/26/swiz-signals-and-mediatesignal/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 04:37:41 +0000</pubDate>
		<dc:creator>Sam Ahn</dc:creator>
				<category><![CDATA[flex]]></category>
		<category><![CDATA[custom processor]]></category>
		<category><![CDATA[signals]]></category>
		<category><![CDATA[swiz]]></category>

		<guid isPermaLink="false">http://blog.foomonger.com/?p=107</guid>
		<description><![CDATA[Joel Hooks created this RobotLegs/Signals demo. Ben Clinkinbeard then created this Swiz-version of Joel's demo. I then took Ben's demo and Swiz-ified it even more by using a custom [MediateSignal] processor. Here's the source.
[MediateSignal] is the Signal equivalent of [Mediate]. Here's an example:
&#91;MediateSignal&#40;&#34;galleryUpdatedSignal&#34;&#41;&#93;
public function galleryUpdated&#40;gallery:Gallery&#41;:void
[MediateSignal] takes a Signal Bean name or type and adds the decorated method to [...]]]></description>
			<content:encoded><![CDATA[<p>Joel Hooks created this <a title="Robotlegs Image Gallery Example using AS3-Signals and the Presentation Model" href="http://joelhooks.com/2010/01/16/robotlegs-image-gallery-example-using-as3-signals-and-the-presentation-model/" target="_blank">RobotLegs/Signals demo</a>. Ben Clinkinbeard then created <a title="Swiz, AS3-Signals, and [Inject] FTW" href="http://www.benclinkinbeard.com/2010/02/swiz-as3-signals-and-inject-ftw/" target="_blank">this Swiz-version</a> of Joel's demo. I then took Ben's demo and Swiz-ified it even more by using a custom [MediateSignal] processor. Here's the <a title="RobotLegsConversion2" href="http://blog.foomonger.com/pub/2010/02/26/swiz-signals-mediatesignal/srcview/index.html" target="_blank">source</a>.</p>
<p>[MediateSignal] is the Signal equivalent of [Mediate]. Here's an example:</p>
<pre class="actionscript"><span style="color: #66cc66;">&#91;</span>MediateSignal<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;galleryUpdatedSignal&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> galleryUpdated<span style="color: #66cc66;">&#40;</span>gallery:Gallery<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span></pre>
<p>[MediateSignal] takes a Signal Bean name or type and adds the decorated method to the Signal (see GalleryThumbnailsPresentationModel for examples).</p>
<p>This is what I changed from Ben's demo:</p>
<ul>
<li>Created the MediateSignalProcessor</li>
<li>Added [MediateSignal] metadata to the Signal listeners</li>
<li>Made the Signal listeners public</li>
<li>Named the Signal Beans</li>
<li>Removed [PostConstruct] methods that added the Signal listeners</li>
<li>Removed injected Signals that weren't being using to dispatch</li>
</ul>
<p>[MediateSignal] makes using Signals in Swiz very parallel to using Events (especially if you define the Event dispatcher as a Bean and inject it by name). And just like Events, you only need to [Inject] the Signals into Beans who are dispatching Signals. I was pretty excited to create my first custom processor and play with Signals for the first time. Let me know what you think!</p>
<p><span style="color: #999999;">Disclaimer: I set up MediateSignalProcessor to also handle DeluxeSignals and remove listeners, though to be honest I didn't test those.</span></p>
<p><span style="color: #999999;"><span style="color: #0000ff;">* Update: I've posted the processor on </span><a title="foomonger-swizframework" href="http://code.google.com/p/foomonger-swizframework/" target="_blank"><span style="color: #0000ff;">Google Code</span></a><span style="color: #0000ff;"> and it contains unit tests (including DeluxeSignals and removing listeners).</span></span></p>
<p><span style="color: #999999;"><span style="color: #0000ff;">** Update: I've created a bare-bones example application: <a href="http://www.foomonger.com/swizframework/MediateSignalProcessorExample/MediateSignalProcessorExample.swf" target="_blank">SWF</a> and <a href="http://www.foomonger.com/swizframework/MediateSignalProcessorExample/srcview/" target="_blank">Source</a>.</span></span></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.foomonger.com%2F2010%2F02%2F26%2Fswiz-signals-and-mediatesignal%2F&amp;linkname=Swiz%2C%20Signals%2C%20and%20%5BMediateSignal%5D"><img src="http://blog.foomonger.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.foomonger.com/2010/02/26/swiz-signals-and-mediatesignal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
