87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovichpackage
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich{
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.EventDispatcher;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.DataEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.Event;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.FocusEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.HTTPStatusEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.IOErrorEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.ProgressEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.events.SecurityErrorEvent;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich import flash.net.FileReference;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich /**
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich * The base FlashUploader class for YUI 3.5 FlashUploader.
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich *
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich * @author Allen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich */
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich public class File extends EventDispatcher {
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich //--------------------------------------
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich // Constructor
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich //--------------------------------------
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich public function File(newFile:FileReference)
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich {
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich var now : Date = new Date();
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileId = "fileyui_" + now.getTime() + "_" + idCounter;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference = newFile;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich File.idCounter+=1;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(Event.OPEN, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(ProgressEvent.PROGRESS, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(Event.COMPLETE, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(HTTPStatusEvent.HTTP_STATUS, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(IOErrorEvent.IO_ERROR, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.fileReference.addEventListener(Event.CANCEL, this.fileEventHandler);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich }
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich private function fileEventHandler (event:Event) : void {
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich this.dispatchEvent(event);
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich }
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich public var fileId:String = "";
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich public var fileReference:FileReference;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich private static var idCounter:uint = 0;
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich // cancel, complete, httpStatus, ioError, open, progress, securityError, select, uploadCompleteData
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich }
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich
87fff29257e74dac31f23eac9e31c028a551057fAllen Rabinovich}