Exemplo n.º 1
0
        public BurnMediaPresenter
        (
            IBurnMediaView view,
            MediaObjectsStateService mediaService,
            SynchronizationContext syncContext
        )
        {
            View = view;

            Status              = BurnStatus.None;
            DriveService        = new MediaDrivesService( );
            MediaService        = mediaService;
            __ActiveMediaObject = MediaService.ActiveMediaItem;
            __SyncContext       = syncContext;

            _progressCompletedEvent = new AutoResetEvent(false);

            View.Load += new EventHandler(View_Load);

            View.SelectedDriveChanged += new EventHandler(View_SelectedDriveChanged);
            View.SelectedSpeedChanged += new EventHandler(View_SelectedSpeedChanged);
            View.VolumeNameChanged    += new EventHandler(View_VolumeNameChanged);
            View.Eject  += new EventHandler(View_Eject);
            View.Cancel += new EventHandler(View_Cancel);
            View.Test   += new EventHandler(View_Test);
            View.Burn   += new EventHandler(View_Burn);

            DriveService.SelectedDriveChanged      += new EventHandler(DriveService_SelectedDriveChanged);
            DriveService.SelectedDriveSpeedChanged += new EventHandler(DriveService_SelectedDriveSpeedChanged);
            DriveService.SpeedsChanged             += new EventHandler(DriveService_SpeedsChanged);
            DriveService.SelectedDriveStateChanged += new EventHandler(DriveService_SelectedDriveStateChanged);
        }
Exemplo n.º 2
0
        public MediaAutoCretionService(MediaObjectsStateService mediaStateService)
        {
            __MediaStateService = mediaStateService;

            __MediaStateService.MediaQueue.MediaObjectUpdated += new EventHandler <MediaItemEventArgs> (MediaQueue_MediaItemUpdated);
            __MediaStateService.MediaQueue.MediaItemAdded     += new EventHandler <MediaItemEventArgs> (MediaQueue_MediaItemUpdated);

            Commands.Add(new RefereshQueueCommand(__MediaStateService, ExecutionStatus.Pending));
            Commands.Add(new CreateMediaCommand(__MediaStateService, OnNotifyMediaCreationResult));

            IntervalInSeconds = 900;
        }
Exemplo n.º 3
0
        public void Run( )
        {
            RefereshQueueCommand          refreshMediaCmd;
            MediaJobStatusController      statusController;
            MediaConfigurationController  configController;
            MediaJobMaintenanceController maintenanceController;
            MediaAutoCreationController   autoCreationController;


            __State         = new MediaObjectsStateService(new MediaCreationQueue( ));
            _mainForm       = new MediaConfigurationDialog( );
            refreshMediaCmd = new RefereshQueueCommand(__State);

            refreshMediaCmd.Execute( );

            statusController = new MediaJobStatusController(_mainForm.MediaJobStatusView,
                                                            __State,
                                                            System.Windows.Forms.WindowsFormsSynchronizationContext.Current);

            configController = new MediaConfigurationController(_mainForm.MediaConfigurationView,
                                                                WindowsFormsSynchronizationContext.Current);

            maintenanceController = new MediaJobMaintenanceController(_mainForm.MediaJobMaintenanceView,
                                                                      WindowsFormsSynchronizationContext.Current);

            autoCreationController = new MediaAutoCreationController(_mainForm.AutoCreationConfigView,
                                                                     WindowsFormsSynchronizationContext.Current);

            statusController.BurnActiveMedia += new EventHandler(statusController_BurnActiveMedia);

            try
            {
                _mainForm.Icon = Leadtools.Medical.Media.AddIns.Properties.Resources.BurnConfig;

                _mainForm.ShowDialog( );
            }
            finally
            {
                statusController.BurnActiveMedia -= new EventHandler(statusController_BurnActiveMedia);

                autoCreationController.TearDown( );

                maintenanceController.TearDown( );

                configController.TearDown( );

                statusController.TearDown( );

                _mainForm.Dispose( );

                __State.Dispose( );
            }
        }
