Example #1
0
 public void Handle(ProjectionManagementMessage.Disable message)
 {
     _lastAccessed = _timeProvider.Now;
     if (!ProjectionManagementMessage.RunAs.ValidateRunAs(Mode, ReadWrite.Write, _runAs, message))
     {
         return;
     }
     Stop(() => DoDisable(message));
 }
Example #2
0
 private void DoDisable(ProjectionManagementMessage.Disable message)
 {
     if (!Enabled)
     {
         message.Envelope.ReplyWith(new ProjectionManagementMessage.OperationFailed("Not enabled"));
         return;
     }
     Disable();
     BeginWrite(
         () => message.Envelope.ReplyWith(new ProjectionManagementMessage.Updated(message.Name)));
 }
Example #3
0
 private void DoDisable(ProjectionManagementMessage.Disable message)
 {
     if (!Enabled)
     {
         message.Envelope.ReplyWith(new ProjectionManagementMessage.OperationFailed("Not enabled"));
         return;
     }
     Disable();
     PrepareAndBeginWrite(
         forcePrepare: false,
         completed: () => message.Envelope.ReplyWith(new ProjectionManagementMessage.Updated(message.Name)));
 }
Example #4
0
        public void Handle(ProjectionManagementMessage.Disable message)
        {
            _logger.Info("Disabling '{0}' projection", message.Name);

            var projection = GetProjection(message.Name);

            if (projection == null)
            {
                message.Envelope.ReplyWith(new ProjectionManagementMessage.NotFound());
            }
            else
            {
                projection.Handle(message);
            }
        }
Example #5
0
        private void DoDisable(ProjectionManagementMessage.Disable message)
        {
            if (!Enabled)
            {
                message.Envelope.ReplyWith(new ProjectionManagementMessage.OperationFailed("Not enabled"));
                return;
            }
            Disable();
            Action completed = () => message.Envelope.ReplyWith(new ProjectionManagementMessage.Updated(message.Name));

            UpdateProjectionVersion();
            if (Enabled)
            {
                Prepare(() => BeginWrite(completed));
            }
            else
            {
                BeginWrite(completed);
            }
        }
Example #6
0
 public void Handle(ProjectionManagementMessage.Disable message)
 {
     Stop(() => DoDisable(message));
 }