[flexcoders] Cairngorm Event Question
Where can I ask a Cairngorm/Flex Event Question? I posted in the Adobe forum, but as usual have not received any replies. The question is how to get something to happen. When the user clicks an item renderer in one grid I want to populate a second grid with data. Here are the relevant parts= UserAA_NmLk_Renderer.mxml: public static const CLICK:String = 'USER_AA_RETRIEVE_EVENT'; override public function set data(value:Object):void { removeAllChildren(); if (value == null || value == ) { return; } super.data = value; var lb2:LinkButton = new LinkButton(); lb2.label = value.individualName + : + value.rspVer; lb2.addEventListener(MouseEvent.CLICK, retrieveList); addChild(lb2); } public function retrieveList(event:Event):void { dispatchEvent(new Event(UserAA_NmLk_Renderer.CLICK, true, false)); } Event.as: public static const USER_AA_RETRIEVE_EVENT:String = UserAARetrieveEvent; Controller.as: addCommand( Events.USER_AA_RETRIEVE_EVENT, UserAARetrieveCommand ); When I step through it I get to the dispatch and the proper label appears in the top grid. But I never get to UserAARetrieveCommand. I am getting very desperate on this and have been fighting it for days. Any help including the problem or where to go with the problem will be greatly appreciated! Jerry
[flexcoders] Cairngorm 2.2.1 with Flex 4
Hi All, I am using Cairngorm 2.2.1 with Flax-4, m getting an runtime error: TypeError: Error #1006: getResourceBundle is not a function. at com.adobe.cairngorm::CairngormError$cinit() at global$init() [C:\dev\swat\projects\ac_emea \Cairngorm\com\adobe\cairngorm\CairngormError.as:41] at RemoteObjects/getService() [C:\dev\swat\projects\ac_emea\\ Cairngorm\com\adobe\cairngorm\business\RemoteObjects.as:79] On some investigation I came to know that Cairngorm 2.2.1 not supports Flex-4, Can any one help me ? Furthermore, I am a beginner in Flex and selected Cairngorm 2.x as a Framework for my project, Is it a good idea to go with ? Regards, Pritesh
Re: [flexcoders] Cairngorm 2.2.1 with Flex 4
Cairngorm 2.x is not officially supported anymore by Adobe. You'd be better of trying to move towards the Parsley framework (w/o) Cairngorm 3 libs. Or you can try a relatively new kid on the block Robotlegs. C From: pritesh_mics pbhaw...@deloitte.com To: flexcoders@yahoogroups.com Sent: Sun, September 5, 2010 12:30:56 PM Subject: [flexcoders] Cairngorm 2.2.1 with Flex 4 Hi All, I am using Cairngorm 2.2.1 with Flax-4, m getting an runtime error: TypeError: Error #1006: getResourceBundle is not a function. at com.adobe.cairngorm::CairngormError$cinit() at global$init() [C:\dev\swat\projects\ac_emea \Cairngorm\com\adobe\cairngorm\CairngormError.as:41] at RemoteObjects/getService() [C:\dev\swat\projects\ac_emea\\ Cairngorm\com\adobe\cairngorm\business\RemoteObjects.as:79] On some investigation I came to know that Cairngorm 2.2.1 not supports Flex-4, Can any one help me ? Furthermore, I am a beginner in Flex and selected Cairngorm 2.x as a Framework for my project, Is it a good idea to go with ? Regards, Pritesh
Re: [flexcoders] Cairngorm 2.2.1 with Flex 4
I recommend Swiz Sent from my Droid On Sep 5, 2010 7:14 AM, claudiu ursica the_bran...@yahoo.com wrote: Cairngorm 2.x is not officially supported anymore by Adobe. You'd be better of trying to move towards the Parsley framework (w/o) Cairngorm 3 libs. Or you can try a relatively new kid on the block Robotlegs. C -- *From:* pritesh_mics pbhaw...@deloitte.com *To:* flexcoders@yahoogroups.com *Sent:* Sun, September 5, 2010 12:30:56 PM *Subject:* [flexcoders] Cairngorm 2.2.1 with Flex 4 Hi All, I am using Cairngorm 2.2.1 with Flax-4, m getting an runtime error: TypeError: Error #...
[flexcoders] Cairngorm/ Command/ AdvancedDataGrid.expandChildrenOf() ?
Hi, I'm working on a cairngorm flex app and have been told to put all business logic inside the CG Command. At the end of the CG Command, I need to get the ADG to expand it's grouping nodes for a particular node. What is the correct way of solving this problem because from my Command, I can't 'see' the view. Should I update the model from the Command and have a ChangeWatcher on the view to run the AdvancedDataGrid.expandChildrenOf() code? Is there a right and wrong way of solving this? Thanks, Nick
Re: [flexcoders] Cairngorm/ Command/ AdvancedDataGrid.expandChildrenOf() ?
Download cairgorm extensions. nbsp;It has classes called Callbacks which basically notifies the view after a command has finished. nbsp;It's perfect for this situation. -Jake -- Sent from my Palm Prē On Apr 18, 2010 1:02 PM, Nick Middleweek lt;n...@middleweek.co.ukgt; wrote: nbsp; Hi, I'm working on a cairngorm flex app and have been told to put all business logic inside the CG Command. At the end of the CG Command, I need to get the ADG to expand it's grouping nodes for a particular node. What is the correct way of solving this problem because from my Command, I can't 'see' the view. Should I update the model from the Command and have a ChangeWatcher on the view to run the AdvancedDataGrid.expandChildrenOf() code? Is there a right and wrong way of solving this? Thanks, Nick
Re: [flexcoders] Cairngorm/ Command/ AdvancedDataGrid.expandChildrenOf() ?
Hi Jake, Thanks for the info... I know this sounds crazy but because of project/ company politics we have extreem difficulty getting 3rd party libraries on the project. Are there any preferred alternative ways? Cheers, Nick On 18 April 2010 19:11, Jake Churchill reyna...@gmail.com wrote: Download cairgorm extensions. It has classes called Callbacks which basically notifies the view after a command has finished. It's perfect for this situation. -Jake -- Sent from my Palm Prē -- On Apr 18, 2010 1:02 PM, Nick Middleweek n...@middleweek.co.uk wrote: Hi, I'm working on a cairngorm flex app and have been told to put all business logic inside the CG Command. At the end of the CG Command, I need to get the ADG to expand it's grouping nodes for a particular node. What is the correct way of solving this problem because from my Command, I can't 'see' the view. Should I update the model from the Command and have a ChangeWatcher on the view to run the AdvancedDataGrid.expandChildrenOf() code? Is there a right and wrong way of solving this? Thanks, Nick
Re: [flexcoders] Cairngorm/ Command/ AdvancedDataGrid.expandChildrenOf() ?
Wel, just tell them it's an upgraded version of the cairngorm SWC. nbsp;You can just replace the SWC in the project and it'd be all good -Jake -- Sent from my Palm Prē On Apr 18, 2010 1:46 PM, Nick Middleweek lt;n...@middleweek.co.ukgt; wrote: nbsp; Hi Jake, Thanks for the info... I know this sounds crazy but because of project/ company politics we have extreem difficulty getting 3rd party libraries on the project. Are there any preferred alternative ways? Cheers, Nick On 18 April 2010 19:11, Jake Churchill lt;reyna...@gmail.comgt; wrote: nbsp; Download cairgorm extensions. nbsp;It has classes called Callbacks which basically notifies the view after a command has finished. nbsp;It's perfect for this situation. -Jake -- Sent from my Palm Prē On Apr 18, 2010 1:02 PM, Nick Middleweek lt;n...@middleweek.co.ukgt; wrote: nbsp; Hi, I'm working on a cairngorm flex app and have been told to put all business logic inside the CG Command. At the end of the CG Command, I need to get the ADG to expand it's grouping nodes for a particular node. What is the correct way of solving this problem because from my Command, I can't 'see' the view. Should I update the model from the Command and have a ChangeWatcher on the view to run the AdvancedDataGrid.expandChildrenOf() code? Is there a right and wrong way of solving this? Thanks, Nick
Re: [flexcoders] Cairngorm/ Command/ AdvancedDataGrid.expandChildrenOf() ?
Hey Jake, Cheers for the response... I've gone with a ChangeWatcher approach. Update the model from the command and I've dropped in the ChangeWatcher in the view, seems to be working but was curious who others would solve this... I'll look into CG Extensions though, cheers for the idea! Nick On 18 April 2010 20:29, Jake Churchill reyna...@gmail.com wrote: Wel, just tell them it's an upgraded version of the cairngorm SWC. You can just replace the SWC in the project and it'd be all good -Jake -- Sent from my Palm Prē -- On Apr 18, 2010 1:46 PM, Nick Middleweek n...@middleweek.co.uk wrote: Hi Jake, Thanks for the info... I know this sounds crazy but because of project/ company politics we have extreem difficulty getting 3rd party libraries on the project. Are there any preferred alternative ways? Cheers, Nick On 18 April 2010 19:11, Jake Churchill reyna...@gmail.com wrote: Download cairgorm extensions. It has classes called Callbacks which basically notifies the view after a command has finished. It's perfect for this situation. -Jake -- Sent from my Palm Prē -- On Apr 18, 2010 1:02 PM, Nick Middleweek n...@middleweek.co.uk wrote: Hi, I'm working on a cairngorm flex app and have been told to put all business logic inside the CG Command. At the end of the CG Command, I need to get the ADG to expand it's grouping nodes for a particular node. What is the correct way of solving this problem because from my Command, I can't 'see' the view. Should I update the model from the Command and have a ChangeWatcher on the view to run the AdvancedDataGrid.expandChildrenOf() code? Is there a right and wrong way of solving this? Thanks, Nick
[flexcoders] Cairngorm Problem with Event and ModelLocator
Hi guys, I'm developing an application with Flex and using Cairngorm framework with the events, commands, controller, delegates and the services for the remote object, because my application will connect with a server side. My component is like that: mx:VDividedBox xmlns:mx=http://www.adobe.com/2006/mxml; creationComplete=initView() width=100% The initView method will execute a CairngormEvent to access to the database and get all the users from my system and how many users i have: [Bindable] public var model:ModelLocator = ModelLocator.getInstance(); private function initView():void{ //Find all the Users in the database var findAllUsersEvent:FindAllUsersEvent = new FindAllUsersEvent(); findAllUsersEvent.dispatch(); var listUsers:ArrayCollection = model.listUsers; var totalRows:int = model.countUsers; } Of course in my ModelLocator i have created the next properties: public var listUsers:ArrayCollection public var countUsers:int; In my command i call the method from the delegate to execute the correct method of the remote object (it means of my java application running in the server). In the result method of the command, i assign the value of each properties. If i debug the application, i get the correct results, but when i check the value of var listUsers:ArrayCollection = model.listUsers; var totalRows:int = model.countUsers; are not refreshed. I can imagine my problem is because Flex is asyncronous and when i assign the values in the initView, maybe the Event is not yet finished. How can i handle this kind of problem? I hope all of you have understood me... Thanks in advance!!
Re: [flexcoders] Cairngorm sub-applications Remoting
Hi, I'm running into this same error with Mate framework, so this is not only Cairngorm-related problem. Trying to make RPC-calls via sub-application loaded with swfloader gives the same error as previously described: No destination with id 'null' is registered with any service. Also I get the same Error: TypeError: Error #1034: Type Coercion failed: cannot convert obj...@a0caee9 to mx.messaging.messages.ErrorMessage. Tried the Security.allowDomain as described in the pdf, but nothing. Erich, did you manage to fix this? Cheers, Jukka Erich Cervantez wrote: Thanks for the link... I've seen that PDF before but hadn't read up to page 40. It's first suggestion recommended loading the sub-application as a sandboxed application by calling Security.allowDomain() in the main application and calling it also on the sub-application's pre-initialization event. Unfortunately there's no difference. --- In flexcoders@yahoogroups.com, Gordon Hirsch gordon.hir...@... wrote: Have you seen the section titled Using RPC and DataServices classes with multi-versioned applications (~p. 40) in this document? http://livedocs.adobe.com/flex/3/loading_applications.pdf If I understand correctly, you are hitting this issue and will need either to use sandboxing or a bootstrap loader. Like you, we have been struggling with sub-applications. For example, it's not clear from the documentation exactly which classes are safe to use in a bootstrap loader. Does anyone have details on what's legal and what's not? --- In flexcoders@yahoogroups.com, Erich Cervantez flex@ wrote: The key thing to note: both applications are able to dispatch service calls on their own when called separately through a browser. Both applications work great on their own. Currently, I'm pointing the source attribute on SWFLoader to the swf location of the sub-application. I'm loading the app into a peer Application Domain (I believe, on the same level as the parent application - both children of the System Domain): _loaderContext.applicationDomain = new ApplicationDomain(); mySubApplication.loaderContext = m_loaderContext; mySubApplication.source = http://xyz:8080/xyz/MySubApp.swf;; I've tried loading the sub-swf into the same App domain, but since they're both Cairngorm apps and use the Cairngorm ServiceLocator singleton, I get the typical singleton error (only one servicelocator can be instantiated). My next option might be to assemble most of the logic in the sub-app into a module. My primary app can load the module and use it's own service framework for remoting (assuming I can get this to work). I can create a separate, light-weight shell container with its own service framework that can also load the same module whenever I want to use the sub-application by itself. Googling this issue isn't working...I have to assume someone out there is creating portal applications that load small sub-apps (in Cairngorm). I have to figure out how they solved this problem... --- In flexcoders@yahoogroups.com, Maciek Sakrejda msakrejda@ wrote: The 'destination null' seems to imply that your Flex-side remoting metadata is fubared. It's trying to contact a destination that was not configured--or somehow got unconfigured through the peer-appdomain swf loading. I've asked about doing something similar with Modules, and was told by Adobe folks on the list that this would be a Bad Idea. However, I believe they suggested separate apps--just as you are doing. Have you tried loading the .swfs into the same appdomain? -- Maciek Sakrejda Truviso, Inc. http://www.truviso.com -Original Message- From: Erich Cervantez flex@ Reply-to: flexcoders@yahoogroups.com To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm sub-applications Remoting Date: Thu, 16 Apr 2009 17:01:51 - Has anyone written two distinct Cairngorm-based applications, each capable of dispatching service calls (via RemoteObject) and tried loading one inside of the other? Essentially I have a parent application that uses SWFLoader to load a sub-application (in a peer Application Domain). The sub-application loads visually within the parent application but service calls from the sub-application result in a runtime error: TypeError: Error #1034: Type Coercion failed: cannot convert obj...@x to mx.messaging.messages.ErrorMessage. JBOSS logs show this: No destination with id 'null' is registered with any service. The first error appears to be a class-aliasing problem, but both of these apps are Cairngorm-based Flex applications...the registerClassAlias method shouldn't be required (besides, I tried that tactic already to no avail). This is the only Flex-equivalent of a bat-signal I can think of ;) Erich -- View this message
[flexcoders] Cairngorm or Mate?
I've been investigating Cairngorm and Mate to be used in conjunction with BlazeDS. Which is 'better', Cairngorm or Mate? Cairngorm seems a lot heavier, Mate easier to understand and more logical. Also, how many of you are using Blazeds with Cairngorm or Mate with? Is there an evolving standard here? Working examples (I've looked everywhere and many of them or partial or non-functional) of the combinations of these 3 tools? Thanks!
[flexcoders] Cairngorm store example - newbie binding question #2
Thank you Tracy for answering my previous question. New one: Why is 'handler' bound to 'confirmOrder' in this snippet? util:Observe source={ ShopModelLocator.getInstance().orderConfirmed } handler={ confirmOrder } / confirmOrder is a function in the same file. Is it just a way to set an initial value? Thanks, Norm
[flexcoders] cairngorm store example - newbie binding question
Greetings Flex pros: In the modified cairngorm store (if you're familiar), file ProductsAndCheckoutControlBar.mxml, there's: mx:Image source={ getProductThumbnailsButton( model.workflowState ) } That function (getProductThumbnailsButton) is not marked as 'bindable' so how does the binding happen? The var model is the only thing marked as bindable in the file. This is the function: public function getProductThumbnailsButton( enforceBining : Number ) : Class { var model : ShopModelLocator = ShopModelLocator.getInstance(); var result : Class = model.assets.thumbOff; if ( model.workflowState == ShopModelLocator.VIEWING_PRODUCTS_IN_THUMBNAILS ) { result = model.assets.thumbOn; } return result; }
RE: [SPAM] [flexcoders] cairngorm store example - newbie binding question
The binding mechanism will cause any function to be called if one of its arguments is bindable and changes. I don't know the particular app, but I suspect model.workflowState is bindable. Bindable really only applies to properties, whether implemented as public variables or as getter/setters. Tracy Spratt, Lariat Services, development services available _ From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of normc_actionscript Sent: Tuesday, November 24, 2009 8:59 PM To: flexcoders@yahoogroups.com Subject: [SPAM] [flexcoders] cairngorm store example - newbie binding question Greetings Flex pros: In the modified cairngorm store (if you're familiar), file ProductsAndCheckoutControlBar.mxml, there's: mx:Image source={ getProductThumbnailsButton( model.workflowState ) } That function (getProductThumbnailsButton) is not marked as 'bindable' so how does the binding happen? The var model is the only thing marked as bindable in the file. This is the function: public function getProductThumbnailsButton( enforceBining : Number ) : Class { var model : ShopModelLocator = ShopModelLocator.getInstance(); var result : Class = model.assets.thumbOff; if ( model.workflowState == ShopModelLocator.VIEWING_PRODUCTS_IN_THUMBNAILS ) { result = model.assets.thumbOn; } return result; }
Re: [flexcoders] Cairngorm Parallel Commands
Ryan, as far as I know, Flash Player does not offer public mutli-thraded APIs. Server Side calls are asynchronous, but I don't know if that's the case in your Commands ? You can also download Cairngorm source and debug. See Alex Blog : http://blogs.adobe.com/aharui/2008/01/ threads_in_actionscript_3.html HTH, Stephane Le 11 sept. 09 à 20:51, krusenet a écrit : I posted this on the adobe forums but this list appears much more active so I'll try here. I'm using Cairngorm and I am trying to execute a set of commands in parallel. One command doesn't depend on the completion of another so they don't fit the SequenceCommand idea. Basically I create two events inside a function and dispatch them one after another (see code below). I only see one event fire. If I comment out the first one then the second one fires so I know my controller is setup fine, but I can never get them both to fire. Any ideas? -Ryan var event1:MyFirstEvent = new MyFirstEvent(); event1.dispatch(); var event2:MySecondEvent = new MySecondEvent(); event2.dispatch(); IBCM : International Bank of Chatenay-Malabry http://www.kiva.org/ lender/stephane4127 - Click on Map View
Re: [flexcoders] Cairngorm Parallel Commands
I don't need threads, and the problem exists if my commands don't even hit a remote server. Firing the cairngorm events one after another just doesn't seem to work reliably. Ryan On Sep 13, 2009 4:58 AM, Stephane Guyot stephane.guyo...@wanadoo.fr wrote: Ryan, as far as I know, Flash Player does not offer public mutli-thraded APIs. Server Side calls are asynchronous, but I don't know if that's the case in your Commands ? You can also download Cairngorm source and debug. See Alex Blog : http://blogs.adobe.com/aharui/2008/01/threads_in_actionscript_3.html HTH, Stephane Le 11 sept. 09 à 20:51, krusenet a écrit : I posted this on the adobe forums but this list appears much more active so I'll try here IBCM : International Bank of Chatenay-Malabry http://www.kiva.org/lender/stephane4127 - Click on Map View
Re: [flexcoders] Cairngorm Parallel Commands
I thought the multi-threaded issue was a bit of a red herring too. You should be able to fire two events, one right after the other, without any need to access multi-threading in the Flash Player. I've done this sort of thing plenty of times without issues. From your code is it not obvious what the problem may be. I would suspect the issue is in one of your events / commands, or how they are registered in the FrontController. Getting the code and stepping through it is a good idea. Even w/o the Cairngorm source, you can step over the code you have to make sure that both events are fired. Ryan Kruse wrote: I don't need threads, and the problem exists if my commands don't even hit a remote server. Firing the cairngorm events one after another just doesn't seem to work reliably. Ryan On Sep 13, 2009 4:58 AM, Stephane Guyot stephane.guyo...@wanadoo.fr mailto:stephane.guyo...@wanadoo.fr wrote: Ryan, as far as I know, Flash Player does not offer public mutli-thraded APIs. Server Side calls are asynchronous, but I don't know if that's the case in your Commands ? You can also download Cairngorm source and debug. See Alex Blog : http://blogs.adobe.com/aharui/2008/01/threads_in_actionscript_3.html http://blogs.adobe.com/aharui/2008/01/threads_in_actionscript_3.html HTH, Stephane Le 11 sept. 09 à 20:51, krusenet a écrit : I posted this on the adobe forums but this list appears much more active so I'll try here IBCM : International Bank of Chatenay-Malabry http://www.kiva.org/lender/stephane4127 http://www.kiva.org/lender/stephane4127 - Click on Map View -- Jeffry Houser, Technical Entrepreneur Adobe Community Expert: http://tinyurl.com/684b5h http://www.twitter.com/reboog711 | Phone: 203-379-0773 -- Easy to use Interface Components for Flex Developers http://www.flextras.com?c=104 -- http://www.theflexshow.com http://www.jeffryhouser.com -- Part of the DotComIt Brain Trust
[flexcoders] Cairngorm Parallel Commands
I posted this on the adobe forums but this list appears much more active so I'll try here. I'm using Cairngorm and I am trying to execute a set of commands in parallel. One command doesn't depend on the completion of another so they don't fit the SequenceCommand idea. Basically I create two events inside a function and dispatch them one after another (see code below). I only see one event fire. If I comment out the first one then the second one fires so I know my controller is setup fine, but I can never get them both to fire. Any ideas? -Ryan var event1:MyFirstEvent = new MyFirstEvent(); event1.dispatch(); var event2:MySecondEvent = new MySecondEvent(); event2.dispatch();
Re: [flexcoders] cairngorm convention: vo or model?
I don't have a ModelLocator, just one or more Models :) but yes, that's what goes in the model package. I have my own MVC framework, based on Cairngorm and ARP. ARP is what I started out with in AS2 (Flash) and Cairngorm is what most people moved over to when AS3 and/or Flex 2 came out. As already mentioned, I find Cairngorm has a few things backwards, so I threw together my own MVC thing. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Friday, August 07, 2009 7:21 AM Subject: RE: [flexcoders] cairngorm convention: vo or model? bindable, typed data object (which may or may not get sent across the wire). Cool, that definition would take care of all 3 points I originally mentioned. So, what do you actually put into the model package? Is it just the ModelLocator? cheers, -Jorge
RE: [flexcoders] cairngorm convention: vo or model?
I'm also ending up with my own MVC thing... but as a result of mis-interpreting and incorrectly implementing Cairngorm rather than consciously deciding to do so :) Thanks for the help! -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Muzak Sent: 07 August 2009 11:12 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? I don't have a ModelLocator, just one or more Models :) but yes, that's what goes in the model package. I have my own MVC framework, based on Cairngorm and ARP. ARP is what I started out with in AS2 (Flash) and Cairngorm is what most people moved over to when AS3 and/or Flex 2 came out. As already mentioned, I find Cairngorm has a few things backwards, so I threw together my own MVC thing. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Friday, August 07, 2009 7:21 AM Subject: RE: [flexcoders] cairngorm convention: vo or model? bindable, typed data object (which may or may not get sent across the wire). Cool, that definition would take care of all 3 points I originally mentioned. So, what do you actually put into the model package? Is it just the ModelLocator? cheers, -Jorge -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
Re: [flexcoders] cairngorm convention: vo or model?
Take a look at David Tucker's tutorials about Cairngorm, they will give you some background. HTH On Fri, Aug 7, 2009 at 7:39 AM, Jorge Maiquez jmaiq...@yahoo.com wrote: I'm also ending up with my own MVC thing... but as a result of mis-interpreting and incorrectly implementing Cairngorm rather than consciously deciding to do so :) Thanks for the help! -Original Message- From: flexcoders@yahoogroups.com flexcoders%40yahoogroups.com [mailto: flexcoders@yahoogroups.com flexcoders%40yahoogroups.com] On Behalf Of Muzak Sent: 07 August 2009 11:12 To: flexcoders@yahoogroups.com flexcoders%40yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? I don't have a ModelLocator, just one or more Models :) but yes, that's what goes in the model package. I have my own MVC framework, based on Cairngorm and ARP. ARP is what I started out with in AS2 (Flash) and Cairngorm is what most people moved over to when AS3 and/or Flex 2 came out. As already mentioned, I find Cairngorm has a few things backwards, so I threw together my own MVC thing. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com jmaiquez%40yahoo.com To: flexcoders@yahoogroups.com flexcoders%40yahoogroups.com Sent: Friday, August 07, 2009 7:21 AM Subject: RE: [flexcoders] cairngorm convention: vo or model? bindable, typed data object (which may or may not get sent across the wire). Cool, that definition would take care of all 3 points I originally mentioned. So, what do you actually put into the model package? Is it just the ModelLocator? cheers, -Jorge -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links -- /** * Pedro Sena * Systems Architect * Sun Certified Java Programmer * Sun Certified Web Component Developer */
RE: [flexcoders] cairngorm convention: vo or model?
Yeah, I did that already (that's where I got my package structure from), but maybe it's time for another look :p Thanks! From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Pedro Sena Sent: 07 August 2009 13:22 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Take a look at David Tucker's tutorials about Cairngorm, they will give you some background. HTH On Fri, Aug 7, 2009 at 7:39 AM, Jorge Maiquez jmaiq...@yahoo.com wrote: I'm also ending up with my own MVC thing... but as a result of mis-interpreting and incorrectly implementing Cairngorm rather than consciously deciding to do so :) Thanks for the help! -Original Message- From: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com [mailto:flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com ] On Behalf Of Muzak Sent: 07 August 2009 11:12 To: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? I don't have a ModelLocator, just one or more Models :) but yes, that's what goes in the model package. I have my own MVC framework, based on Cairngorm and ARP. ARP is what I started out with in AS2 (Flash) and Cairngorm is what most people moved over to when AS3 and/or Flex 2 came out. As already mentioned, I find Cairngorm has a few things backwards, so I threw together my own MVC thing. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com mailto:jmaiquez%40yahoo.com To: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com Sent: Friday, August 07, 2009 7:21 AM Subject: RE: [flexcoders] cairngorm convention: vo or model? bindable, typed data object (which may or may not get sent across the wire). Cool, that definition would take care of all 3 points I originally mentioned. So, what do you actually put into the model package? Is it just the ModelLocator? cheers, -Jorge -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62 079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links -- /** * Pedro Sena * Systems Architect * Sun Certified Java Programmer * Sun Certified Web Component Developer */ image001.jpg
[flexcoders] cairngorm convention: vo or model?
I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I'm trying to decide where to place some of my data storing/transferring classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix VO and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don't postfix VO) I'm working with someone who does (1) even when the class is never sent across the wire. What's the right way to do this? And also: I've read somewhere that VO's should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
Re: [flexcoders] cairngorm convention: vo or model?
Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
RE: [flexcoders] cairngorm convention: vo or model?
What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO), then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu _ From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge image002.jpg
Re: [flexcoders] cairngorm convention: vo or model?
You are right, If your data is only transport stuff and then get rid of it it does not justify to put it in the model. If you need your data displayed in the view then your data will probably be in the model. It depends on your business case. The VO is just a name in the end... you can label a class with VO or not it is how you use it what matters. You can transport data with VO objects (classes with no methods) and put it inside other model classes (put a clone method inside that class to move data from VO). But in many cases this is not justified. For example you want to login, you get the username and pass form the textfield inside a VO. Attach that VO as a payload to the cairngorm event and send it to the server via command/delegate etc ... That is a case where you just transport data ... no need ot store it in the model ... If you get data from the server like some products and want to display them in the view, you can pu them in the model and use the model as a dataprovider for a list or whatever ... C From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 4:50:14 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO) , then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From:flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu From:Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
RE: [flexcoders] cairngorm convention: vo or model?
Ok, so if I’m understanding you correctly, you don’t have a problem storing a VO in some part of the model (assuming that the VO is used for both transport and storage)? In my Cairngorm project, the directory structure looks like this: business control commands events model view vo So if I do what you suggest, and allow for a VO to reside in the model, then the model will contain stuff that does not reside in the model directory, which feels kinda weird to me. I know I’m being very fussy over something very trivial :-) From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of claudiu ursica Sent: 06 August 2009 16:01 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? You are right, If your data is only transport stuff and then get rid of it it does not justify to put it in the model. If you need your data displayed in the view then your data will probably be in the model. It depends on your business case. The VO is just a name in the end... you can label a class with VO or not it is how you use it what matters. You can transport data with VO objects (classes with no methods) and put it inside other model classes (put a clone method inside that class to move data from VO). But in many cases this is not justified. For example you want to login, you get the username and pass form the textfield inside a VO. Attach that VO as a payload to the cairngorm event and send it to the server via command/delegate etc ... That is a case where you just transport data ... no need ot store it in the model ... If you get data from the server like some products and want to display them in the view, you can pu them in the model and use the model as a dataprovider for a list or whatever ... C _ From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 4:50:14 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO) , then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From: flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu _ From: Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge image001.jpg
Re: [flexcoders] cairngorm convention: vo or model?
How about if let's say you use classes from an external library in you model? It won't even be in you project structure. it will be from your libs where the swc's reside...You can clone vo's into model classes but it seems such a waste to me ... C From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 6:42:16 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? Ok, so if I’m understanding you correctly, you don’t have a problem storing a VO in some part of the model (assuming that the VO is used for both transport and storage)? In my Cairngorm project, the directory structure looks like this: business control commands events model view vo So if I do what you suggest, and allow for a VO to reside in the model, then the model will contain stuff that does not reside in the model directory, which feels kinda weird to me. I know I’m being very fussy over something very trivial :-) From:flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 16:01 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? You are right, If your data is only transport stuff and then get rid of it it does not justify to put it in the model. If you need your data displayed in the view then your data will probably be in the model. It depends on your business case. The VO is just a name in the end... you can label a class with VO or not it is how you use it what matters. You can transport data with VO objects (classes with no methods) and put it inside other model classes (put a clone method inside that class to move data from VO). But in many cases this is not justified. For example you want to login, you get the username and pass form the textfield inside a VO. Attach that VO as a payload to the cairngorm event and send it to the server via command/delegate etc ... That is a case where you just transport data ... no need ot store it in the model ... If you get data from the server like some products and want to display them in the view, you can pu them in the model and use the model as a dataprovider for a list or whatever ... C From:Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 4:50:14 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO) , then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From:flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu From:Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
RE: [flexcoders] cairngorm convention: vo or model?
Directory structure is just used for packaging. So, you keep all your views together. But when you think about it, views rarely contain their own data. Likewise, commands are in commands, vo’s should all be in vo. FYI, the default Cairngorm structure has commands and events at the same level as control, not inside of control Jake Churchill CF Webtools 11204 Davenport, Ste. 100 Omaha, NE 68154 http://www.cfwebtools.com http://www.cfwebtools.com 402-408-3733 x103 From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Jorge Maiquez Sent: Thursday, August 06, 2009 10:42 AM To: flexcoders@yahoogroups.com Subject: RE: [flexcoders] cairngorm convention: vo or model? Ok, so if I’m understanding you correctly, you don’t have a problem storing a VO in some part of the model (assuming that the VO is used for both transport and storage)? In my Cairngorm project, the directory structure looks like this: business control commands events model view vo So if I do what you suggest, and allow for a VO to reside in the model, then the model will contain stuff that does not reside in the model directory, which feels kinda weird to me. I know I’m being very fussy over something very trivial :-) From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of claudiu ursica Sent: 06 August 2009 16:01 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? You are right, If your data is only transport stuff and then get rid of it it does not justify to put it in the model. If you need your data displayed in the view then your data will probably be in the model. It depends on your business case. The VO is just a name in the end... you can label a class with VO or not it is how you use it what matters. You can transport data with VO objects (classes with no methods) and put it inside other model classes (put a clone method inside that class to move data from VO). But in many cases this is not justified. For example you want to login, you get the username and pass form the textfield inside a VO. Attach that VO as a payload to the cairngorm event and send it to the server via command/delegate etc ... That is a case where you just transport data ... no need ot store it in the model ... If you get data from the server like some products and want to display them in the view, you can pu them in the model and use the model as a dataprovider for a list or whatever ... C _ From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 4:50:14 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO) , then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From: flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu _ From: Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 3:07:15 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I’m trying to decide where to place some of my data storing/transferrin g classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix “VO” and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don’t postfix “VO”) I’m working with someone who does (1) even when the class is never sent across the wire. What’s the “right” way to do this? And also: I’ve read somewhere that VO’s should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
RE: [flexcoders] cairngorm convention: vo or model?
@Claudiu in you model? It won't even be in you project structure. it will be from your libs where the swc's reside... You can clone vo's into model classes but it seems such a waste to me ... Point taken. @Jake commands are in commands, vo’s should all be in vo So by that token, models should be in models, right? What if you have a class that is both a vo and a part of the model (the situation I mentioned in my original post)? Should you clone the vo and put it in the model, as Claudiu mentioned? default Cairngorm structure has commands and events at the same level as control, not inside of control I followed the structure used by David Tucker: http://www.davidtucker.net/2007/10/29/cairngorm-part-3/ Thanks! From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Jake Churchill Sent: 06 August 2009 18:17 To: flexcoders@yahoogroups.com Subject: RE: [flexcoders] cairngorm convention: vo or model? Directory structure is just used for packaging. So, you keep all your views together. But when you think about it, views rarely contain their own data. Likewise, commands are in commands, vo’s should all be in vo. FYI, the default Cairngorm structure has commands and events at the same level as control, not inside of control Jake Churchill CF Webtools 11204 Davenport, Ste. 100 Omaha, NE 68154 http://www.cfwebtools.com http://www.cfwebtools.com 402-408-3733 x103 From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Jorge Maiquez Sent: Thursday, August 06, 2009 10:42 AM To: flexcoders@yahoogroups.com Subject: RE: [flexcoders] cairngorm convention: vo or model? Ok, so if I’m understanding you correctly, you don’t have a problem storing a VO in some part of the model (assuming that the VO is used for both transport and storage)? In my Cairngorm project, the directory structure looks like this: business control commands events model view vo So if I do what you suggest, and allow for a VO to reside in the model, then the model will contain stuff that does not reside in the model directory, which feels kinda weird to me. I know I’m being very fussy over something very trivial :-) From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of claudiu ursica Sent: 06 August 2009 16:01 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? You are right, If your data is only transport stuff and then get rid of it it does not justify to put it in the model. If you need your data displayed in the view then your data will probably be in the model. It depends on your business case. The VO is just a name in the end... you can label a class with VO or not it is how you use it what matters. You can transport data with VO objects (classes with no methods) and put it inside other model classes (put a clone method inside that class to move data from VO). But in many cases this is not justified. For example you want to login, you get the username and pass form the textfield inside a VO. Attach that VO as a payload to the cairngorm event and send it to the server via command/delegate etc ... That is a case where you just transport data ... no need ot store it in the model ... If you get data from the server like some products and want to display them in the view, you can pu them in the model and use the model as a dataprovider for a list or whatever ... C _ From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 6, 2009 4:50:14 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? What about transient data? I was always under the impression that VO’s (or DTO’s or whatever they’re called) were more like throw-away objects: you use them to transfer data to/from a server, but that’s it. So if I label something as being a VO (e.g. ConversationVO) , then I don’t expect to find that class in the “model” classpath because I am not storing data in it. Consequently, I would not expect my view to bind to it. Does that make sense? I guess all I’m asking is: would you label something as being a VO and then bind your view to it? Symantics, I know, but I’m trying to figure out whether I’m the only one who thinks it’s weird :-) From: flexcod...@yahoogro ups.com [mailto:flexcoders@ yahoogroups. com] On Behalf Of claudiu ursica Sent: 06 August 2009 14:23 To: flexcod...@yahoogro ups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Ultimately the data should be in the model, and the view binds to the model. However depending on your needs you could notify the view from the command using responders. Check the UM Cairngorm extensions for this. HTH, Claudiu _ From: Jorge Maiquez jmaiq...@yahoo. com To: flexcod...@yahoogro ups.com Sent: Thursday, August 6, 2009 3:07:15 PM
Re: [flexcoders] cairngorm convention: vo or model?
1) the class only transfers data to/from a server: postfix VO and put it in the vo folder I'm working with someone who does (1) even when the class is never sent across the wire. That's what I do as well. Doesn't matter if it's meant for transfering data to/from server or not. They certainly don't belong in the model package though, that's where the model belongs, not data classes. If you prefer having a distinction between objects that will be sent to server and those that won't, maybe use a data and a vo package. And also: I've read somewhere that VO's should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? VO's usually don't contain any logic but there's no law against it AFAIK :) I never use the constructor to initialize properties. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 2:07 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I'm trying to decide where to place some of my data storing/transferring classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix VO and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don't postfix VO) I'm working with someone who does (1) even when the class is never sent across the wire. What's the right way to do this? And also: I've read somewhere that VO's should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge
Re: [flexcoders] cairngorm convention: vo or model?
What if you have a class that is both a vo and a part of the model (the situation I mentioned in my original post)? Should you clone the vo and put it in the model, as Claudiu mentioned? What do you mean by part of the model; it is used by the model? If so, why does that matter? VO's should be in the vo package, nowhere else. I followed the structure used by David Tucker Well, Cairngorm has a few things backwards (IMO), like CairngormEvent and CairngormEventDispatcher both being in the control package. Both should be in an events package, just like the standard Flex Event and EventDispatcher classes are. flash.events.Event flash.events.EventDispatcher And their use of ModelLocator is just... eeew. It's not a locator, it's just a Model. My guess is they looked at ARP a bit too much, but missed the point of how it is actually used :) regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 6:31 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? @Claudiu in you model? It won't even be in you project structure. it will be from your libs where the swc's reside... You can clone vo's into model classes but it seems such a waste to me ... Point taken. @Jake commands are in commands, vo’s should all be in vo So by that token, models should be in models, right? What if you have a class that is both a vo and a part of the model (the situation I mentioned in my original post)? Should you clone the vo and put it in the model, as Claudiu mentioned? default Cairngorm structure has commands and events at the same level as control, not inside of control I followed the structure used by David Tucker: http://www.davidtucker.net/2007/10/29/cairngorm-part-3/
RE: [flexcoders] cairngorm convention: vo or model?
don't belong in the model package though, that's where the model belongs, not data classes Erhm, then maybe I don't know what a model is :-) Say, I have a list of users. I would create a userList ArrayCollection and stick that into the model (bindable and all that). Now, this ArrayCollection is actually a bunch of User objects. I would therefore put the User class into the model package, and not in the vo package. Are you saying you would call this a UserVO and place it in the vo package? Thanks for the response btw! -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Muzak Sent: 06 August 2009 21:02 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? 1) the class only transfers data to/from a server: postfix VO and put it in the vo folder I'm working with someone who does (1) even when the class is never sent across the wire. That's what I do as well. Doesn't matter if it's meant for transfering data to/from server or not. They certainly don't belong in the model package though, that's where the model belongs, not data classes. If you prefer having a distinction between objects that will be sent to server and those that won't, maybe use a data and a vo package. And also: I've read somewhere that VO's should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? VO's usually don't contain any logic but there's no law against it AFAIK :) I never use the constructor to initialize properties. regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 2:07 PM Subject: [flexcoders] cairngorm convention: vo or model? I have a some doubts about implementing Cairngorm correctly (and I guess MVC in general). I'm trying to decide where to place some of my data storing/transferring classes, and I was wondering if anyone has any rules of thumb for this kind of thing. These are the guidelines that I have been following until now: 1) the class only transfers data to/from a server: postfix VO and put it in the vo folder 2) the class only stores data for the local application: put it in the model folder 3) the class does both of the above: put it in the model folder (don't postfix VO) I'm working with someone who does (1) even when the class is never sent across the wire. What's the right way to do this? And also: I've read somewhere that VO's should not contain any logic, and that you should be able to initialise all of its properties via the constructor. What do you think? TIA! -Jorge -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
RE: [flexcoders] cairngorm convention: vo or model?
What do you mean by part of the model I just sent a post where I (hopefully) explained what I mean by part of the model. If so, why does that matter? This goes back to my definition of VO: objects that are sent across the wire. So my reasoning was that if you send something across the wire and it's not part of the model, then it should be in the vo package. Additionally, I reasoned (perhaps incorrectly) that anything that is not sent down the wire should not get the name VO and should reside in the model package, not the vo package. For me, the vo package is only for stuff that gets sent down the wire. Cairngorm has a few things backwards Tell me about it.. I could live with backwards if it was well documented though, which it's not, which is doing my head in :-) Kind regards, -Jorge -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Muzak Sent: 06 August 2009 21:17 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? What if you have a class that is both a vo and a part of the model (the situation I mentioned in my original post)? Should you clone the vo and put it in the model, as Claudiu mentioned? What do you mean by part of the model; it is used by the model? If so, why does that matter? VO's should be in the vo package, nowhere else. I followed the structure used by David Tucker Well, Cairngorm has a few things backwards (IMO), like CairngormEvent and CairngormEventDispatcher both being in the control package. Both should be in an events package, just like the standard Flex Event and EventDispatcher classes are. flash.events.Event flash.events.EventDispatcher And their use of ModelLocator is just... eeew. It's not a locator, it's just a Model. My guess is they looked at ARP a bit too much, but missed the point of how it is actually used :) regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 6:31 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? @Claudiu in you model? It won't even be in you project structure. it will be from your libs where the swc's reside... You can clone vo's into model classes but it seems such a waste to me ... Point taken. @Jake commands are in commands, vo’s should all be in vo So by that token, models should be in models, right? What if you have a class that is both a vo and a part of the model (the situation I mentioned in my original post)? Should you clone the vo and put it in the model, as Claudiu mentioned? default Cairngorm structure has commands and events at the same level as control, not inside of control I followed the structure used by David Tucker: http://www.davidtucker.net/2007/10/29/cairngorm-part-3/ -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
Re: [flexcoders] cairngorm convention: vo or model?
Say, I have a list of users. I would create a userList ArrayCollection and stick that into the model (bindable and all that). Now, this ArrayCollection is actually a bunch of User objects. I would therefore put the User class into the model package, and not in the vo package. Are you saying you would call this a UserVO and place it in the vo package? Yup. This goes back to my definition of VO: objects that are sent across the wire. So my reasoning was that if you send something across the wire and it's not part of the model, then it should be in the vo package. My definition would be more along the lines of: bindable, typed data object (which may or may not get sent across the wire). regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 10:30 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? don't belong in the model package though, that's where the model belongs, not data classes Erhm, then maybe I don't know what a model is :-) Say, I have a list of users. I would create a userList ArrayCollection and stick that into the model (bindable and all that). Now, this ArrayCollection is actually a bunch of User objects. I would therefore put the User class into the model package, and not in the vo package. Are you saying you would call this a UserVO and place it in the vo package? Thanks for the response btw!
RE: [flexcoders] cairngorm convention: vo or model?
bindable, typed data object (which may or may not get sent across the wire). Cool, that definition would take care of all 3 points I originally mentioned. So, what do you actually put into the model package? Is it just the ModelLocator? cheers, -Jorge -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Muzak Sent: 07 August 2009 03:14 To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] cairngorm convention: vo or model? Say, I have a list of users. I would create a userList ArrayCollection and stick that into the model (bindable and all that). Now, this ArrayCollection is actually a bunch of User objects. I would therefore put the User class into the model package, and not in the vo package. Are you saying you would call this a UserVO and place it in the vo package? Yup. This goes back to my definition of VO: objects that are sent across the wire. So my reasoning was that if you send something across the wire and it's not part of the model, then it should be in the vo package. My definition would be more along the lines of: bindable, typed data object (which may or may not get sent across the wire). regards, Muzak - Original Message - From: Jorge Maiquez jmaiq...@yahoo.com To: flexcoders@yahoogroups.com Sent: Thursday, August 06, 2009 10:30 PM Subject: RE: [flexcoders] cairngorm convention: vo or model? don't belong in the model package though, that's where the model belongs, not data classes Erhm, then maybe I don't know what a model is :-) Say, I have a list of users. I would create a userList ArrayCollection and stick that into the model (bindable and all that). Now, this ArrayCollection is actually a bunch of User objects. I would therefore put the User class into the model package, and not in the vo package. Are you saying you would call this a UserVO and place it in the vo package? Thanks for the response btw! -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Alternative FAQ location: https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
[flexcoders] Cairngorm 3 (extension)
Hi, Please take a while to review my cotribution to Cairngorm that deals with GUI responsiveness issue. I have written an article to introduce the changes: http://students.mimuw.edu.pl/~mhagmajer/cairngorm3/ Waiting for feedback. Kind regards, Marcin Hagmajer
[flexcoders] Cairngorm sub-applications Remoting
Has anyone written two distinct Cairngorm-based applications, each capable of dispatching service calls (via RemoteObject) and tried loading one inside of the other? Essentially I have a parent application that uses SWFLoader to load a sub-application (in a peer Application Domain). The sub-application loads visually within the parent application but service calls from the sub-application result in a runtime error: TypeError: Error #1034: Type Coercion failed: cannot convert obj...@x to mx.messaging.messages.ErrorMessage. JBOSS logs show this: No destination with id 'null' is registered with any service. The first error appears to be a class-aliasing problem, but both of these apps are Cairngorm-based Flex applications...the registerClassAlias method shouldn't be required (besides, I tried that tactic already to no avail). This is the only Flex-equivalent of a bat-signal I can think of ;) Erich
Re: [flexcoders] Cairngorm sub-applications Remoting
The 'destination null' seems to imply that your Flex-side remoting metadata is fubared. It's trying to contact a destination that was not configured--or somehow got unconfigured through the peer-appdomain swf loading. I've asked about doing something similar with Modules, and was told by Adobe folks on the list that this would be a Bad Idea. However, I believe they suggested separate apps--just as you are doing. Have you tried loading the .swfs into the same appdomain? -- Maciek Sakrejda Truviso, Inc. http://www.truviso.com -Original Message- From: Erich Cervantez f...@noofusion.com Reply-to: flexcoders@yahoogroups.com To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm sub-applications Remoting Date: Thu, 16 Apr 2009 17:01:51 - Has anyone written two distinct Cairngorm-based applications, each capable of dispatching service calls (via RemoteObject) and tried loading one inside of the other? Essentially I have a parent application that uses SWFLoader to load a sub-application (in a peer Application Domain). The sub-application loads visually within the parent application but service calls from the sub-application result in a runtime error: TypeError: Error #1034: Type Coercion failed: cannot convert obj...@x to mx.messaging.messages.ErrorMessage. JBOSS logs show this: No destination with id 'null' is registered with any service. The first error appears to be a class-aliasing problem, but both of these apps are Cairngorm-based Flex applications...the registerClassAlias method shouldn't be required (besides, I tried that tactic already to no avail). This is the only Flex-equivalent of a bat-signal I can think of ;) Erich
[flexcoders] Cairngorm Question
Hello Group, This is my first question on this group and I have been referring to this group for all my technical challenges with Flex (started using 1 month back). Thanks for such a nice group and support. I have a complex screen where I have 2 Combo boxes and by default Combo-2 is disabled and will be enabled only when user selects Combo-1 and Server returns any Objects for Combo-2 otherwise it will be still disabled. I have defined an Event `LoadCombo2Event' which is dispatched when user selects an entry from Combo-1 and the results will be handled in `LoadComb2Command'. I do not have access to Combo2 in this command to Enable or Disable? How do we handle this case using Cairngorm? Thanks, Sre
Re: [flexcoders] Cairngorm Question
You do have acess to the model. The combo 2 will be populated with some data. Put that into the model and bind combo 2 to the model I'm not sure what you actually want to do but it doesn't look like you need cairgorm to do that ... C From: skusunam skusu...@rlpt.com To: flexcoders@yahoogroups.com Sent: Thursday, April 9, 2009 7:53:48 PM Subject: [flexcoders] Cairngorm Question Hello Group, This is my first question on this group and I have been referring to this group for all my technical challenges with Flex (started using 1 month back). Thanks for such a nice group and support. I have a complex screen where I have 2 Combo boxes and by default Combo-2 is disabled and will be enabled only when user selects Combo-1 and Server returns any Objects for Combo-2 otherwise it will be still disabled. I have defined an Event `LoadCombo2Event' which is dispatched when user selects an entry from Combo-1 and the results will be handled in `LoadComb2Command' . I do not have access to Combo2 in this command to Enable or Disable? How do we handle this case using Cairngorm? Thanks, Sre
Re: [flexcoders] Cairngorm and ChangeWatcher
http://weblogs.macromedia.com/auhlmann/archives/2007/02/creating_a_popu.html#more This should give you some directions... Claudiu From: lampei lam...@gmail.com To: flexcoders@yahoogroups.com Sent: Saturday, January 10, 2009 1:34:25 AM Subject: [flexcoders] Cairngorm and ChangeWatcher I have begun tinkering around with various frameworks and thought I would start with Cairngorm. I am refactoring a small application to use Cairngorm, but ran into a snag. All of the examples I found just bound an item in the view to a property of the ModelLocator, and thus automagically updated the value when the property of the ModelLocator changed. However, I had one item that is waiting for a response from a service, and needed to respond to that change (such as an error message), rather than just display the updated data that is returned. I found an example that uses the ChangeWatcher class to watch the property on the ModelLocator. This seemed to work fine, but I was wondering if this is still best practice, as the example I found was from 2006. Thanks.
[flexcoders] Cairngorm and ChangeWatcher
I have begun tinkering around with various frameworks and thought I would start with Cairngorm. I am refactoring a small application to use Cairngorm, but ran into a snag. All of the examples I found just bound an item in the view to a property of the ModelLocator, and thus automagically updated the value when the property of the ModelLocator changed. However, I had one item that is waiting for a response from a service, and needed to respond to that change (such as an error message), rather than just display the updated data that is returned. I found an example that uses the ChangeWatcher class to watch the property on the ModelLocator. This seemed to work fine, but I was wondering if this is still best practice, as the example I found was from 2006. Thanks.
Re: [flexcoders] Cairngorm v/s others
I would love to know how pronounce it correctly too. This name is a tongue twister for me. :) :) On Sat, Jan 3, 2009 at 10:15 PM, Hyder hyder_...@hotmail.com wrote: Btw, I've always wondered, how does one pronounce Cairngorm... Kane Gaum ?
Re: [flexcoders] Cairngorm proper usage
It would be in the spirit of Cairngorm to fire off a EnterRoom event, which triggers a EnterRoom command. The command calls a enterRoom method in some model. The TabNavigator binds to this model and updates itself, whenever the model changes With kind regards, Ralf. On Sun, Jan 4, 2009 at 7:49 AM, someguy7_7 mus...@hotmail.com wrote: I am trying to determine the best way to use cairngorm for the following use case. I want to display a tabnavigator that only has 1 child which is a component that has a list of rooms in a datagrid. When one of the rooms is clicked a instance of the room component is added to the tabnavigator as a child. The room component just has a label that says You are in room xx. Can I just fire off a regular event from the room list component that the main view is listening for so it can add the new child to the tabnav or do I need to fire off a cairngorm event that goes through a command which somehow gets back to the view and tells it to add a new child to the tabnav? Any ideas on the best way to set this up so it does not violate the spirit/laws of cairngorm? Thanks
[flexcoders] Cairngorm v/s others
I've been using Cairngorm for a while now and I've gotten pretty used to it. I want to try out the other Flex frameworks too but will I need them if I can get most of my work done using Cairngorm. I really don't know much about the others like Mate and PureMVC so I will only look into them if they've got sufficient advantages of Cairngorm. Any inputs? Btw, I've always wondered, how does one pronounce Cairngorm... Kane Gaum ?
RE: [flexcoders] Cairngorm v/s others
I really don't know much about the others like Mate and PureMVC so I will only look into them if they've got sufficient advantages of Cairngorm. Any inputs? We are using Cairngorm but have implemented an alternative notification mechanism similar to what is included in PureMVC. The problem we wanted to address was being able to notify a number of different parts of the program that a service call was complete. This didn't fit well with the event/command relationship within Cairngorm. Previously in this forum, we discussed test-driven development and the issues that this raised. Test-driven development is really about design and not validation. In order to allow my tests to drive the design, what might be considered a view is split into two components. An mxml view that relies primarily on data binding and a supervising controller (Fowler 2006). The supervising controller is written in ActionScript and inherits the base component for the view. It then forms the base component for the mxml view. This makes the supervising controller and the mxml view appear to be closely bound. The supervising controller knows nothing of the mxml view. The mxml view calls functions in the supervising controller to get anything done and passes as parameters in those functions any data that the supervising controller may need. Basically, I wouldn't use Cairngorm in the future nor PureMVC nor any other framework. Most contain a very limited amount of code. The most useful part being something that allows notifications or the queuing of events. Cairngorm provides the services locator but that needs to be mocked out if you want to run tests that don't land up calling the remote server. I have achieved this but it suggests to me that there are more flexible solutions. I see Cairngorm and PureMVC as primarily providing conventions to follow to implement solutions. The problem is that it is unclear what problems those conventions address and the nature of the consequences of applying these conventions. I have blogged on this at http://kiwi-et.blogspot.com/2008/12/flex-mvc-frameworks.html.
[flexcoders] Cairngorm proper usage
I am trying to determine the best way to use cairngorm for the following use case. I want to display a tabnavigator that only has 1 child which is a component that has a list of rooms in a datagrid. When one of the rooms is clicked a instance of the room component is added to the tabnavigator as a child. The room component just has a label that says You are in room xx. Can I just fire off a regular event from the room list component that the main view is listening for so it can add the new child to the tabnav or do I need to fire off a cairngorm event that goes through a command which somehow gets back to the view and tells it to add a new child to the tabnav? Any ideas on the best way to set this up so it does not violate the spirit/laws of cairngorm? Thanks
[flexcoders] Cairngorm ServiceLocator.getInstance(); compile error
In one delegate I have the following: private var __locator:ServiceLocator = new ServiceLocator.getInstance(); And it compiles just fine, and in fact this delegate and remoteobject service work as expected. I then add the same exact command to another identical delegate (other than names, generated using Cairngen), using the same import statement as below ... import com.adobe.cairngorm.business.ServiceLocator; But in the second delegate I get the following error... 1048: Method cannot be used as a constructor. If I remove the .getInstance() from the __locator instantiation, I get no error. I can not find any references to such an error anywhere, any help would be greatly appreciated.
RE: [flexcoders] Cairngorm ServiceLocator.getInstance(); compile error
getInstance() should be a static method, so you don't need to use new when calling it: private var __locator:ServiceLocator = ServiceLocator.getInstance(); HTH, Ryan From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of jeremysavoy Sent: Monday, December 29, 2008 10:39 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm ServiceLocator.getInstance(); compile error In one delegate I have the following: private var __locator:ServiceLocator = new ServiceLocator.getInstance(); And it compiles just fine, and in fact this delegate and remoteobject service work as expected. I then add the same exact command to another identical delegate (other than names, generated using Cairngen), using the same import statement as below ... import com.adobe.cairngorm.business.ServiceLocator; But in the second delegate I get the following error... 1048: Method cannot be used as a constructor. If I remove the .getInstance() from the __locator instantiation, I get no error. I can not find any references to such an error anywhere, any help would be greatly appreciated. This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system.
[flexcoders] Cairngorm Console: a new tool for debugging and monitoring Cairngorm Application
KapLab http://lab.kapit.fr has just released CairngormConsole http://lab.kapit.fr/display/cairngormconsole/Cairngorm+Console : a new free tool for inspection of Cairngorm applications It is a must have for Cairngorm users and for those who want to go deeper into Cairngorm framework and see what happens behind the scene. In its first 0.9.0 version, the console includes the following features: * A log for all Cairngorm operations: commands, events, services, ... * Watch the bindings in action at the ModelLocator level * An inspection tree of the ModelLocator * Running commands and commands history * Running HTTPServices and services history * Running HTTPServices and services history * Stacktrace on all operations to pin-point starting line of code * Object inspectors on data, such as command parameters, event attributes, or services result * Interoperability with KapInspect http://lab.kapit.fr/display/kapinspect/Kap+Inspect : another great KapLab debugging tool You will find all these in the links listed below: * KapLab Home http://lab.kapit.fr * CairngormConsole Home page http://lab.kapit.fr/display/cairngormconsole/Cairngorm+Console * Developer Guide http://lab.kapit.fr/display/cairngormconsole/Developer+Guide * Demo http://lab.kapit.fr/demo/cairngormconsole/prod/CafeTownsend.html * Forum http://lab.kapit.fr/display/forum/Cairngorm+Console You will be able to report problems or ask for new features in our forums, as new releases will be published on a regular basis. Hopefully you will enjoy it and it will help you to maintain and develop your applications with more ease and productivity Oh, BTW, MC HNY [B-)]
[flexcoders] Cairngorm | Multiple Modules | Only one Service Locator instance instantiated
Hi I have shell application (main.mxml) which loaded multiples modules. All the modules are mini application which can be run independently. Shell application just load these modules depend upon the user choices. As soon as i combined all these applications and try to access any module i get the error Error: C0001E: Only one Service Locator instance can be instantiated. I am not making any call to get the services in the shell application. In all the modules i have declared cairngorm controller and cairngorm service locator in mxml file like control:CoreController id=controllerCore/ serives:Services id=servicesCore/ All the modules have different ids for controller and Service Locator. The application runs fine when i run through Flex Builder but when i deploy on server i get the error. I do not know why i am getting this error. Any pointers. Thanks ilikeflex
Re: [flexcoders] Cairngorm for AS3 projects?
It's a pretty hot topic on the web, the battle PureMVC vs Cairngorm. Imho, PureMVC is a bit more complicated to put in place, but is a great pleasure to use after set up. The best'd be to test them both if you have time :) Regards, Romain de Wolff Le 13 nov. 08 à 17:18, gabriel montagné a écrit : On Thu, Nov 13, 2008 at 7:03 AM, Rick Schmitty [EMAIL PROTECTED] wrote: Is there any reason not to use cairngorm for AS3 projects. [...] Cairngorm is definitely a Flex thing, it's dependencies are not superficial; it wouldn't make much sense to try to use it on a pure AS3 project. You'd have to redo it and redo the stuff it relies on, which is not trivial. I agree with Pedro that you should take a look at PureMVC... or, better yet, go back to Flex ;-) -- gabriel montagné láscaris comneno http://rojored.com t/506.8367.6794
Re: [flexcoders] Cairngorm for AS3 projects?
I've been using Cairgorm with Prana - an IoC framework. It designed to work with Cairngorm, as well as Pure MVC but I would definitely advise looking at it. With regards to Cairngorm it removes all the problems you have with tight coupling etc. From: Romain de Wolff Sent: Monday, November 17, 2008 2:50 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] Cairngorm for AS3 projects? It's a pretty hot topic on the web, the battle PureMVC vs Cairngorm. Imho, PureMVC is a bit more complicated to put in place, but is a great pleasure to use after set up. The best'd be to test them both if you have time :) Regards, Romain de Wolff Le 13 nov. 08 à 17:18, gabriel montagné a écrit : On Thu, Nov 13, 2008 at 7:03 AM, Rick Schmitty [EMAIL PROTECTED] wrote: Is there any reason not to use cairngorm for AS3 projects. [...] Cairngorm is definitely a Flex thing, it's dependencies are not superficial; it wouldn't make much sense to try to use it on a pure AS3 project. You'd have to redo it and redo the stuff it relies on, which is not trivial. I agree with Pedro that you should take a look at PureMVC... or, better yet, go back to Flex ;-) -- gabriel montagné láscaris comneno http://rojored.com t/506.8367.6794
[flexcoders] Cairngorm for AS3 projects?
Is there any reason not to use cairngorm for AS3 projects. I know cairngorm uses classes in the mx.* range so its using some flex framework code (and I assume that means adding the 126kb framework code at least..) is there a framework AS3 projects use instead? thanks
Re: [flexcoders] Cairngorm for AS3 projects?
You could take a look at PureMVC. PS On Thu, Nov 13, 2008 at 11:03 AM, Rick Schmitty [EMAIL PROTECTED] wrote: Is there any reason not to use cairngorm for AS3 projects. I know cairngorm uses classes in the mx.* range so its using some flex framework code (and I assume that means adding the 126kb framework code at least..) is there a framework AS3 projects use instead? thanks -- /** * Pedro Sena * Systems Architect * Sun Certified Java Programmer * Sun Certified Web Component Developer * * Net Sar * www.netsar.com.br */
Re: [flexcoders] Cairngorm for AS3 projects?
On Thu, Nov 13, 2008 at 7:03 AM, Rick Schmitty [EMAIL PROTECTED] wrote: Is there any reason not to use cairngorm for AS3 projects. [...] Cairngorm is definitely a Flex thing, it's dependencies are not superficial; it wouldn't make much sense to try to use it on a pure AS3 project. You'd have to redo it and redo the stuff it relies on, which is not trivial. I agree with Pedro that you should take a look at PureMVC... or, better yet, go back to Flex ;-) -- gabriel montagné láscaris comneno http://rojored.com t/506.8367.6794
Re: [flexcoders] Cairngorm for AS3 projects?
Hi Rick, In the past we developed several AS2 Flash (not Flex) applications in Cairngorm. In the current version of of Cairngorm almost all of the dependencies on mx packages are in the ServiceLocator, which used not to be the case with earlier Cairngorm versions. You can roll your own old style ServiceLocator using the singleton code from the comments in IModelLocator (maybe also make the class dynamic). The only other thing you'll miss is bindings, which are God's gift to MVC developers although somehow they seem to be something the other Flex frameworks try to avoid using for some reason I fail to fathom... oops I'm ranting. Anyway without binding the ViewHelper pattern can help - this also used to be part of Cairngorm, although now deprecated. Here's an old blog post of ours with an example of Cairngorm (I think 0.99) in a Flash project: http://www.rocketboots.com/blog/index.cfm?mode=entryentry=83219052-E081-51EF-A73B5F4EF642C3F5 Cheers, Robin ROBIN HILLIARD Chief Executive Officer [EMAIL PROTECTED] RocketBoots Pty Ltd Level 11 189 Kent Street Sydney NSW 2001 Australia Phone +61 2 9323 2507 Facsimile +61 2 9323 2501 Mobile +61 418 414 341 www.rocketboots.com.au On 14/11/2008, at 12:03 AM, Rick Schmitty wrote: Is there any reason not to use cairngorm for AS3 projects. I know cairngorm uses classes in the mx.* range so its using some flex framework code (and I assume that means adding the 126kb framework code at least..) is there a framework AS3 projects use instead? thanks
Re: [flexcoders] Cairngorm: should pure view state changes go through the ModelLocator?
Le 24 oct. 08 à 03:48, Dimitrios Gianninas a écrit : #2 because your app is simple..#1 if you want to be a purist. start simply and add complexity as you go along, thats my rule. That's a good rule ! If your 2 components in your view are in the same component, let's say whatever Panel or Canvas you can think of , I don't see why you should go all the MVC way. Farid
Re: [flexcoders] Cairngorm: should pure view state changes go through the ModelLocator?
I also vote for #2. Seems strange for me to have a boolean in the ModelLocator that is specific to this UI context. I always thought the ModelLocator should only have data that is potentially global to the app (like your list of users), and find it strange that many online Cairngorm examples put something like the working item of an edit form (e.g., you have a form that edits the properties of a specific user, and a variable for that user is added to the ModelLocator). So I wouldn't consider your boolean flags to be part of your app's model. On Thu, Oct 23, 2008 at 6:48 PM, Dimitrios Gianninas [EMAIL PROTECTED] wrote: #2 because your app is simple..#1 if you want to be a purist. start simply and add complexity as you go along, thats my rule. *Dimitrios Gianninas* *RIA Developer Team Lead* *Optimal Payments Inc.* -- *From:* flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] *On Behalf Of *O. Frabjous-Dey *Sent:* Thursday, October 23, 2008 6:26 PM *To:* flexcoders@yahoogroups.com *Subject:* [flexcoders] Cairngorm: should pure view state changes go through the ModelLocator? Hi everyone, Here's a design question for you Cairngorm experts. In my application's view, I have two main subcomponents: a control bar sort of custom component that I wrote that we'll call the FrabjousControlBar, and a DataGrid, which lists all the users in my application. These users are either Administrators or Members. The FrabjousControlBar contains two checkboxes: a checkbox labeled Show Administrators and a checkbox labeled Show Members. Both are checked by default, but when Show Administrators is unchecked, the DataGrid removes all of the Administrators. Something similar happens for Show Members. I'm having trouble choosing the correct implementation for this. There are two ways I can see to do this: 1) When a user unchecks Show Administrators, the control kicks off a Cairngorm Event, the controller executes a Command that changes a boolean flag in the ModelLocator, and the DataGrid responds to the change on that flag. 2) Since the user interaction affects the view only, no MVC round trip occurs. My view knows when the box is unchecked and updates the DataGrid accordingly. Which is better? 1) is more pleasingly MVC, but comes with a lot of overhead and additional effort. Thanks, O. *AVIS IMPORTANT* *WARNING* Ce message électronique et ses pièces jointes peuvent contenir des renseignements confidentiels, exclusifs ou légalement privilégiés destinés au seul usage du destinataire visé. L'expéditeur original ne renonce à aucun privilège ou à aucun autre droit si le présent message a été transmis involontairement ou s'il est retransmis sans son autorisation. Si vous n'êtes pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses pièces jointes, de votre système. La lecture, la distribution, la copie ou tout autre usage du présent message ou de ses pièces jointes par des personnes autres que le destinataire visé ne sont pas autorisés et pourraient être illégaux. Si vous avez reçu ce courrier électronique par erreur, veuillez en aviser l'expéditeur. This electronic message and its attachments may contain confidential, proprietary or legally privileged information, which is solely for the use of the intended recipient. No privilege or other rights are waived by any unintended transmission or unauthorized retransmission of this message. If you are not the intended recipient of this message, or if you have received it in error, you should immediately stop reading this message and delete it and all attachments from your system. The reading, distribution, copying or other use of this message or its attachments by unintended recipients is unauthorized and may be unlawful. If you have received this e-mail in error, please notify the sender.
[flexcoders] Cairngorm and AyncToken Error
Does anyone have any idea why I'd be getting this error? Type Coercion failed: cannot convert mx.rpc.remoting.mxml::[EMAIL PROTECTED] to mx.rpc.AsyncToken In Cairngorm I'm dispatching an event which fires on creationComplete. The event triggers a RemoteObject, which throws this error from my Delegate. I'm not sure what I'm missing here...
[flexcoders] Cairngorm: should pure view state changes go through the ModelLocator?
Hi everyone, Here's a design question for you Cairngorm experts. In my application's view, I have two main subcomponents: a control bar sort of custom component that I wrote that we'll call the FrabjousControlBar, and a DataGrid, which lists all the users in my application. These users are either Administrators or Members. The FrabjousControlBar contains two checkboxes: a checkbox labeled Show Administrators and a checkbox labeled Show Members. Both are checked by default, but when Show Administrators is unchecked, the DataGrid removes all of the Administrators. Something similar happens for Show Members. I'm having trouble choosing the correct implementation for this. There are two ways I can see to do this: 1) When a user unchecks Show Administrators, the control kicks off a Cairngorm Event, the controller executes a Command that changes a boolean flag in the ModelLocator, and the DataGrid responds to the change on that flag. 2) Since the user interaction affects the view only, no MVC round trip occurs. My view knows when the box is unchecked and updates the DataGrid accordingly. Which is better? 1) is more pleasingly MVC, but comes with a lot of overhead and additional effort. Thanks, O.
RE: [flexcoders] Cairngorm: should pure view state changes go through the ModelLocator?
#2 because your app is simple..#1 if you want to be a purist. start simply and add complexity as you go along, thats my rule. Dimitrios Gianninas RIA Developer Team Lead Optimal Payments Inc. From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of O. Frabjous-Dey Sent: Thursday, October 23, 2008 6:26 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm: should pure view state changes go through the ModelLocator? Hi everyone, Here's a design question for you Cairngorm experts. In my application's view, I have two main subcomponents: a control bar sort of custom component that I wrote that we'll call the FrabjousControlBar, and a DataGrid, which lists all the users in my application. These users are either Administrators or Members. The FrabjousControlBar contains two checkboxes: a checkbox labeled Show Administrators and a checkbox labeled Show Members. Both are checked by default, but when Show Administrators is unchecked, the DataGrid removes all of the Administrators. Something similar happens for Show Members. I'm having trouble choosing the correct implementation for this. There are two ways I can see to do this: 1) When a user unchecks Show Administrators, the control kicks off a Cairngorm Event, the controller executes a Command that changes a boolean flag in the ModelLocator, and the DataGrid responds to the change on that flag. 2) Since the user interaction affects the view only, no MVC round trip occurs. My view knows when the box is unchecked and updates the DataGrid accordingly. Which is better? 1) is more pleasingly MVC, but comes with a lot of overhead and additional effort. Thanks, O. -- WARNING --- This electronic message and its attachments may contain confidential, proprietary or legally privileged information, which is solely for the use of the intended recipient. No privilege or other rights are waived by any unintended transmission or unauthorized retransmission of this message. If you are not the intended recipient of this message, or if you have received it in error, you should immediately stop reading this message and delete it and all attachments from your system. The reading, distribution, copying or other use of this message or its attachments by unintended recipients is unauthorized and may be unlawful. If you have received this e-mail in error, please notify the sender. AVIS IMPORTANT -- Ce message électronique et ses pièces jointes peuvent contenir des renseignements confidentiels, exclusifs ou légalement privilégiés destinés au seul usage du destinataire visé. L'expéditeur original ne renonce à aucun privilège ou à aucun autre droit si le présent message a été transmis involontairement ou s'il est retransmis sans son autorisation. Si vous n'êtes pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses pièces jointes, de votre système. La lecture, la distribution, la copie ou tout autre usage du présent message ou de ses pièces jointes par des personnes autres que le destinataire visé ne sont pas autorisés et pourraient être illégaux. Si vous avez reçu ce courrier électronique par erreur, veuillez en aviser l'expéditeur.
[flexcoders] Cairngorm AMFPHP Problem
Hello, I am trying to convert an existing Flex/AMFPHP app to Cairngorm but am having trouble returning value objects from PHP. public function login($userVO) { $user = new UserVO(); // yada yada yada, user authenticated, logged and full details received $user-id = pg_fetch_result($result, 0, id); $user-email = pg_fetch_result($result, 0, email); $user-username = pg_fetch_result($result, 0, name); $user-lastIP = pg_fetch_result($result, 0, last_ip); $user-password = pg_fetch_result($result, 0, passhash); $user-level = pg_fetch_result($result, 0, level); return $user; } Here is the error I get from Flash Player: ArgumentError: Error #1063: Argument count mismatch on ... vo::UserVO(). Expected 2, got 0. Here is what I get from the fault handler: Didn't receive an acknowledged message. Was expecting mx.messaging.messages.AcknowledgeMessage, but received null. Hopefully, what I am doing will be painfully obvious to someone. Thank you in advance for any help, Orville
[flexcoders] Cairngorm
Don't foget the subject next time. The following link might help. http://www.adobe.com/devnet/flex/articles/cairngorm_pt1.html --- In flexcoders@yahoogroups.com, Anand Kumar [EMAIL PROTECTED] wrote: Hi, Please some one explain me about Cairngorm architecture. Thanks Anand
RE: [flexcoders] Cairngorm
or just read here: http://www.cairngormdocs.org/ Dimitrios Gianninas RIA Developer Team Lead Optimal Payments Inc. From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of florian.salihovic Sent: Thursday, October 02, 2008 8:49 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm Don't foget the subject next time. The following link might help. http://www.adobe.com/devnet/flex/articles/cairngorm_pt1.html http://www.adobe.com/devnet/flex/articles/cairngorm_pt1.html --- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com , Anand Kumar [EMAIL PROTECTED] wrote: Hi, Please some one explain me about Cairngorm architecture. Thanks Anand -- WARNING --- This electronic message and its attachments may contain confidential, proprietary or legally privileged information, which is solely for the use of the intended recipient. No privilege or other rights are waived by any unintended transmission or unauthorized retransmission of this message. If you are not the intended recipient of this message, or if you have received it in error, you should immediately stop reading this message and delete it and all attachments from your system. The reading, distribution, copying or other use of this message or its attachments by unintended recipients is unauthorized and may be unlawful. If you have received this e-mail in error, please notify the sender. AVIS IMPORTANT -- Ce message électronique et ses pièces jointes peuvent contenir des renseignements confidentiels, exclusifs ou légalement privilégiés destinés au seul usage du destinataire visé. L'expéditeur original ne renonce à aucun privilège ou à aucun autre droit si le présent message a été transmis involontairement ou s'il est retransmis sans son autorisation. Si vous n'êtes pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses pièces jointes, de votre système. La lecture, la distribution, la copie ou tout autre usage du présent message ou de ses pièces jointes par des personnes autres que le destinataire visé ne sont pas autorisés et pourraient être illégaux. Si vous avez reçu ce courrier électronique par erreur, veuillez en aviser l'expéditeur.
[flexcoders] Cairngorm Update Problem
I am working on a Cairngorm project. I am using a ViewStack component to flip the user interface between a graph component and a filter data component both in the view layer. The basic concept of the application is to have a line graph and allow the users to filter the data using an input screen. All of this works the first time the user enters the application and uses the filter option. The problem I am having is the second or third time the user enters the filter screen. I cannot find a way to tell the graph component to reset itself after the event is dispatch and the controller takes over and new data needs to be displayed in the graph. (IE remove any annotationElements that were on the old graph) Is there a way to notify the component in the view layer of a Cairngorm project from the command layer when the results are return from the delegate? Thanks, ~Chris
RE: [flexcoders] Cairngorm Update Problem
You could put a property on the model that the component can bind to, that way the command could just update the model after the delegate returns and databinding will take care of the rest for you. I personally don't like keeping state properties like that in my model, so I usually use Cairngorm Extensions. You should check out their Callbacks model -- it solves your exact problem and is the functionality that turned me on to it. If you are already too far along in your project to switch to extensions, I'd go with the first option for the quick fix. http://umcairngorm.riaforge.org/ http://code.google.com/p/flexcairngorm/ HTH, Ryan From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of c_higgon Sent: Wednesday, September 24, 2008 3:45 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm Update Problem I am working on a Cairngorm project. I am using a ViewStack component to flip the user interface between a graph component and a filter data component both in the view layer. The basic concept of the application is to have a line graph and allow the users to filter the data using an input screen. All of this works the first time the user enters the application and uses the filter option. The problem I am having is the second or third time the user enters the filter screen. I cannot find a way to tell the graph component to reset itself after the event is dispatch and the controller takes over and new data needs to be displayed in the graph. (IE remove any annotationElements that were on the old graph) Is there a way to notify the component in the view layer of a Cairngorm project from the command layer when the results are return from the delegate? Thanks, ~Chris This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system.
Re: [flexcoders] Cairngorm Update Problem
Either you need to call the ViewStack.callLater(FunctionName) Thanks, with Regards, Jitendra Jain - Original Message From: c_higgon [EMAIL PROTECTED] To: flexcoders@yahoogroups.com Sent: Thursday, 25 September, 2008 4:15:10 AM Subject: [flexcoders] Cairngorm Update Problem I am working on a Cairngorm project. I am using a ViewStack component to flip the user interface between a graph component and a filter data component both in the view layer. The basic concept of the application is to have a line graph and allow the users to filter the data using an input screen. All of this works the first time the user enters the application and uses the filter option. The problem I am having is the second or third time the user enters the filter screen. I cannot find a way to tell the graph component to reset itself after the event is dispatch and the controller takes over and new data needs to be displayed in the graph. (IE remove any annotationElements that were on the old graph) Is there a way to notify the component in the view layer of a Cairngorm project from the command layer when the results are return from the delegate? Thanks, ~Chris Be the first one to try the new Messenger 9 Beta! Go to http://in.messenger.yahoo.com/win/
Re: [flexcoders] Cairngorm BlazeDS Sample App
Of course you can't, since that's where the server service gets called... Go over the server code with the one who developed it, and debug if from there... On Thu, Sep 18, 2008 at 12:19 AM, c_higgon [EMAIL PROTECTED] wrote: Does anyone have a working example of a Cairngorm project the uses a BlazeDS backend service (Tomcat Server)? In my application, the Command class is always hitting the fault function and I am not able to debug it pass the point the delegate service is called. --- Thanks, ~Chris
[flexcoders] Cairngorm BlazeDS Sample App
Does anyone have a working example of a Cairngorm project the uses a BlazeDS backend service (Tomcat Server)? In my application, the Command class is always hitting the fault function and I am not able to debug it pass the point the delegate service is called. --- Thanks, ~Chris
[flexcoders] Cairngorm - BlazeDS Example
Does any know of a good example of a Cairngorm project that uses a BlazeDS backend service? I am having problem delegate to connect to the backend server. Any help would be greatly appreciated. ~Chris
RE: [flexcoders] Cairngorm - BlazeDS Example
If you have BlazeDS and looked at the examples, then you know how to connect to the backend. To do in Caingorm, just read the docs: http://www.cairngormdocs.org/ http://www.cairngormdocs.org/ Basically your command class will use a delegate class to call the server. The delegate class will use the ServiceLocator to get a reference to the appropriate service defined in the Services.mxml file. !-- Services.mxml -- cairngorm:ServiceLocator xmlns:mx=http://www.adobe.com/2006/mxml; xmlns:cairngorm=com.adobe.cairngorm.business.* !-- SystemServices remote reference -- mx:RemoteObject id=systemServices destination=systemService concurrency=single showBusyCursor=false / /cairngorm:ServiceLocator !-- Delegate -- package com.optimal.bluebird.business { import com.adobe.cairngorm.business.ServiceLocator; /** * @author Dimitrios Gianninas */ public class SystemDelegate { private var service:Object; private var responder:IResponder; /** * Default Constructor */ public function SystemDelegate( responder:IResponder ) { service = ServiceLocator.getInstance().getRemoteObject( systemServices ); this.responder = responder; } /** * Loads static lists used by the UI. */ public function getStaticLists():void { var call:AsyncToken = service.getStaticLists(); call.addResponder( responder ); } } } // Command class package com.optimal.bluebird.commands.system { public class GetStaticListsCmd implements ICommand, IResponder { /** * Default Constructor */ public function GetStaticListsCmd() { } override public function execute( evt:CairngormEvent ):void { var delegate:SystemDelegate = new SystemDelegate( this ); delegate.getStaticLists(); } public function result( event:Object ):void { // handle results } public function fault( event:Object ):void { // handle fault } } } xxx xxx xxx Dimitrios Gianninas RIA Developer Team Lead Optimal Payments Inc. From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of c_higgon Sent: Thursday, September 18, 2008 8:16 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm - BlazeDS Example Does any know of a good example of a Cairngorm project that uses a BlazeDS backend service? I am having problem delegate to connect to the backend server. Any help would be greatly appreciated. ~Chris -- WARNING --- This electronic message and its attachments may contain confidential, proprietary or legally privileged information, which is solely for the use of the intended recipient. No privilege or other rights are waived by any unintended transmission or unauthorized retransmission of this message. If you are not the intended recipient of this message, or if you have received it in error, you should immediately stop reading this message and delete it and all attachments from your system. The reading, distribution, copying or other use of this message or its attachments by unintended recipients is unauthorized and may be unlawful. If you have received this e-mail in error, please notify the sender. AVIS IMPORTANT -- Ce message électronique et ses pièces jointes peuvent contenir des renseignements confidentiels, exclusifs ou légalement privilégiés destinés au seul usage du destinataire visé. L'expéditeur original ne renonce à aucun privilège ou à aucun autre droit si le présent message a été transmis involontairement ou s'il est retransmis sans son autorisation. Si vous n'êtes pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses pièces jointes, de votre système. La lecture, la distribution, la copie ou tout autre usage du présent message ou de ses pièces jointes par des personnes autres que le destinataire visé ne sont pas autorisés et pourraient être illégaux. Si vous avez reçu ce courrier électronique par erreur, veuillez en aviser l'expéditeur.
[flexcoders] Cairngorm article sources on Adobe.com corrupt?
Hello, I am trying to download the sources to the article at http://www.adobe.com/devnet/flex/articles/introducing_cairngorm.html (f3ic_studentFiles_16Jun08.zip) but I keep getting a corrupted download. I tried last nite at home and today at work with the same results. Can someone at Adobe docs verify the download? Thanks, - Ivo
[flexcoders] Cairngorm: AnnounceFaultEvent
Hello, I'm currently experimenting with the Universal Mind Cairngorm extensions and I'm wondering where I should add an event listener for the AnnounceFaultEvent. I'd like to have one listener for all faults which logs the errors ... I just can't figure out where I should put my listener. :-/ I'd be grateful for any hint. Thanks in advance. Best regards, Gerhard
[flexcoders] Cairngorm goes Open Source
A friend of mine just forwarded me this... Which I think would be interesting to anyone who uses, has used, or may use Cairngorm. http://weblogs.macromedia.com/amcleod/archives/2008/08/cairngorm_moved.html Rick Winscot
[flexcoders] Cairngorm, LC DS 2.6, web tier compiler
Hi, I tried to create a small testproject with cairngorm, livecycle data services 2.6 beta including flex web tier compiler. When I compile this project in the browser, I don't get any compilier warnings, but I get the following runtime exception and an empty application without any content. Runtime exception: VerifyError: Error #1014: Klasse ModelLocator wurde nicht gefunden. at flash.display::MovieClip/nextFrame() at mx.managers::SystemManager/deferredNextFrame()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\managers\SystemManager.as:299] at mx.managers::SystemManager/preloader_initProgressHandler()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\managers\SystemManager.as:2211] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.preloaders::Preloader/timerHandler()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\preloaders\Preloader.as:398] at flash.utils::Timer/_timerDispatch() at flash.utils::Timer/tick() Does anybody know, what could be wrong? (I copied cairgorm.swc to WEB-INF/flex/user_classes) regards Reini
Re: [flexcoders] cairngorm sevice locator performance?
On Monday 28 Jul 2008, markflex2007 wrote: Do you think if it affect the performance because no garbage collection for each delegate? No. I've never seen anyone even suggest it might be an issue. Why do you ask ? -- Tom Chiverton This email is sent for and on behalf of Halliwells LLP. Halliwells LLP is a limited liability partnership registered in England and Wales under registered number OC307980 whose registered office address is at Halliwells LLP, 3 Hardman Square, Spinningfields, Manchester, M3 3EB. A list of members is available for inspection at the registered office. Any reference to a partner in relation to Halliwells LLP means a member of Halliwells LLP. Regulated by The Solicitors Regulation Authority. CONFIDENTIALITY This email is intended only for the use of the addressee named above and may be confidential or legally privileged. If you are not the addressee you must not read it and must not use any information contained in nor copy it nor inform any person other than Halliwells LLP or the addressee of its existence or contents. If you have received this email in error please delete it and notify Halliwells LLP IT Department on 0870 365 2500. For more information about Halliwells LLP visit www.halliwells.com. -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/flexcoders/join (Yahoo! ID required) * To change settings via email: mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[flexcoders] cairngorm sevice locator performance?
Hi, The most cairngorm application has a service locater file (services.xml)and define all service locators there . and many delegates use one instance of a service locater in many case. Do you think if it affect the performance because no garbage collection for each delegate? Thanks for your help Mark
[flexcoders] cairngorm/remoteObject/VO - my first crack
Good day listers. I got this crazy idea I should have a crack at learning cairngorm/ remoteObject (amfphp) /VO all at once I had previously been using netconnections for my amfphp stuff. At any rate, I was wondering if someone could look over my code to see any blaring no no's in it. The app really does nothing, and is just a test to learn it all. I have a few small issues in my LoadVoDataCommand file. I have comments in there stating what the issues are (even though there are no compile errors). The link is: http://apps.bajamining.com/flexcoders For some reason in the source view, the PHP files come up as blank. However they are in the zip file download (I checked). But they are also so short, I will just add them into here for those who do not want to download the zip to just look at 2 php files. - SERVICE - ?php /** * First tutorial class */ class HelloWorld { /** * first simple method * @returns a string saying 'Hello World!' */ function sayHello() { return Hello World!; } /** * method to pass in a VO * @returns a VO with various data */ function inVo($myVO) { return $myVO; } } ? - VO - ?php class Person { var $_explicitType=com.bajamining.doclib.valueObjects.Person; public $name; public $age; public $spouse; public $email; public $phone; } ? Thanks in advance to anyone willing to have a look. Dustin
[flexcoders] Cairngorm concepts
I have the past few days reading about Cairngorm and, at all, i don't understand the concept behind de events and commands. The people says that a event-command pair corresponds to a user gesture or system event: clicks, app init, etc. But when i browse the Cairngorm store app i found things like these: - Command modifies the model and the model notifies the view throw bindings: this seems logic to me. - Selecting a product in the view directly changes the model.selectedItem: where is the command?. What we have here is a user gesture and a model update without Cairngorm event or command. - Retrieving the products with a GetProductsCommand: what kind of event+command is this?. The system event shold be appInit or the like, and then usually you need to retrieve many things, not only products. Why server request = command? - Finally, the checkout process is divided in a sequence of commands. The user gesture is checkout, but the app uses serveral commands. This has no sense for me. I think the theory was right, but when applied is twisted to match the framework limitations. This is suposed to be the mother of the samples (an the only one, i think). Could any one clarify me when to use a command an how to explain the concept to other people? Thanks - Oscar
Re: [flexcoders] Cairngorm concepts
have a go at this http://www.cairngormdocs.org/tools/CairngormDiagramExplorer.swf DK On Thu, Jul 10, 2008 at 7:37 AM, oscar.12321 [EMAIL PROTECTED] wrote: I have the past few days reading about Cairngorm and, at all, i don't understand the concept behind de events and commands. The people says that a event-command pair corresponds to a user gesture or system event: clicks, app init, etc. But when i browse the Cairngorm store app i found things like these: - Command modifies the model and the model notifies the view throw bindings: this seems logic to me. - Selecting a product in the view directly changes the model.selectedItem: where is the command?. What we have here is a user gesture and a model update without Cairngorm event or command. - Retrieving the products with a GetProductsCommand: what kind of event+command is this?. The system event shold be appInit or the like, and then usually you need to retrieve many things, not only products. Why server request = command? - Finally, the checkout process is divided in a sequence of commands. The user gesture is checkout, but the app uses serveral commands. This has no sense for me. I think the theory was right, but when applied is twisted to match the framework limitations. This is suposed to be the mother of the samples (an the only one, i think). Could any one clarify me when to use a command an how to explain the concept to other people? Thanks - Oscar -- Douglas Knudsen http://www.cubicleman.com this is my signature, like it?
Re: [flexcoders] Cairngorm concepts
Douglas Knudsen wrote: have a go at this http://www.cairngormdocs.org/tools/CairngormDiagramExplorer.swf Very nice indeed. - shaun
[flexcoders] Cairngorm login
Someone used in the session screencast login (using cairngorm) by author David tucker? I'm having difficulties in implementing the session created when the user accesses with username and password. The method getSessionUser () returns true or false. If true returns the welcome screen or false returns to the login screen. package br.com.anfer.manager.business { import br.com.anfer.manager.vo.LoginVO; import com.adobe.cairngorm.business.ServiceLocator; import mx.rpc.IResponder; import mx.rpc.events.ResultEvent; public class LoginDelegate { private var responder:IResponder; private var service:Object; public function LoginDelegate( responder:IResponder ) { this.responder = responder; this.service = ServiceLocator.getInstance().getRemoteObject( ServiceID ); } public function getAutenticarByUser( loginAttempt:LoginVO ):void { var call:Object = service.loadAutenticarByUser( loginAttempt ); call.addResponder( responder ); } public function getSessionUser():void { var call:Object = service.loadSessionUser(); call.addResponder( responder ); } } }
[flexcoders] Cairngorm login
Someone used in the session screencast login (using cairngorm) by author David tucker? I'm having difficulties in implementing the session created when the user accesses with username and password. The method getSessionUser () returns true or false. If true returns the welcome screen or false returns to the login screen. package br.com.anfer.manager.business { import br.com.anfer.manager.vo.LoginVO; import com.adobe.cairngorm.business.ServiceLocator; import mx.rpc.IResponder; import mx.rpc.events.ResultEvent; public class LoginDelegate { private var responder:IResponder; private var service:Object; public function LoginDelegate( responder:IResponder ) { this.responder = responder; this.service = ServiceLocator.getInstance().getRemoteObject( ServiceID ); } public function getAutenticarByUser( loginAttempt:LoginVO ):void { var call:Object = service.loadAutenticarByUser( loginAttempt ); call.addResponder( responder ); } public function getSessionUser():void { var call:Object = service.loadSessionUser(); call.addResponder( responder ); } } }
RE: [flexcoders] Cairngorm Result and Fault Handlers not called
Which version of Cairngorm are you using? seems like an old one. At quick glance your code seems fine. Not really sure what to recommend except maybe upgrade to version 2.2.1? You dont have to do that call to loadWSDL(), it is taken of for you. Here is that the delegate should look like: public class AgentDelegate { private var service:Object; private var responder:IResponder; public function AgentDelegate( responder:IResponder ) { service = ServiceLocator.getInstance().getWebService( agentServices ); this.responder = responder; } public function search( criteria:String ):void { var call:AsyncToken = service.search( criteria ); call.addResponder( responder ); } } And here is the Command class: public class SearchAgentCmd implements ICommand, IResponder { public function SearchAgentCmd() { } public function execute( event:CairngormEvent ):void { var evt:SearchAgentEvent = event as SearchAgentEvent; var delegate:AgentDelegate = new AgentDelegate( this ); delegate.search( evt.name ); } public function result( event:Object ):void { var evt:ResultEvent = event as ResultEvent; UserModel.getInstance().agentSearchResults = evt.result as ArrayCollection; } public function fault( event:Object ):void { var evt:FaultEvent = event as FaultEvent; //show error message somehow } } Dimitrios Gianninas RIA Developer and Team Lead Optimal Payments Inc. From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of jfournet Sent: Thursday, July 03, 2008 6:04 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm Result and Fault Handlers not called I have one command in my application in which the result and fault handlers are not called. All other work fine. The webservice that is tied to it gets executed and data is returned, as I can see it in the flex log file. Does anyone know what might cause this??? Command File: package com.bmc.rem.command.learning { import com.adobe.cairngorm.business.Responder; import com.adobe.cairngorm.commands.Command; import com.adobe.cairngorm.control.CairngormEvent; import com.bmc.rem.common.eventBroadcaster.REMEventBroadcaster; import com.bmc.rem.controller.REMControl; import com.bmc.rem.delegate.probe.ProbeServicesDelegate; import com.bmc.rem.vo.learning.*; import mx.utils.ObjectUtil; import mx.collections.ArrayCollection; public class GetLearningResultsCommand implements Command, Responder { public function execute( event:CairngormEvent ) : void { trace(*** executing get learning results ***); var delegate: ProbeServicesDelegate = new ProbeServicesDelegate( this ); delegate.getLearningResults(event.data); trace(** after delegate.getLearningResults *); } /** * The onResult method is called when the server side method completes successfully. * @param event The event containing the information returned by the server. * */ public function onResult( event : *=null ) : void { trace(***learning data format = ** + ObjectUtil.toString(event.result)); REMEventBroadcaster.getInstance().dispatchEvent (REMControl.EVENT_GET_LEARNING_RESULTS_SUCCESSFUL, null); } /** * The onFault method is called when the server side method call returns an exception. * @param event The event containing the exception returned by the server. * */ public function onFault( event : *=null ) : void { trace(** on fault learning restults); REMEventBroadcaster.getInstance().dispatchEvent (REMControl.EVENT_SHOW_SERVER_ERROR, event.fault.message); REMEventBroadcaster.getInstance().dispatchEvent( REMControl.EVENT_GET_LEARNING_RESULTS_FAILURE ); } } } Delegate: package com.bmc.rem.delegate.probe { import com.adobe.cairngorm.business.Responder; import com.adobe.cairngorm.business.ServiceLocator; import com.bmc.rem.model.ModelLocator; import com.bmc.rem.vo.probe.LearningCriteriaVO; import mx.rpc.AsyncToken; import mx.rpc.soap.mxml.WebService; public class ProbeServicesDelegate { /** * The responder to the server side service calls */ private var responder:Responder; private var service:Object; private var probeServicesFacade:Object; public function ProbeServicesDelegate( responder : Responder ) { this.probeServicesFacade = ServiceLocator.getInstance ().getService(probeServicesFacade) as WebService; if( !ModelLocator.getInstance().isProbeWSDLLoaded) { ModelLocator.getInstance().isProbeWSDLLoaded = true; this.probeServicesFacade.loadWSDL(); } this.responder = responder; } public function startLearning (learningSession:LearningCriteriaVO):void { var startLearningString:String = q1:SetLearningSetting xmlns:q0=\http://tmremprobe.bmc.com/datamodel/common http://tmremprobe.bmc.com/datamodel/common \ xmlns:q1=\http://tmremprobe.bmc.com/ws/ProbeService http://tmremprobe.bmc.com/ws/ProbeService \ + q0:LearningActive/q0: Learning + q0:UserId / + q0:IPRange + q0:StartingIP
[flexcoders] Cairngorm Result and Fault Handlers not called
I have one command in my application in which the result and fault handlers are not called. All other work fine. The webservice that is tied to it gets executed and data is returned, as I can see it in the flex log file. Does anyone know what might cause this??? Command File: package com.bmc.rem.command.learning { import com.adobe.cairngorm.business.Responder; import com.adobe.cairngorm.commands.Command; import com.adobe.cairngorm.control.CairngormEvent; import com.bmc.rem.common.eventBroadcaster.REMEventBroadcaster; import com.bmc.rem.controller.REMControl; import com.bmc.rem.delegate.probe.ProbeServicesDelegate; import com.bmc.rem.vo.learning.*; import mx.utils.ObjectUtil; import mx.collections.ArrayCollection; public class GetLearningResultsCommand implements Command, Responder { public function execute( event:CairngormEvent ) : void { trace(*** executing get learning results ***); var delegate: ProbeServicesDelegate = new ProbeServicesDelegate( this ); delegate.getLearningResults(event.data); trace(** after delegate.getLearningResults *); } /** * The onResult method is called when the server side method completes successfully. * @param event The event containing the information returned by the server. * */ public function onResult( event : *=null ) : void { trace(***learning data format = ** + ObjectUtil.toString(event.result)); REMEventBroadcaster.getInstance().dispatchEvent (REMControl.EVENT_GET_LEARNING_RESULTS_SUCCESSFUL, null); } /** * The onFault method is called when the server side method call returns an exception. * @param event The event containing the exception returned by the server. * */ public function onFault( event : *=null ) : void { trace(** on fault learning restults); REMEventBroadcaster.getInstance().dispatchEvent (REMControl.EVENT_SHOW_SERVER_ERROR, event.fault.message); REMEventBroadcaster.getInstance().dispatchEvent( REMControl.EVENT_GET_LEARNING_RESULTS_FAILURE ); } } } Delegate: package com.bmc.rem.delegate.probe { import com.adobe.cairngorm.business.Responder; import com.adobe.cairngorm.business.ServiceLocator; import com.bmc.rem.model.ModelLocator; import com.bmc.rem.vo.probe.LearningCriteriaVO; import mx.rpc.AsyncToken; import mx.rpc.soap.mxml.WebService; public class ProbeServicesDelegate { /** * The responder to the server side service calls */ private var responder:Responder; private var service:Object; private var probeServicesFacade:Object; public function ProbeServicesDelegate( responder : Responder ) { this.probeServicesFacade = ServiceLocator.getInstance ().getService(probeServicesFacade) as WebService; if( !ModelLocator.getInstance().isProbeWSDLLoaded) { ModelLocator.getInstance().isProbeWSDLLoaded = true; this.probeServicesFacade.loadWSDL(); } this.responder = responder; } public function startLearning (learningSession:LearningCriteriaVO):void { var startLearningString:String = q1:SetLearningSetting xmlns:q0=\http://tmremprobe.bmc.com/datamodel/common\; xmlns:q1=\http://tmremprobe.bmc.com/ws/ProbeService\; + q0:LearningActive/q0: Learning + q0:UserId / + q0:IPRange + q0:StartingIP + learningSession.fromIpAddress + /q0:StartingIP + q0:EndingIP + learningSession.toIpAddress + /q0:EndingIP + /q0:IPRange + q0:URLPattern + learningSession.urlPatternFilter + /q0:URLPattern + q0:CapturePeriod + learningSession.learningDuration + /q0:CapturePeriod + q0:ResultLimit + learningSession.learningCount +
[flexcoders] Cairngorm Event Question
I have been building on my cairngorm experience and have come up to a snag. I understand the whole idea about using the controller to trap and respond to events, however, how do I deal with custom view components that need to respond to an event. For example, I have a custom component that contains an advanced data grid. I am filling the modelLocator with data from the server and using this as the data provider for the advanced data grid. The problem I have is when the user selects a different date, I generate a cairngorm event to load new data from the server. This information is dealt with in the controller, however, I am not able to send the event to the custom component to refresh the advance data grid and display the data. Would someone help me to understand how I can use the events, or generate a new custom event to trigger some activity within a custom view component Thanks for the help Don
Re: [flexcoders] Cairngorm Event Question
You can try Universal Mind Cairngorm Extensions: http://code.google.com/p/flexcairngorm/ Among others it has these Event features: - Built-in support to transport responders for direct view or business logic callbacks. - Implementation of AnnounceFaultEvent to allow business logic to centralize error reporting and logging. - Implementation of EventGenerator to allow developers to automate dispatching of sequences of events. - Events now should self-dispatch... for direct deliver to the business/controller layer. Alen On Thu, Jun 19, 2008 at 6:18 AM, donvoltz [EMAIL PROTECTED] wrote: I have been building on my cairngorm experience and have come up to a snag. I understand the whole idea about using the controller to trap and respond to events, however, how do I deal with custom view components that need to respond to an event. For example, I have a custom component that contains an advanced data grid. I am filling the modelLocator with data from the server and using this as the data provider for the advanced data grid. The problem I have is when the user selects a different date, I generate a cairngorm event to load new data from the server. This information is dealt with in the controller, however, I am not able to send the event to the custom component to refresh the advance data grid and display the data. Would someone help me to understand how I can use the events, or generate a new custom event to trigger some activity within a custom view component Thanks for the help Don
Re: [flexcoders] Cairngorm work with local files?
On Monday 26 May 2008, markflex2007 wrote: Do you think if I can debug cairngorm application with local files like c:\test\bin\test.html? Yup, Cairngorm doesn't care. It even runs in AIR. -- Tom Chiverton This email is sent for and on behalf of Halliwells LLP. Halliwells LLP is a limited liability partnership registered in England and Wales under registered number OC307980 whose registered office address is at Halliwells LLP, 3 Hardman Square, Spinningfields, Manchester, M3 3EB. A list of members is available for inspection at the registered office. Any reference to a partner in relation to Halliwells LLP means a member of Halliwells LLP. Regulated by The Solicitors Regulation Authority. CONFIDENTIALITY This email is intended only for the use of the addressee named above and may be confidential or legally privileged. If you are not the addressee you must not read it and must not use any information contained in nor copy it nor inform any person other than Halliwells LLP or the addressee of its existence or contents. If you have received this email in error please delete it and notify Halliwells LLP IT Department on 0870 365 2500. For more information about Halliwells LLP visit www.halliwells.com. -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/flexcoders/join (Yahoo! ID required) * To change settings via email: mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[flexcoders] cairngorm and webservice demo?
hi, I use cairngorm with remoteobject before. I plan to develop a new app with cairngorm and webservice, I want to see a sample code to figure out how to do this. Do you have some url or information for this? thank you in advance. Mark
[flexcoders] Cairngorm: bundling functions to complete a task?
Example: read a local shared object when user logs on, and send value from local shared object to back-end. The only example I have found of Cairngorm executing a use case of more than one function is a Cairnstore version where ValidateCreditCardCommand needs to continue with CompletePurchaseCommand. It does this by creating the next event i.e. when the Validate command has done its thing, it calls its executeNextCommand() method which public override function executeNextCommand() : void { // Create the next event. var purchaseEvent : PurchaseCompleteEvent = new PurchaseCompleteEvent(); // Dispatch the event. nextEvent = purchaseEvent; super.executeNextCommand(); // Clear the event. nextEvent = null; } Is this how one approaches more complex tasks in Cairngorm? So I would encapsulate the SO read in a event/command/delegate trio, and then call a value to backend trio by generating its event from the SO command. If this is the Cairngorm way, would I try to pass the read in SO value with the command generated event, or should I write the value to the ModelLocator, and then read it back from the ModelLocator with the command of the second event? TIA, Mic
[flexcoders] Cairngorm - always event, always command?
pseudocode: creationComplete var ipAddress:String ipAddress = getUserIP() function getuserIP():String{ // use Services to go out to ColdFusion which can tell me user IP return IP } But Cairngorm encapsulates actions into commands which are driven by an event and a delegate. So how does it handle examples like the one above? Should I create a getIP event, which is dispatched from creationComplete, and use the standard command/delegate path. If the event is not necessary, and it still makes sense to put the action in a command, how would that command get activated without the Cairngorm event process? I know what I mean grin. TIA, Mic.
RE: [flexcoders] Cairngorm - always event, always command?
I can't see how you'd benefit from sidestepping the cairngorm event - command way of working in this case. If you use a service to get the IP address then it's asynchronous, and has a few possible outcomes. I can't see why you wouldn't want to wait for it's got one of those results or an error event and then deal with the outcome. Which is where the cairngorm way of doing things is really helpful. If it's synchronous (like opening a database or prefs file in AIR, say), then you could maybe skip cairngorm (I do, and get away with it, mostly). In which case I can't see the benefit of thinking of (or packaging ) it as a cairngorm command. I'd rather put it somewhere else and know it was a different thing. But what I've found most of the time is that if you're going to do a cairngorm app then it's really worth going with the flow and doing pretty well everything that way, even if it does mean writing 3 classes when you could get away with a local method. Generally, when I've made short cuts like that it's come back and bitten me on the arse. I do still do it when I'm in experimental/creative or lazy mode, but now I'll try to refactor it into the cairngorm way sooner rather than later. Which is sometimes a bit boring, but there you go. Hope that makes (at least some) sense! -Original Message- From: flexcoders@yahoogroups.com on behalf of chigwell23 Sent: Thu 01/05/2008 22:51 To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm - always event, always command? pseudocode: creationComplete var ipAddress:String ipAddress = getUserIP() function getuserIP():String{ // use Services to go out to ColdFusion which can tell me user IP return IP } But Cairngorm encapsulates actions into commands which are driven by an event and a delegate. So how does it handle examples like the one above? Should I create a getIP event, which is dispatched from creationComplete, and use the standard command/delegate path. If the event is not necessary, and it still makes sense to put the action in a command, how would that command get activated without the Cairngorm event process? I know what I mean grin. TIA, Mic. __ This communication is from Primal Pictures Ltd., a company registered in England and Wales with registration No. 02622298 and registered office: 4th Floor, Tennyson House, 159-165 Great Portland Street, London, W1W 5PA, UK. VAT registration No. 648874577. This e-mail is confidential and may be privileged. It may be read, copied and used only by the intended recipient. If you have received it in error, please contact the sender immediately by return e-mail or by telephoning +44(0)20 7637 1010. Please then delete the e-mail and do not disclose its contents to any person. This email has been scanned for Primal Pictures by the MessageLabs Email Security System. __winmail.dat
Re: [flexcoders] Cairngorm Model Locator
On Tuesday 29 Apr 2008, gerhard.schlager wrote: 1) How can I make sure that unused data gets removed from the Model Locator? Why do you need to do so ? -- Tom Chiverton Helping to vitalistically negotiate B2C content on: http://thefalken.livejournal.com This email is sent for and on behalf of Halliwells LLP. Halliwells LLP is a limited liability partnership registered in England and Wales under registered number OC307980 whose registered office address is at Halliwells LLP, 3 Hardman Square, Spinningfields, Manchester, M3 3EB. A list of members is available for inspection at the registered office. Any reference to a partner in relation to Halliwells LLP means a member of Halliwells LLP. Regulated by The Solicitors Regulation Authority. CONFIDENTIALITY This email is intended only for the use of the addressee named above and may be confidential or legally privileged. If you are not the addressee you must not read it and must not use any information contained in nor copy it nor inform any person other than Halliwells LLP or the addressee of its existence or contents. If you have received this email in error please delete it and notify Halliwells LLP IT Department on 0870 365 2500. For more information about Halliwells LLP visit www.halliwells.com. -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/flexcoders/join (Yahoo! ID required) * To change settings via email: mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[flexcoders] Cairngorm Model Locator
Hello! I'm currently creating the software design for a large application which we are going to build using Flex 3, Cairngorm 2.2.1 and SabreAMF (PHP). I have already created my first prove of concept, however, I have a few issues with Cairngorm's Model Locator. 1) How can I make sure that unused data gets removed from the Model Locator? The simple solution would be to destroy the data that a view loaded when the view gets closed. However, we are going to use flexmdi and it's quite possible that one or more MDI windows are using the same data. The only solution I've come up so far is to make the Model Locator aware of which window uses which data. Therefore it could free the unused data when no view uses it anymore. Yet, this could be a very error-prone solution. Moreover, I would loose the last bit of loose coupling. So, I'm not sure if that's a good way to handle this. Well, the Model Locator itself is often seen as an anti-pattern as well ... 2) Should I really put everything into _one_ Model Locator? I guess there could be quite a large number of public variables. Our application will have up to 50 different views and about twice as many VO ... I'd be really grateful if somebody could enlighten my ;-) or if you could give me some tips on how to solve those two problems. Thanks in advance for your help. Best regards, Gerhard
RE: [flexcoders] Cairngorm Model Locator
Gerhard, One approach I took is to have localized models that apply to specific modules in the application, as opposed to having a proliferation of variables that apply across multiple aspects of the application, which could get ugly. They still could live in the singleton Model Locator, but could be condition 're-set' when no longer used or needed to be refreshed. Like ModelLocator.getInstance().mylocalModel = new MyLocalModel(). I'd think there'll be a lot of oppinions about how to approach this. Jeff -Original Message- From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of gerhard.schlager Sent: Tuesday, April 29, 2008 12:24 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Cairngorm Model Locator Hello! I'm currently creating the software design for a large application which we are going to build using Flex 3, Cairngorm 2.2.1 and SabreAMF (PHP). I have already created my first prove of concept, however, I have a few issues with Cairngorm's Model Locator. 1) How can I make sure that unused data gets removed from the Model Locator? The simple solution would be to destroy the data that a view loaded when the view gets closed. However, we are going to use flexmdi and it's quite possible that one or more MDI windows are using the same data. The only solution I've come up so far is to make the Model Locator aware of which window uses which data. Therefore it could free the unused data when no view uses it anymore. Yet, this could be a very error-prone solution. Moreover, I would loose the last bit of loose coupling. So, I'm not sure if that's a good way to handle this. Well, the Model Locator itself is often seen as an anti-pattern as well ... 2) Should I really put everything into _one_ Model Locator? I guess there could be quite a large number of public variables. Our application will have up to 50 different views and about twice as many VO ... I'd be really grateful if somebody could enlighten my ;-) or if you could give me some tips on how to solve those two problems. Thanks in advance for your help. Best regards, Gerhard -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
Re: [flexcoders] Cairngorm Model Locator
You definitely don't want your model keeping track of views using its data. My 30 second recommendation would be to look into the UM Cairngorm extensions as they can help you reduce the amount of clutter that needs to be stored on the/a model. Specifically view callbacks is the feature that helps enable that. Search flexcoders for additional discussion of UM Cairngorm. HTH, Ben On Tue, Apr 29, 2008 at 12:24 PM, gerhard.schlager [EMAIL PROTECTED] wrote: Hello! I'm currently creating the software design for a large application which we are going to build using Flex 3, Cairngorm 2.2.1 and SabreAMF (PHP). I have already created my first prove of concept, however, I have a few issues with Cairngorm's Model Locator. 1) How can I make sure that unused data gets removed from the Model Locator? The simple solution would be to destroy the data that a view loaded when the view gets closed. However, we are going to use flexmdi and it's quite possible that one or more MDI windows are using the same data. The only solution I've come up so far is to make the Model Locator aware of which window uses which data. Therefore it could free the unused data when no view uses it anymore. Yet, this could be a very error-prone solution. Moreover, I would loose the last bit of loose coupling. So, I'm not sure if that's a good way to handle this. Well, the Model Locator itself is often seen as an anti-pattern as well ... 2) Should I really put everything into _one_ Model Locator? I guess there could be quite a large number of public variables. Our application will have up to 50 different views and about twice as many VO ... I'd be really grateful if somebody could enlighten my ;-) or if you could give me some tips on how to solve those two problems. Thanks in advance for your help. Best regards, Gerhard
[flexcoders] Cairngorm - reload wsdl file
Hi all, I'm creating an app using Cairngorm and Swf Studio. (The app runs form CD) While the application initializes i need to talk to a webservice. The problem is that the service locator class loads the wsdl file automatically. If the user is not online the wsdl can obviously not be loaded. In this case I want to display an error message (e.g. please check your connection...) If the user presses ok I want to reload the wsdl before I attempt to make another service call. Is there any way I can reload the wsdl file or re-initialize the service locator? Thanks Robin