Exemplo n.º 4
0
        public override void AddServices( )
        {
            MediaObjectsStateService mediaService;


            mediaService = new MediaObjectsStateService(new MediaCreationQueue( ));

            RegisterServices(DisplayName);

            RegisterMediaCleaningService(mediaService);

            RegisterAutoCreationService(mediaService);
        }
Exemplo n.º 5
0
        private void RegisterAutoCreationService(MediaObjectsStateService mediaService)
        {
            MediaAutoCretionService mediaCreator;
            PRIMERABurningProcessor processor;


            mediaCreator = new MediaAutoCretionService(mediaService);
            processor    = new PRIMERABurningProcessor(AddInsSession.AddInConfiguration.MediaFolder, new MediaLabelsCreator( ));


            mediaCreator.MediaBurningProcessor = processor;

            if (MediaAutoCreationConfiguration.EnableAutoMediaCreation)
            {
                mediaCreator.Start( );
            }

            ServiceLocator.Register <MediaAutoCretionService> (mediaCreator);
        }
Exemplo n.º 6
0
        private void RegisterMediaCleaningService(MediaObjectsStateService mediaService)
        {
            CommandAsyncProcessor        cleaner;
            CleanExpiredMediaJobsCommand cleanCommand;


            cleaner      = new CommandAsyncProcessor( );
            cleanCommand = new CleanExpiredMediaJobsCommand(mediaService);

            cleaner.Commands.Add(new RefereshQueueCommand(mediaService));
            cleaner.Commands.Add(cleanCommand);

            if (MaintenanceConfiguration.Enabled)
            {
                cleaner.Start( );
            }

            ServiceLocator.Register <CommandAsyncProcessor> (cleaner);
        }
Exemplo n.º 7
0
        public MediaJobStatusController
        (
            IMediaJobStatusView view,
            MediaObjectsStateService queueService,
            SynchronizationContext syncContext
        )
        {
            View                = view;
            QueueService        = queueService;
            __SyncContext       = syncContext;
            __CreatingMediaJobs = new List <MediaCreationManagement> ( );
            __ServicesState     = ServiceLocator.Retrieve <MediaServicesState> ( );


            View.Load              += new EventHandler(view_Load);
            View.DeleteMedia       += new EventHandler(View_DeleteMedia);
            View.RefreshMediaQueue += new EventHandler(View_RefreshMediaQueue);
            View.CreateMedia       += new EventHandler(view_CreateMedia);
            View.RecreateMedia     += new EventHandler(view_RecreateMedia);
            View.BurnActiveMedia   += new EventHandler(View_BurnActiveMedia);

            QueueService.MediaQueue.MediaItemRemoved   += new EventHandler <MediaItemEventArgs> (MediaQueue_MediaItemRemoved);
            QueueService.MediaQueue.MediaItemAdded     += new EventHandler <MediaItemEventArgs> (MediaQueue_MediaItemAdded);
            QueueService.MediaQueue.MediaObjectUpdated += new EventHandler <MediaItemEventArgs> (MediaQueue_MediaObjectUpdated);
            QueueService.MediaQueue.MediaQueueCleared  += new EventHandler(MediaQueue_MediaQueueCleared);

            QueueService.SelectedMediaItems.MediaItemRemoved   += new EventHandler <MediaItemEventArgs> (SelectedMediaQueue_Change);
            QueueService.SelectedMediaItems.MediaItemAdded     += new EventHandler <MediaItemEventArgs> (SelectedMediaQueue_Change);
            QueueService.SelectedMediaItems.MediaObjectUpdated += new EventHandler <MediaItemEventArgs> (SelectedMediaQueue_Change);
            QueueService.SelectedMediaItems.MediaQueueCleared  += new EventHandler(SelectedMediaQueue_Change);

            QueueService.ActiveMediaItemChanged += new EventHandler(QueueService_ActiveMediaItemChanged);

            __ServicesState.AutoCreationServiceStateChanged     += new EventHandler(__ServicesStateChanged);
            __ServicesState.MediaMaintenanceServiceStateChanged += new EventHandler(__ServicesStateChanged);
        }