private void DeactivateFeatures() { var featureDeactivationRequest = new DeactivateFeaturesRequest( FeatureDeactivations, force, elevatedPrivileges ); subTaskActor.Tell(featureDeactivationRequest); }
private void HandleDeactivateFeaturesRequest(DeactivateFeaturesRequest message) { _log.Debug("Entered HandleDeactivateFeaturesRequest with Id " + Id.ToString()); if (!TaskCanceled) { if (isSubTaskActor) { ParentTaskActor = Sender; } Title = message.Title; requestsToBeConfirmed = new List <FeatureToggleRequest>(); foreach (ActivatedFeatureSpecial af in message.Features) { FeatureDefinition definition; if (af.Definition == null) { definition = Factories.FeatureDefinitionFactory.GetFaultyDefinition( af.ActivatedFeature.FeatureId, af.Location.Scope, af.ActivatedFeature.Version); } else { definition = af.Definition; } var toggleRequest = new FeatureToggleRequest( definition, af.Location, // force is already set to true, so now it is same as deactivation ... // message.Action, Enums.FeatureAction.Deactivate, message.Force, message.ElevatedPrivileges ); requestsToBeConfirmed.Add(toggleRequest); } if (isSubTaskActor) { var skipConfirmation = new Confirmation( Id ); HandleConfirmation(skipConfirmation); } else { var confirmRequest = new ConfirmationRequest( string.Format( "Please confirm Feature {0}", message.Action.ToString().ToLower() ), Title, message.TaskId, true ); eventAggregator.PublishOnUIThread(confirmRequest); } } }