10.12.2012 Views

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Example 8-12. ConcreteSubject.as (continued)<br />

}<br />

}<br />

for (var notify in this.observers)<br />

{<br />

observers[notify].update (news,sports,<br />

stocks,entertainment);<br />

var nowNews:String=" sees that "+<br />

news + " is interesting,";<br />

var nowSports:String = " and learns that " + sports;<br />

var nowStocks:String=".\nWhoaa!,<br />

the stock market is at " + stocks;<br />

var nowEntertain:String=" and "+ entertainment +<br />

" is showing at the Bijou.";<br />

trace (observers[notify].subName + nowNews +<br />

nowSports + nowStocks + nowEntertain);<br />

}<br />

}<br />

//Add all necessary states<br />

public function setType (news:String,sports:String,stocks:Number,<br />

entertainment:String):void<br />

{<br />

this.news=news;<br />

this.sports=sports;<br />

this.stocks=stocks;<br />

this.entertainment=entertainment;<br />

notifyObserver ( );<br />

}<br />

Example 8-13. ConcreteObserver.as<br />

package<br />

{<br />

//Concrete Observer<br />

class ConcreteObserver implements Observer<br />

{<br />

//Store Additional States<br />

private var news:String;<br />

private var sports:String;<br />

private var stocks:Number;<br />

private var entertainment:String;<br />

//Subscriber's ID<br />

public var subName:String;<br />

//Constructor Function<br />

function ConcreteObserver(subName:String):void<br />

{<br />

trace(subName + " has subscribed");<br />

this.subName=subName;<br />

}<br />

Example: Adding States and Identifying Users | 299

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!