ActionScript 3.0 Design Patterns

(Chris Devlin) #1
Dynamic Selection of Concrete Components and Decorations: A Hybrid Car Dealership | 169

Example 4-45. GPS.as


package
{
public class GPS extends Decorator
{
private var auto:Auto;
public function GPS(auto:Auto)
{
this.auto=auto;
}
override public function getInformation( ):String
{
return auto.getInformation( ) +
" Global Positioning System~";
}
override public function price( ):Number
{
return 345.88 + auto.price( );
}
}
}


Example 4-46. RearViewVideo.as


package
{
public class RearViewVideo extends Decorator
{
private var auto:Auto;
public function RearViewVideo(auto:Auto)
{
this.auto=auto;
}
override public function getInformation( ):String
{
return auto.getInformation( ) + " Rear View Video~";
}
override public function price( ):Number
{
return 560.75 + auto.price( );
}
}
}


Example 4-47. MP3.as


package
{
public class MP3 extends Decorator
{
private var auto:Auto;
public function MP3(auto:Auto)
{
this.auto=auto;

Free download pdf