示例#1
0
        public void HandleClearItemsReady(ClearItemsReady message)
        {
            // how many steps are expected is decided in Common.Constants.Tasks.PreparationStepsForLoad
            Preparations.Processed++;

            if (Preparations.Completed)
            {
                SendProgress();

                // feature definitions already loaded?
                if (tempFeatureDefinitionStore != null)
                {
                    eventAggregator.BeginPublishOnUIThread(tempFeatureDefinitionStore);
                    tempFeatureDefinitionStore = null;
                }

                // locations already loaded?
                if (FarmFeatureDefinitions.Completed && tempLocationStore.Count() > 0)
                {
                    foreach (LocationsLoaded loadedMsg in tempLocationStore)
                    {
                        eventAggregator.BeginPublishOnUIThread(loadedMsg);
                    }

                    tempLocationStore.Clear();
                }
            }
        }
        public void Handle(ClearItems message)
        {
            allItems.Clear();
            var cleared = new ClearItemsReady(message.TaskId);

            eventAggregator.PublishOnUIThread(cleared);
        }
        /// <summary>
        /// Forward message from Caliburn to akka task actor
        /// </summary>
        /// <param name="message"></param>
        public void Handle(ClearItemsReady message)
        {
            var taskActor = taskActors[message.TaskId];

            taskActor.Tell(message);
        }