PureMVC
Home
About
Code
Docs
FAQ
Forums
News
Showcase
Contact
Jobs
Welcome,
Guest
. Please
login
or
register
.
May 25, 2013, 07:54:11 PM
News:
ATTENTION: Spambots must die! Humans must visit
http://contact.futurescale.com
to request forum access.
PureMVC Architects Lounge
PureMVC Manifold
Port to AS3
Standard Version
Demos and Utils
Loadup - A PureMVC AS3 Utility
Pages:
1
2
[
3
]
4
« previous
next »
Author
Topic: Loadup - A PureMVC AS3 Utility (Read 18184 times)
philipSe
Sr. Member
Posts: 136
Re: Loadup - A PureMVC AS3 Utility
«
Reply #30 on:
November 18, 2009, 04:46:14 AM »
Since my previous post, it has occurred to me that...
- the intermittent, ad hoc product loads could also be done with a single instance of LoadMonitorProxy, where keepResourceListOpen() is invoked
- then, as required, a product resource can be added to the monitor; it will be loaded as usual
- there will not be a loading complete notification until closeResourceList() is invoked and all outstanding resources have been loaded.
Just thought I'd mention it.
----Philip
Logged
puremvc
Global Moderator
Hero Member
Posts: 2790
Re: Loadup - A PureMVC AS3 Utility
«
Reply #31 on:
November 18, 2009, 09:35:13 AM »
Although it seems like you might, in reality, you don't really want to query the StateMachine for the current State and take branching actions based on State. That would lead to a brittle app where it is difficult to refactor the FSM.
Instead, you kick off actions when you arrive in a given State, and you wait until those actions have completed before sending off an ACTION notification to kick the StateMachine into another State.
-=Cliff>
Logged
pirol
Newbie
Posts: 7
Loading images in a Gallery
«
Reply #32 on:
November 30, 2009, 03:27:35 PM »
Hi,
Because I just started to programm with pureMVC, I have a question about loading images after I loaded a xml.
I use the Startup Manager from this site to load a xml and a css file. Now i have a ImageVO class which contents the urls of the images.
My problem is where I should put the loading Code and the ImageData.
On one hand it is a Data so it should be in a VO but on the other hand it is easier to load it in the view.
What way is the best:
Should I put the loading code and the data in the ImageVO
Should I create a new VO and a new Proxy
Should I load it in a Mediator at put the data into the viewComponent
Should I load it directly in the view
I hope u can understand my problem.
Logged
Ross
Newbie
Posts: 2
Loadup - SoundAsset
«
Reply #33 on:
February 10, 2010, 01:42:44 PM »
Hi Philip,
Thanks for this great utility. I just started a big project with a lot of asset-loading stuff and it's really amazing, how easily and clearly I can manage these loading operations with your Loadup utility. Thanks to Tek (
http://www.tekool.net
), I use it in a pure actionscript project.
But now I came to a problem. I would like to use this utility to load sound assets (.mp3). In fact, your utility does load such assets. At least I think it does. But I don't know how to cast this asset properly to a sound object.
I wrote an AssetOfTypeFlashAudio class, extending the AssetBase class and implementing IAsset with a getter method, that returns a Sound object. Finally I added a AUDIO_ASSET_TYPE const to the Loadup class.
When the asset is loaded now, it's returned by the AssetOfTypeFlashAudio class. Then I try to cast it with var sound:Sound = audioAssetClass.sound . This works, too. But as soon as I try to play it (sound.play) it throws an error #1009: Cannot access a property or method of a null object reference.
Has anyone already used this utility to load sound assets?
Thank you for your time.
Logged
philipSe
Sr. Member
Posts: 136
Re: Loadup - A PureMVC AS3 Utility
«
Reply #34 on:
February 11, 2010, 04:35:20 AM »
I presume the key factor here is the loader class. You don't mention the AssetFactory /IAssetFactory class and interface.
By default, a file with extension .mp3 will get treated the same as a text file, since there is no specific recognition of the mp3 file type. Hence, by default, the file will get loaded by a loader of type URLLoader (see AssetFactory and AssetTypeMap).
I note that the Sound class itself has the facility to load mp3 files, so maybe the Sound class must be used as the loader. This would require a new loader class in Loadup, using Sound, and implementing the IAssetLoader interface.
No doubt there are others out there that can comment more knowledgeably on this requirement.
----Philip
Logged
Ross
Newbie
Posts: 2
Re: Loadup - A PureMVC AS3 Utility
«
Reply #35 on:
February 11, 2010, 09:56:01 AM »
Thanks for this tip. I actually thought about this loader issue. But I didn't find the right place to change it... Now I found it and it's working.
I added a new loader AssetLoadBySoundLoader.as, which organizes the sound load. The only problem is, that the loaderContext should be of type SoundLoaderContext. If I change it, it cannot implement IAssetLoader... So I just set this parameter to null (loader.load( url, null)).
I'll send the files to you, so you can add them to the package, if you want.
Logged
philipSe
Sr. Member
Posts: 136
Re: Loadup - A PureMVC AS3 Utility
«
Reply #36 on:
February 12, 2010, 05:33:53 AM »
@Ross
Thanks for this work. It should be a great addition to the utility. I will incorporate it into a new release as soon as I can. I expect the release to also include support for flv type files, based on work contributed by another forum member, and it should also address the flash-only requirement as dealt with previously on this forum.
----Philip
Logged
Tekool
Sr. Member
Posts: 196
Re: Loadup - A PureMVC AS3 Utility
«
Reply #37 on:
February 12, 2010, 05:56:02 AM »
Excellent news Philip. If you want to find the latest version of the source code for the Flash Loadup dependencies, you can find it
here
or
through my blog post
.
Logged
svleeuwen
Newbie
Posts: 6
Re: Loadup - A PureMVC AS3 Utility
«
Reply #38 on:
June 09, 2010, 04:26:19 AM »
Hi Phillip,
Is there a way to cancel an active loading sequence?
Thnx in advance,
Sander
Logged
philipSe
Sr. Member
Posts: 136
Re: Loadup - A PureMVC AS3 Utility
«
Reply #39 on:
June 10, 2010, 10:18:17 AM »
@Sander
The answer is No, I suppose. But let me contribute the following thoughts
the difficulty is that the resource loads are typically requested as asynchronous services to be executed on a remote server, so once requested, it is hard to influence them
if you have dependencies within the set of resources to be loaded, then if a load fails, the dependent loads will not commence
if, after starting the load via the loadResources() call, you decide that you no longer want the resources, you could simply discard the response messages as they return to you, and send a 'load failed' notification for each such response, including a 'do not retry' instruction; the objective of such failed notifications is to move loadup to the 'finished incomplete' state as soon as possible.
Hope this helps.
----Philip
Logged
svleeuwen
Newbie
Posts: 6
Re: Loadup - A PureMVC AS3 Utility
«
Reply #40 on:
June 14, 2010, 02:27:41 AM »
Hi Philip,
Thanks, the 3rd suggestion should be the way to go in my case.
Logged
puremvc
Global Moderator
Hero Member
Posts: 2790
Re: Loadup - A PureMVC AS3 Utility
«
Reply #41 on:
July 29, 2010, 03:01:16 PM »
Philip has updated the Loadup utility to Version 2.1 with some new asset types, separate flex and flash swcs and a new build script to create them. Note the Flex specific classes have been renamed to reflect it.
See the Release Notes:
http://trac.puremvc.org/Utility_AS3_Loadup/wiki/ReleaseNotes
-=Cliff>
Logged
svleeuwen
Newbie
Posts: 6
Re: Loadup - A PureMVC AS3 Utility
«
Reply #42 on:
July 06, 2011, 04:57:01 AM »
Hi Philip,
It has been a while since i worked with this utility. But i want to come back to my previous question.
You pointed out the following:
* if, after starting the load via the loadResources() call, you decide that you no longer want the resources, you could simply discard the response messages as they return to you, and send a 'load failed' notification for each such response, including a 'do not retry' instruction; the objective of such failed notifications is to move loadup to the 'finished incomplete' state as soon as possible.
How would that fit in the new Loadup situation?
Can you give me an example of how to discard the response messages and send a load failed notification?
This happends in the mediator who initiated the loading right?
Thanks in advance, Sander
Logged
philipSe
Sr. Member
Posts: 136
Re: Loadup - A PureMVC AS3 Utility
«
Reply #43 on:
July 07, 2011, 09:01:29 AM »
Here is an approach. There may be other and better approaches. It does not involve the mediator.
Let there be a Loadup instance called lux, with name luxName. Let there be a new proxy, of type Proxy, with name luxHelper, where luxHelper is easily derived from luxName. luxName and luxHelper are Strings or course. For example, luxHelper = luxName + "Helper".
If the event occurs that means we would like to abort the loadup process
- create and register the luxHelper proxy: = new Proxy( luxHelper, new Boolean(true) );
- so, the data property of the proxy is a Boolean.
For each ILoadupProxy proxy that is interacting with lux, assume there is a 'loaded' method and a 'failed' method, invoked within the app. In the loaded method, we have
if ( facade.hasProxy( luxHelper ) {
retrieve the helper proxy
if the helper proxy data is true, invoke the 'failed' method and quit the loaded method
else carry on with the loaded method
}
I have avoided making a new class for the helper proxy, but it could be better to have one. Also, the helper proxy could be created and registered at the outset, witrh data set to false.
I hope this makes sense and that it helps.
----Philip
Logged
svleeuwen
Newbie
Posts: 6
Re: Loadup - A PureMVC AS3 Utility
«
Reply #44 on:
July 13, 2011, 03:11:19 AM »
Hi Philip,
Thanks, it works. But i'm not sure if i interpreted everything ok.
I expanded the AssetProxy's loadingComplete function as following:
Code:
public function loadingComplete( loadedData :Object ) :void {
loaded = true;
assetData = loadedData;
loadingErrorMessage = "";
if(facade.hasProxy(assetGroupProxy.getLUMonitorProxyName() + "_HELPER"))
{
var helperProxy:IProxy = facade.retrieveProxy(assetGroupProxy.getLUMonitorProxyName() + "_HELPER") as IProxy
if(helperProxy.getData())
{
doSendNotification( Loadup.ASSET_LOAD_FAILED, getProxyName() );
}
}
else
{
doSendNotification( Loadup.NEW_ASSET_AVAILABLE, asset );
assetGroupProxy.loadingProgress( this, /* force report */ true );
doSendNotification( Loadup.ASSET_LOADED, getProxyName() );
}
}
Is this the way to go?
And maybe if I explain the situation in my application more clearly you could give some more suggestions.
I have a mediator wich starts loading 2 swf's. The load is initiated by a click on a chapterbutton.
There are multiple chapters and the user is able to switch between them.
If the user clicks chapter 1, two swf's start loading.
If the user clicks chapter 2 while the two swf's have not yet finished loading, it should cancel the first two and start loading those of chapter 2.
I hope this is understandable
Thnx, Sander
Logged
Pages:
1
2
[
3
]
4
« previous
next »
Jump to:
Please select a destination:
-----------------------------
Announcements and General Discussion
-----------------------------
=> General Discussion
=> Getting Started
=> Architecture
=> Public Demos, Tools and Applications
===> Fabrication
-----------------------------
PureMVC Manifold
-----------------------------
=> Port Authority
===> Contributor Central
===> Client Side
===> Server Side
=> Port to AS2
===> Standard Version
=====> Bug Report
=====> Demos and Utils
=> Port to AS3
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to ColdFusion
===> Standard Version
=====> Bug Report
=====> Demos and Utils
=> Port to C++
===> MultiCore Version
=====> Demos and Utils
=====> Bug Report
=> Port to CSharp
===> Standard Version
=====> Bug Report
=====> Demos and Utils
=> Port to Dart
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to Haxe
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to Java
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to JavaScript
===> Demos and Utils
===> Native JS Branch
=====> Bug Report
===> PrototypeJS Branch
=====> Bug Report
===> Objs Branch
=====> Bug Report
===> MooTools Branch
=====> Bug Report
===> ExtJS Branch
=====> Bug Report
=> Port to Objective C
===> Standard Version
=====> Bug Report
=====> Demos and Utils
=> Port to Perl
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to PHP
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to Python
===> Standard Version
=====> Bug Report
=====> Demos and Utils
===> MultiCore Version
=====> Bug Report
=====> Demos and Utils
=> Port to Ruby
===> Standard Version
=====> Bug Report
=====> Demos and Utils
=> Port to TypeScript
===> Standard Version
=====> Bug Report
=====> Demos and Utilities
===> MultiCore Version
=====> Bug Report
=====> Demos and Utilities
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Powered by SMF 1.1.11
|
SMF © 2006-2007, Simple Machines LLC
Loading...
Copyright © 2006-2008 Futurescale, Inc.