package com.imt.intimamedia.commands.measures { import com.adobe.cairngorm.control.CairngormEvent; import com.imt.flex.cairngormExtended.command.SuperCommand; import com.imt.intimamedia.business.MeasureDelegate; import com.imt.intimamedia.events.measures.GetMeasuresEvent; import com.imt.intimamedia.model.ApplicationModelLocator; import com.imt.intimamedia.views.common.ImtToaster; import com.imt.intimamedia.views.physician.report.ReportView; import com.imt.intimamedia.views.physician.measure.GeneralMeasureView; import com.imt.intimamedia.vo.ReturnObjectVo; import mx.collections.ArrayCollection; import mx.resources.ResourceManager; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; import mx.controls.Alert; /** * Commande de récupération des mesures pour les images selectionnees */ public class GetMeasuresCommand extends SuperCommand { private var _resultArray : Array; public var dispatcher : *; public var list : Array; /** * Execution de la commande * * @param event Evénement de type CairngormEvent * @return void */ override public function execute( event : CairngormEvent ) : void { super.execute( event ); var delegate : MeasureDelegate = new MeasureDelegate( this ); var getMeasuresEvent : GetMeasuresEvent = GetMeasuresEvent( event ); delegate.getMeasures( getMeasuresEvent.imgList ); dispatcher = getMeasuresEvent.dispatcher; } /** * Résultat de la commande * * @param result Un objet * @return void */ override public function result( result : Object ) : void { var resultEvent : ResultEvent = ResultEvent( result ); list = resultEvent.result as Array; dispatcher.setMeasures( list ); super.result( result ); } /** * Résultat de la commande * * @param result Un objet * @return void */ override public function fault( fault : Object ) : void { super.fault( fault ); // to display image in central frame if (dispatcher.name == 'generalMeasure') dispatcher.displayFirstImage(); if (( fault as FaultEvent ).fault.faultString == ApplicationModelLocator.getInstance().ERROR_SESSION ) { ApplicationModelLocator.displaySessionExpired( fault as FaultEvent ); } else { if (( fault as FaultEvent ).fault.faultString != ApplicationModelLocator.getInstance().NO_MEASURES_FOUND) { var toastMessage : ImtToaster = new ImtToaster(); toastMessage.titleMessage = ResourceManager.getInstance().getString('labels', 'error.title'); toastMessage.message = ResourceManager.getInstance().getString('labels', 'report.error.getMeasures'); toastMessage.level = ImtToaster.ERROR; ApplicationModelLocator.getInstance().toaster.toast( toastMessage ); } } } } }