<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
	>
<channel>
	<title>Comments on: AIR Cairngorm 2.0</title>
	<atom:link href="http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/</link>
	<description></description>
	<pubDate>Tue, 16 Mar 2010 05:14:24 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: mikeydev</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141747</link>
		<dc:creator>mikeydev</dc:creator>
		<pubDate>Thu, 12 Nov 2009 23:24:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141747</guid>
		<description>Sorry forgot to add my link, please visit my new blog</description>
		<content:encoded><![CDATA[<p>Sorry forgot to add my link, please visit my new blog</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mikeydev</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141746</link>
		<dc:creator>mikeydev</dc:creator>
		<pubDate>Thu, 12 Nov 2009 23:22:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141746</guid>
		<description>Hey Vane, nice comment, I too had the same problems with errors in the string being passed in Eric's class for sqlstatement. I simply extended the appropriate class like this and now I pass the sqlstatement object, it works a treat, thx for your work Eric:

package com.wmanager.control.other.customClasses
{
	import com.ericfeminella.air.cairngorm.business.ISQLResponder;
	import com.ericfeminella.air.cairngorm.business.SQLService;
	
	import flash.data.SQLStatement;
	import flash.net.Responder;
	
	public class SQLStatementService extends SQLService
	{
		public function SQLStatementService()
		{
			super();
		}
		public function executeStatementAsync(statement:SQLStatement, responder:ISQLResponder, dataType:Class = null, prefetch:int = -1.0) : void
		{
			_statement = statement;
			_statement.sqlConnection = _connection;
			//_statement.text = statement;
			
			if ( dataType != null )
			{
				_statement.itemClass = dataType;
			}
			
			_statement.execute( prefetch, new Responder( responder.result, responder.fault) );
		}
		
	}
}</description>
		<content:encoded><![CDATA[<p>Hey Vane, nice comment, I too had the same problems with errors in the string being passed in Eric&#8217;s class for sqlstatement. I simply extended the appropriate class like this and now I pass the sqlstatement object, it works a treat, thx for your work Eric:</p>
<p>package com.wmanager.control.other.customClasses<br />
{<br />
	import com.ericfeminella.air.cairngorm.business.ISQLResponder;<br />
	import com.ericfeminella.air.cairngorm.business.SQLService;</p>
<p>	import flash.data.SQLStatement;<br />
	import flash.net.Responder;</p>
<p>	public class SQLStatementService extends SQLService<br />
	{<br />
		public function SQLStatementService()<br />
		{<br />
			super();<br />
		}<br />
		public function executeStatementAsync(statement:SQLStatement, responder:ISQLResponder, dataType:Class = null, prefetch:int = -1.0) : void<br />
		{<br />
			_statement = statement;<br />
			_statement.sqlConnection = _connection;<br />
			//_statement.text = statement;</p>
<p>			if ( dataType != null )<br />
			{<br />
				_statement.itemClass = dataType;<br />
			}</p>
<p>			_statement.execute( prefetch, new Responder( responder.result, responder.fault) );<br />
		}</p>
<p>	}<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darrin</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141712</link>
		<dc:creator>Darrin</dc:creator>
		<pubDate>Mon, 14 Sep 2009 07:48:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141712</guid>
		<description>Good Day,
  I am also a big fan of cairngorm, like the fact that it is a tight framework.  I am tring to get into air apps and just wanted to know what needs to be done to get your examples to work.  I added your swc and the normal cairngorm swc, but I am still getting errors when I try to compile.  Is there something I am missing in the build paths?

Thanks</description>
		<content:encoded><![CDATA[<p>Good Day,<br />
  I am also a big fan of cairngorm, like the fact that it is a tight framework.  I am tring to get into air apps and just wanted to know what needs to be done to get your examples to work.  I added your swc and the normal cairngorm swc, but I am still getting errors when I try to compile.  Is there something I am missing in the build paths?</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vane</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141690</link>
		<dc:creator>vane</dc:creator>
		<pubDate>Tue, 21 Jul 2009 08:50:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141690</guid>
		<description>Hi, first thanks very much for your air-cairngorm, I'm a big fan of cairngorm and I use it for my every project cause of it simplicity and ability to extend. 
I'm playing with air-cairngorm  now and I had some difficulties when mapping data types to SQL cause there are affiliates in air SQLite. I got problems with it, especially with DATE class. 
I modified it a bit to get rid of the string and now in SQLService I simply pass the SQLStatement instead of string so I get rid of the string class and also the speed is better with large statements.
 I now pass the parameters ex. 
SQL statement: INSERT_USER = INSERT INTO users (username, password, some_date, todo) VALUES( :username, :password, :some_date, :todo)

and sample function in the delegate now looks like this

public function addUser(user:UserVO) : void
{	
	var statement:SQLStatement = new SQLStatement();
	
	statement.text = SQLStatementConfiguration.INSERT_USER;
	statement.parameters[':username'] = user.username;
	statement.parameters[':password'] = user.password;
	statement.parameters[':some_date']= user.date;
	statement.parameters[':todo']     = user.todo;

	sql.openConnection(statement, responder, UserVO);
}

where UserVO is simply class with

public var username:String;
public var password:String;
public var date:Date;
public var todo:Boolean;

I hope that it makes sense.
Maby you got better idea how to map the objects to the table.
Thanks.</description>
		<content:encoded><![CDATA[<p>Hi, first thanks very much for your air-cairngorm, I&#8217;m a big fan of cairngorm and I use it for my every project cause of it simplicity and ability to extend.<br />
I&#8217;m playing with air-cairngorm  now and I had some difficulties when mapping data types to SQL cause there are affiliates in air SQLite. I got problems with it, especially with DATE class.<br />
I modified it a bit to get rid of the string and now in SQLService I simply pass the SQLStatement instead of string so I get rid of the string class and also the speed is better with large statements.<br />
 I now pass the parameters ex.<br />
SQL statement: INSERT_USER = INSERT INTO users (username, password, some_date, todo) VALUES( :username, :password, :some_date, :todo)</p>
<p>and sample function in the delegate now looks like this</p>
<p>public function addUser(user:UserVO) : void<br />
{<br />
	var statement:SQLStatement = new SQLStatement();</p>
<p>	statement.text = SQLStatementConfiguration.INSERT_USER;<br />
	statement.parameters[':username'] = user.username;<br />
	statement.parameters[':password'] = user.password;<br />
	statement.parameters[':some_date']= user.date;<br />
	statement.parameters[':todo']     = user.todo;</p>
<p>	sql.openConnection(statement, responder, UserVO);<br />
}</p>
<p>where UserVO is simply class with</p>
<p>public var username:String;<br />
public var password:String;<br />
public var date:Date;<br />
public var todo:Boolean;</p>
<p>I hope that it makes sense.<br />
Maby you got better idea how to map the objects to the table.<br />
Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141685</link>
		<dc:creator>Stefan</dc:creator>
		<pubDate>Thu, 25 Jun 2009 14:13:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141685</guid>
		<description>Hi,
the examples show two different apps for handling synchronous and asynchronous requests. 
What is the best way to handle synchronous and aynchronous db requests in the same application?

Thank you!
Stefan</description>
		<content:encoded><![CDATA[<p>Hi,<br />
the examples show two different apps for handling synchronous and asynchronous requests.<br />
What is the best way to handle synchronous and aynchronous db requests in the same application?</p>
<p>Thank you!<br />
Stefan</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: doug</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141677</link>
		<dc:creator>doug</dc:creator>
		<pubDate>Thu, 11 Jun 2009 22:38:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141677</guid>
		<description>Ah, I found the event dispatcher in SelectUsersCommand.as.  I thought it was being manually dispatched, I ran profiling on it to see what classes were being called during spin up and saw SelectUsersCommand in the list which led me to it.
Thanks for the lib!</description>
		<content:encoded><![CDATA[<p>Ah, I found the event dispatcher in SelectUsersCommand.as.  I thought it was being manually dispatched, I ran profiling on it to see what classes were being called during spin up and saw SelectUsersCommand in the list which led me to it.<br />
Thanks for the lib!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Merc</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-141654</link>
		<dc:creator>Merc</dc:creator>
		<pubDate>Sun, 29 Mar 2009 21:46:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-141654</guid>
		<description>Hi Eric,

I have an application which lets the user create and access multiple SQLite files on the fly. What would be the best way to add identifiable SQLite connections at runtime?

Thanks a lot in advance and thanks for a great wrapper.</description>
		<content:encoded><![CDATA[<p>Hi Eric,</p>
<p>I have an application which lets the user create and access multiple SQLite files on the fly. What would be the best way to add identifiable SQLite connections at runtime?</p>
<p>Thanks a lot in advance and thanks for a great wrapper.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mark</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-104350</link>
		<dc:creator>mark</dc:creator>
		<pubDate>Sat, 30 Aug 2008 03:23:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-104350</guid>
		<description>how to use "create table" to define fields type and fields in air caingorm?

Thanks

M</description>
		<content:encoded><![CDATA[<p>how to use &#8220;create table&#8221; to define fields type and fields in air caingorm?</p>
<p>Thanks</p>
<p>M</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mark</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-104346</link>
		<dc:creator>mark</dc:creator>
		<pubDate>Sat, 30 Aug 2008 03:10:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-104346</guid>
		<description>I have fixed the error.

I have many tables in the SQlite database , how to define all the table names.

Thanks

Mark</description>
		<content:encoded><![CDATA[<p>I have fixed the error.</p>
<p>I have many tables in the SQlite database , how to define all the table names.</p>
<p>Thanks</p>
<p>Mark</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mark</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-104180</link>
		<dc:creator>mark</dc:creator>
		<pubDate>Fri, 29 Aug 2008 21:29:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-104180</guid>
		<description>I get  the following error:

Unable to resolve resource bundle "queries" for locale "en_US".

How to fix this.

Thanks

M</description>
		<content:encoded><![CDATA[<p>I get  the following error:</p>
<p>Unable to resolve resource bundle &#8220;queries&#8221; for locale &#8220;en_US&#8221;.</p>
<p>How to fix this.</p>
<p>Thanks</p>
<p>M</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-103479</link>
		<dc:creator>Jason</dc:creator>
		<pubDate>Thu, 28 Aug 2008 20:21:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-103479</guid>
		<description>Hey Eric - I just upgraded from your initial blog post version which I had been tweaking.  It was pretty smooth update and I'm happy to be back on the official version.  My AbstractAIRDelegate is acting as an adapter, implements ISQLResponder and handles the result/fault events internally, converts them to regular mx.rpc Events and passed those back to the initial command/responder.  I find this nice and clean so only the delegate communicates with AIRCairngorm and my command and responder classes only deal with VOs and rpc Events.  If felt like the command/responder was tightly coupled with AIRCairngorm otherwise, but maybe it's just me?!

Anyway I have one question regarding execute and executeAsync.  Since this behavior is set when the connection is opened - do you think it would be a good idea to keep track of the connection type and throw an exception if execute is called when openAsync was specified, or vice versa?  I don't see in the code where this would be handled.

Thanks for providing this little API, it's extremely handy.</description>
		<content:encoded><![CDATA[<p>Hey Eric - I just upgraded from your initial blog post version which I had been tweaking.  It was pretty smooth update and I&#8217;m happy to be back on the official version.  My AbstractAIRDelegate is acting as an adapter, implements ISQLResponder and handles the result/fault events internally, converts them to regular mx.rpc Events and passed those back to the initial command/responder.  I find this nice and clean so only the delegate communicates with AIRCairngorm and my command and responder classes only deal with VOs and rpc Events.  If felt like the command/responder was tightly coupled with AIRCairngorm otherwise, but maybe it&#8217;s just me?!</p>
<p>Anyway I have one question regarding execute and executeAsync.  Since this behavior is set when the connection is opened - do you think it would be a good idea to keep track of the connection type and throw an exception if execute is called when openAsync was specified, or vice versa?  I don&#8217;t see in the code where this would be handled.</p>
<p>Thanks for providing this little API, it&#8217;s extremely handy.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eric</title>
		<link>http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/comment-page-1/#comment-77116</link>
		<dc:creator>eric</dc:creator>
		<pubDate>Wed, 23 Jul 2008 03:42:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericfeminella.com/blog/2008/06/22/air-cairngorm-20/#comment-77116</guid>
		<description>Hey Marcel.

In regards to the SQLStatementHelper I have not had any injection issues because of this therefore I haven't changed the implementation in this release. With that being said I do plan to make some changes to this implementation in a future update.

In regards to the item class it is a non-issue in the executeAsync method as the SQLStatement object is being re-instantiated in every call. However it is not being re-instantiated in the execute method so I will add an update to this soon.

- Eric</description>
		<content:encoded><![CDATA[<p>Hey Marcel.</p>
<p>In regards to the SQLStatementHelper I have not had any injection issues because of this therefore I haven&#8217;t changed the implementation in this release. With that being said I do plan to make some changes to this implementation in a future update.</p>
<p>In regards to the item class it is a non-issue in the executeAsync method as the SQLStatement object is being re-instantiated in every call. However it is not being re-instantiated in the execute method so I will add an update to this soon.</p>
<p>- Eric</p>
]]></content:encoded>
	</item>
</channel>
</rss>
